透明代理提供的服务功能与传统代理是一致的,可是其“透明”的实现依赖于默认路由和防火墙的重定向策略,所以更适用于为局域网主机服务,而不适合为Internet中的客户机提供服务。其基本的原理可详见上一篇squid传统代理
.
.vim
.
.服务器
.
.
1 . 安装完成squid后,将服务器与主机更改成仅主机模式
为代理服务器添加一个网卡,并更改成相应的ip地址与上面实验环境中相同
.
.tcp
2 .开启路由功能ide
echo "1" > /proc/sys/net/ipv4/ip_forward #开启路由功能 iptables -F iptables -t nat -F #清空注册表 setenforce 0
.
.
3 .配置squid支持透明代理ui
vim /etc/squit.conf http_port 192.168.100.1:3128 transparent #设置监听端口及透明模式
.
.
4 .设置iptables的重定向策略spa
iptables -t nat -I PREROUTING -i ens33 -s 192.168.100.0/24 -p tcp --dport 80 -j REDIRECT --to 3128 #加策略,nat表,路由处理后,指定内网口,针对源地址段落,重定向到3128 iptables -t nat -I PREROUTING -i ens33 -s 192.168.100.0/24 -p tcp --dport 443 -j REDIRECT --to 3128 iptables -I INPUT -p tcp --dport 3128 -j ACCEPT #在input链中,针对tcp协议,目标端口3128,容许转发
.
.
5 . 开启服务,使用win7访问12.0.0.12,查看访问日志service squid krestart
.
.3d
日志中访问ip地址为12.0.0.1,透明代理设置成功代理