本文介绍如何配置squid代理。Squid是一个缓存Internet 数据的软件,其接收用户的下载申请,并自动处理所下载的数据。当一个用户想要下载一个主页时,可以向Squid 发出一个申请,要Squid 代替其进行下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid 把保存的备份立即传给用户,使用户觉得速度相当快。
普通代理:需要客户机在浏览器中指定代理服务器的地址、端口; 透明代理:适用于企业的网关主机(共享接入Internet)中,客户机不需要指定代理服务器地址、端口等信息,代理服务器需要设置防火墙策略将客户机的Web访问数据转交给代理服务程序处理; 反向代理:是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。
本文为大家介绍透明代理的搭建方式。 代理原理:
# rpm -qa|grep squid 2. 如果未安装,则使用yum 方式安装
# yum -y install squid 3. 设置开机自启动 # chkconfig --level 35 squid on
4. 编辑squid 的主配置文件 /etc/squid/squid.conf
http_port 3128 transparent
注意:acl localnet src 10.0.0.0/8 中10.0.0.0/8是ECS内网的网段,要求ECS内网直接可以互通,请根据实际情况替换成相应的网段;
# squid –z
6.启动Squid # /etc/init.d/squid start
7. 添加iptables规则,把内部的http请求重定向到3128端口
7.1 启动iptables 服务
7.2 清除现有iptables filter 表规则
7.3 保存iptables 设置 # /etc/init.d/iptables save
7.4 查看nat 表设置 # iptables -t nat -L -n
7.5 在nat表中新增一条规则 # iptables -t nat -I PREROUTING -i eth0 -s 10.0.0.0/8 -p tcp --dport 80 -j REDIRECT --to-port 3128
7.6保存 7.7设置iptables 开机启动 # chkconfig iptables on
到这里squid就配置好了,我们使用另一台没有公网IP的服务器连接squid代理,测试是否可以上网。
这样我们就配置好了透明代理,没有外网的ECS就可以通过有外网的ECS上网了。 |