教你将 Linux 配置为代理防火墙
操作方法
- 01
Linux 本身可以通过添加插座软件包起到代理防火墙的作用,而且这一切都是免费的。什么是代理防火墙代理防火墙不让任何直接的网络流通过,而由它作为互联网和内部网络计算机之间的中间媒介。防火墙自己处理各种网络服务而不是只让它们直接通过。例如,登录到网络上的计算机请求一个网页。计算机不直接链接到网络服务提供的网页,而是连到自己网络的代理服务器上,代理服务器识别代理请求,然后以合适的方式传递给相应的网络服务器。远程网络服务器视为来自防火墙服务器的正常网络请求,发送合适的网页,防火墙服务器再把网页返送给计算机。这样,防火墙就对 Internet 隐蔽了你的计算机存在的事实,减少外界对内部网络的可见性。 安装1.在 http://www.socks.nec.com/cgi-bin/download.pl 站点找到 Socks 软件包,在下载前要填写有关的用户信息,然后单击 [Submit] 按钮,此后登录到具有下载链接的页面,单击链接来下载插座软件包。2.在存储下载的 Socks 软件包的目录中,使用 Tar 命令解开该软件包。Tar - xzvf sock5-vl. 0r11.tar.gz此命令创建一个 sock5-vl. 0r11 目录,把软件包解压到该目录中,使用 CD 命令变成该目录。该目录中有一个编辑和安装软件包的配置脚本。使用 Su 命令变成根用户,然后在命令提示下运行脚本。3.输入 Make 命令编译 Socks 包,完成以后,通过输入 Make Install 命令安装软件包。注意:在使用之前,必须在 /etc 目录下创建一个 Socks5.conf 文件,Socks5 检查 /etc/socks5.conf 文件得知将代理什么协议和服务,以及哪个计算机将能够使用此代理服务。创建 Socks5.conf 文件Socks5.conf 文件被分成 6 部分。每一部分控制 Socks5 守护进程处理特定链接的一个特别项,当一个客户计算机连到代理服务器上,Socks5 连续搜索每一部分的每一行,并根据遇到的规则决定采取什么行动,当找到与处理的链接相匹配的规则行时停止,所以规则的顺序很重要。 1. 主机地址标志。主机地址可以是完整的主机名或 IP 地址,例如:gzdd .sjsgz .net 或 10.88.56.4,它也可能是一个部分主机名或地址,例如:. sjsgz .net 或 10 .88.56.4。注意:部分主机名以点 (.) 字符开始就允许 Socks 识别部分主机名用它匹配 Sjsgz .net 域的任何主机。2. 禁止主机部分。禁止主机部分用于禁止对指定主机和协议的代理服务。一个禁止主机行总是以关键词Ban开始,后跟源主机参数和一个源端口参数。命令格式:Ban source-host sour-ce-port例如:Ban gzdd.sjsgz.net http,表明主机 gzdd 被禁止访问系统上的网络服务;Ban 199.170.176.-,表明 199.170.176.x 网上主机都不可访问系统上任何代理服务;Ban - -,表明任何主机不可访问此系统的任何代理服务。3. 访问控制部分。这是 Socks5.conf 文件最有用的部分,访问控制部分用于允许或禁止基于源和目的机器的主机地址或端口号的代理连接,访问控制行总以关键词 Permit 或关键词 Deny 开头。命令格式:Permit auth cmd src-host dest-host src-port dest-port 或 Deny auth cmd src-host dest-host src-port dest-port例如:Permit - - 10.88.56. - 1880 http,表明允许在 10.88.56. x 网段的主机通过端口 1880 访问网络;Deny - - - - - -,表明拒绝所有连接。当一个客户机连到代理服务器上时,Socks 扫描控制行列表,若找不到匹配的 Socks 拒绝连接。启动 Socks5 服务可以用手工启动守护进程,只需以根用户登录,在命令提示符下输入 Socks5,Socks5 守护进程被放到背景执行并返回提示符。也可以把 Socks5 命令放入 /etc/rc.d 下的 Rc.local 启动脚本中,以使下次启动机器时自动启动 Socks5。尽管仍以根用户登录,但还需要把 /etc/rc.d/rc.local 文件调入文本编辑器并在文件末加入以下几行:# Start socks5 proxy services/usr/local/bin/socks5完成后存贮文件并退出编辑器。这样通过在 Linux 中安装软件包,创建 Socks5 文件,使得 Linux 起到代理防火墙的作用,保证校园网络的安全。