一、代理服务器简介
首先我们来了解一些什么是代理服务器?代理服务器是介于浏览器和Web服务器之间的另一台服务器。有了该服务器之后,浏览器发出的信息会先送到代理服务器,由代理服务器来取回网页内容并传送给客户的浏览器。平时我们提到代理服务器,主要是终端用户如何寻找自己需要的代理;而本专题所介绍的,则是服务器端的架设、配置等方面。对企业网络而言,代理服务器可以起到控制网络访问并屏蔽不安全信息,以及网络加速的目的。
二、环境介绍
首先我们需要两台主机:一个作为代理机,一个作为客户机。
代理机有两块网卡,IP分别为:192.168.10.133和192.168.9.101
两个IP不在同一个网段,其中192.168.10.133能够上网,而192.168.9.101不能上网
客户机的IP为:192.168.9.102,也是不能链接到外网,但是它却可以ping通代理机的其中一个IP192.168.9.101
三、代理配置
首先代理机上面要安装squid服务,这样才能提供代理:
yum -y install squid #安装squid服务
然后我们要去设置squid的配置文件:
vim /etc/squid/squid.conf
配置文件开头添加:visible_hostname squid.server.com #squid.server.com是代理服务器的名称
将原有 http_access deny all 改为 http_access allow all 以允许所有能连通本机的客户机都能通过代理上网
修改http_port改为http_port 192.168.9.101:3128(默认的http_port 3128其实也可以)
添加cache_mem 200 MB #设置cache 内存大小为200m,我的服务器内存为1G。
修改cache_dir ufs /var/spool/squid 200 16 256 #设置cache_dir 地址,第一个数字参数不能小于cache_mem设置的大小,否则会出警告“WARNING cache_mem is larger than total disk cache space!”,所以设为200。16,256表示第一级和第二级目录。设置完了需用 squid -z来使cache目录生效。
配置内容如下:
配置完成重新启动squid服务
service squid restart
四、 客户机测试
打开浏览器设置网络代理
配置完成后即可上网,如不能上网,可能是iptables的问题,可以设置类似如下规则:
iptables -I INPUT -s 192.168.9.0/24 -p tcp --dport 3128 -j ACCEPT
/var/log/squid/access.log可查看客户机访问日志。