首先查看RHEL-C的squid有沒有安裝(系統(tǒng)默認已裝)

rpm -q squid

進入squid配置文件

vi /etc/squid/squid.conf

搜索http_port 3128,將3128端口號改為8080

image

搜索acl our_networks,定義acl,名稱our_networks,設為允許,將源地址改為主機所在的網(wǎng)段192.168.10.0/24。否則默認只允許本地回環(huán)口訪問。

保存后退出,然后啟動squid。在啟動之前,必須保證squid有完整的域名

vi /etc/hosts

接下來對squid服務器進行初始化,目的是在squid服務器工作目錄中建立緩存子目錄。

squid -z

查看squid子目錄,可以發(fā)現(xiàn)多了16個子目錄

*****************************************************

squid子目錄大小涉及到squid服務器性能問題,默認情況下一級子目錄16個,二級子目錄256個??梢栽趕quid.conf中修改每個目錄容量大?。?/p>

cache_dir ufs /var/spool/squid 100 16 256

其中/var/spool/squid代表工作路徑,目錄最大容量100M,一級子目錄16個,二級子目錄256個。

另外可以修改緩沖內(nèi)存大小,建議設置為物理內(nèi)存三分之一,例:

chche_mem 8 MB

*****************************************************

開啟squid服務

service squid start

查看8080端口是否開啟

這時回到windows主機上,設置IE瀏覽器的“internet選項”-“連接”-“局域網(wǎng)設置”,將代理服務器IP和端口填進去

這時候訪問外網(wǎng)地址http://198.2.3.1,就可以成功訪問了(模擬外網(wǎng)的linux主機要記得開啟httpd服務)。

二、透明代理服務器配置

前面有說過,透明代理只能在網(wǎng)關上配置。因此這次需要修改RHEL-B的squid.conf文件。先將RHEL-B原先的NAT刪除,使得windows PC和RHEL-B均不能訪問外網(wǎng),仍然引用之前那個拓撲:

和之前一樣,首先修改允許訪問的網(wǎng)段

找到http端口號位置,在后面加個transparent,就代表代理服務器時以透明模式運行的。

接下來對squid服務器進行初始化

squid -z

重啟squid服務

service squid reload

查看3128端口有沒有開啟

netstat -ntl

訪問外網(wǎng)地址

http://198.2.3.1

,就可以成功訪問了(注意清空之前的cookie,而且網(wǎng)關的httpd服務不能開啟,否則80端口會被占用)。

*****************************************************

如果網(wǎng)關做了NAT,而靜態(tài)透明代理需要在SNAT之前執(zhí)行的話,需要輸入以下iptables命令:

iptables -t nat -A PREOUTING -s 192.168.10.0/24 -p tcp -dport 80 -j REDIRECT–to-ports 3128

分享到

zhaohang

相關推薦