透明代理提供的服務功能與傳統代理是一致的,可是其「透明」的實現依賴於默認路由和防火牆的重定向策略,所以更適用於爲局域網主機服務,而不適合爲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,透明代理設置成功代理