代理服务器,顾名思义就是局域上不能直接上网的机器将上网请求(比如说,浏览某个主页)发给能够直接上网的代理服务器,然后代理服务器代理完成这个上网请求,将它所要浏览的主页调入代理服务器的缓存;然后将这个页面传给请求者。这样局域网上的机器使用起来就像能够直接访问网络一样。 并且,代理服务器还可以进行一些网站的过滤和控制的功能,这样就实现了我们使用它的初衷——控制和节省上网费用。
在LINUX中,有一个功能很强大的http/https/ftp的代理服务器程序——Squid Proxy Server,由于它安装简单,使用方便,所以已经被广泛地使用。在RedHat LINUX的安装光盘中已经包含了它。
一.安装squid(以CentOS 7 为例)
由于安装光盘中包含squid的RPM安装包,所以直接安装,如下:
rpm -ivh squid-3.3.8-11.el7.x86_64.rpm
或者通过网络进行安装:
yum install squid
二.进行配置
Squid Proxy Server仅有一个配置文件——/etc/squid/squid.conf。我们必须对它进行相应的修改才能适用于我们的系统。下面就是一些最基本的配置选项。我们可以用vi打开这个文件进行编辑。
1.设置http/https/ftp的代理端口号:
代理端口的默认值是3128,可以根据自己的喜好修改。但是要注意的是,千万不能与一些著名的端口冲突,例如POP端口——110等。如果你不是十分熟悉,就保留默认值吧。
下面就是在/etc/squid.conf文件中的一句:
http_port 3128
2.添加访问控制组:
我们将需要区别开的不同用户定义成一个访问控制组。比如一个公司的内部网的网络IP是192.168.200.0。而且只想区分公司内和公司外的两类用户,则我们就在/etc/squid/squid.conf文件中添加下表的两句:
acl all src 0.0.0.0/0.0.0.0
acl company src 192.168.200.0/255.255.255.0
这样,我们说定义了一个包含所有人的组,和一个包含公司内部网的所有人的组。下面就可以对这两个组分别进行访问权力的设制,在CentOS7 系统下,配置文件部分内容如下,acl表示允许进行访问,这里假设允许localnet访问,并设置ip地址为172.18.6.134
如下图,52,53表示允许使用代理的用户(这里也可以自定义用户),56表示除指定用户以外,其它用户不使用代理。到这一步后下面一部可以省略。
3.设置每个访问控制组的访问权力:(可省略)
比如,我们希望公司内部的所有人都能够通过代理服务器上网,而禁止其它的人使用代理服务器上网,则我们就在/etc/squid/squid.conf文件中添加下面两句:
http_access allow company
http_access deny all
也就是我们allow(允许)“company”组使用代理服务器,而除了这个组以外的“all”deny(禁止)使用代理服务器。要注意的是,这两句一定不能顺序调换。否则将禁止所有的用户使用。
请大家好好体会。
4. 存盘退出;
5. 执行下面的命令,使得新的配置生效:
/etc/rc.d/init.d/squid restart 或者 service squid restart
三,客户端设置
在浏览器打开工具-internet选项-连接,选择局域网设置如下图:
确定退出,这样在windows下你就可以使用代理服务器上网了。