實驗環境:
一臺linux搭建Web服務器,充當內網web服務器(同時充當內網客戶端) 202.100.10.100
一臺linux系統充當網關服務器,兩個網卡,開啟路由轉發 192.168.133.131和202.100.10.1
一臺linux搭建Web服務器,充當外網web服務器(同時充當外網客戶端)) 192.168.133.131
實驗步驟:
1.配置內網web服務器、網關服務器、外網Web服務器的IP地址,開啟網關的路由轉發,關閉網關的防火墻,測試內網web服務器與外網Web服務器的聯通性,保證能互通。
2.安裝內網Web服務器和外網Web服務器的web服務,啟動服務,新建一個測試頁面
3.測試內網客戶端訪問外網web服務器,外網客戶端訪問內網web服務器
4.內網客戶端訪問外網web服務器
5.外網客戶端訪問內網web服務器
防火墻SNAT和DNAT
1.內網客戶端訪問外網web服務器
2.在外網web服務器上查看日志
tail -f /var/log/httpd/access_log
3.在網關設置地址轉換
iptables -t nat -A POSTROUTING -s 192.168.133.0/24 -o eth2 -j SNAT --to-source 202.100.10.1
或者iptables -t nat -A POSTROUTING -s 192.168.133.0/24 -o eth2 -j MASQUERADE
4.再次在內網客戶端訪問外網web服務器,然后查看外網的web服務器可以看到,日志文件記錄的IP的不是內網客戶端的IP
DNAT:
1.在網關上設置,把內網web服務器映射到網關外網的接口上
ptables -t nat -A PREROUTING -i eth2 -d 202.100.10.1 -p tcp --dport 80 -j DNAT --to-destination 192.168.133.131
2.訪問網關外網的接口IP(實際上就是訪問內網web服務器)
3.查看內網web服務器的日志文件
1.在配置網關服務器配置squid代理服務器,安裝squid, yum install -y squid
1.1傳統代理服務器
啟動squid服務 service squid start
因為squid.conf配置文件,默認允許所有私網IP通過
1.2在內網客戶端設置瀏覽器,加入代理,測試
在外網服務器查看日志文件,可以看到IP是代理服務器的IP
1.3關閉網關服務器的代理服務器,再次測試,下圖說明客戶端訪問外網web服務器經過代理服務器
2.透明代理服務器
2.1在網關服務器上配置,設置透明代理并開啟高速緩存, vim /etc/squid/squid.conf
http_port 192.168.133.130:3128 transparent #192.168.133.130為內網接口IP
cache_dir ufs /var/spool/squid 100 16 256
iptables -t nat -A PREROUTING -i eth1 -s 192.168.133.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128 #-i接口是內網接口 -s 跟的是內網網段 -j 跟的是REDIRECT(重定向)
2.2重啟squid服務,然后在內網客戶端測試,取消之前測試中瀏覽器設置的代理,透明代理不需要設置在客戶端設置任何東西
2.3在外網web服務器上查看日志
評論列表