1.傳統代理
傳統代理可以隱藏IP地址 多用於Internet
在Linux中 默認沒有安裝squid 所以要安裝 在red hat中 還要安裝perl 語言包的支持
squid代理服務器需要兩塊網卡 首先保證你的流量是從linux服務器上過的 所以先保證做完SNAT可以互相通信
1)配置網絡參數
在試驗中一塊網卡橋到VM2 一塊VM3 這裏內網eth0 對應 VM2 外網eth1 對應VM3
配置主機名:因爲做代理代理服務器的時候 或者幹其他事 配置主機名很重要
warning:注意實驗過程中客戶機以及被訪問服務器防火牆關閉或者允許ICMP數據包通過 否則用ping測試可能不通過
2)寫iptables防火牆規則並開啓路由轉發功能
這裏需要的SNAT規則是: iptables -t nat -A POSTROUTING -s [內網IP地址] -o [出去的網卡 也就是外網網卡] SNAT --to-source [外網IP地址]
開啓路由轉發功能:vi /etc/sysctl.conf 修改net.ipv4.ip_forward = 1 並且初始化 sysctl -p
3)驗證SNAT
第一個Red Hat 是防火牆 2008是服務器 第二個linux是客戶機 客戶機通過防火牆的規則轉發訪問到了 服務器
4)這時候安裝squid服務器rpm包 這裏不詳細述
5)配置必要參數(傳統代理)
http_port 3128
visible_hostname [你的主機名]
reply_body_max_size [你想允許的最大下載量 如:10240000(單位K)] allow all
6)重啓squid代理服務器 初始化
或者 squid -z(初始化緩存目錄) squid -D(啓動squid服務)
7)客戶端設置
在局域網lan設置中
在linux中
首選項 高級 網絡 中設置
如果使用圖形化界面liunx 需要手工指定環境變量
vi /etc/profile
HTTP_PROXY=http://[代理服務器IP地址] //爲HTTP指定代理服務器
HTTPS_PROXY=http://[代理服務器IP地址] //爲HTTPS指定代理服務器
FTP_PROXY=http://[代理服務器IP地址] //for FTP
NO_PROXY=192.168.1.,192.168.2. //對兩個局域網段不使用代理
export HTTP_PROXY HTTPS_PROXY FTP_PROXY NO_PROXY //應用
8)tail /var/log/httpd/access_log 查看httpd的訪問日誌
2,透明代理
透明代理多用於局域網 客戶端不用手動設置
1)修改配置文件
添加代理服務器的IP地址
2)設置iptables重定向策略
3)驗證:清理掉指定的代理服務器 不要手動設置代理 如果剛做完傳統代理 就手動去掉
動態查看squid的日誌 tail -F /var/log/squid/access.log
新增了一條說明成功。