squid代理服務配置

利用squid搭建代理服務器

squid代理服務實現內網通過代理服務器訪問外網以及外網主機通過代理服務訪問內網服務器的功能,提供代理服務的軟件有很多,典型的有squidnginxvarnish等,本文使用squid實現代理服務。

squid代理服務的有點:

(1)提供緩存,增加了訪問速度

(2)提供用私網IP訪問公網地址的解決方案

(3)提高了網絡的安全性

(4)方便對用戶管理

squid代理服務類別:

(1)普通代理,用於內網訪問公網,需手動設置代理服務器地址以及端口

(2)透明代理,用於內網訪問公網,不需手動設置代理

(3)反向代理,用於發佈內網服務器供公網地址訪問

部署squid代理:

拓撲結構:

    代理服務器需準備兩塊網卡,eth0連接內網,IP地址爲192.168.1.253eth1連接外網,IP地址爲1.1.1.1,外網服務器IP地址爲1.1.1.253,內網服務器地址爲192.168.1.1

1、普通代理

(1)代理服務器安裝squid服務

wKiom1Q1A93ipUJpAABGDPa4Fno611.jpg

(2)修改squid配置文件、啓動代理服務並設置,開機自啓動

[root@proxy ~]#vim /etc/squid/squid.conf        //squid主配置文件

http_port      3128        //squid服務默認監聽端口

cache_mem  8 MB          //默認緩存大小,緩存只能緩存靜態頁面,不能緩存動態頁面

cache_dir       ufs /var/spool/squid  100  16  256            //squid緩存存儲目錄

數值解釋:

100           緩存目錄大小

16            一級子目錄數

256            一級子目錄下的目錄數

maximum_object_size       4096 KB             超過該值的數據不保存到緩存中

reply_body_max_size   10240000     訪問目標最大量,超過則不允許訪問

#visible_hostname                                 指定代理服務器的主機名,不設置的情況下使用環回接口對應的主機名  ,做代理服務器的主機名(該選項爲可選項)

http_access   deny all        默認拒絕所有代理,將deny改爲allow表示允許所有,此處需改爲allow

上述設置完成後啓動squid代理並設置開機自啓

wKiom1Q1A_6wB4A_AABsDbBEZnc378.jpg

(3)設置客戶端

本文客戶端使用另一臺linux服務器模擬,使用firefox瀏覽器爲例,其他瀏覽器設置代理的方法請百度。

wKioL1Q1BEahB2QnAADHwMcQ31A775.jpg

wKiom1Q1BB-TvMUFAAFMb-6hgjo133.jpgwKiom1Q1BDChaUQvAAF8ngLcYKA173.jpg

(4)測試

    外網服務器上搭建網站服務,寫一個測試主頁放在網站根目錄下,用於測試。

內網服務器在瀏覽器裏訪問外網服務器IP地址,能看到網頁說明代理工作正常

wKioL1Q1BHWibUWYAABjxpM22DY390.jpg

2、透明代理

(1)修改squid配置文件啓用透明代理,重啓squid服務

vim/etc/squid/squid.conf

http_port  3128 transparent             //只修改這一條即可

(2)啓用防火牆,編寫防火牆規則,將80端口的訪問請求轉到3128代理端口

wKiom1Q1C9_gzCWdAAG0uRBmMFY941.jpg

[root@proxy ~]#iptables -t nat -A PREROUTING -i eth0 -s 192.168.1.0/24 -p tcp --dport 80 -jREDIRECT --to-ports 3128//添加防火牆規則

wKioL1Q1DCzTQoD9AAB9z3XsDFc670.jpg

(3)修改客戶端配置

wKioL1Q1DD2jyHQiAAEJRkhD2tA693.jpg

(4)測試

同普通代理

3、反向代理

(1)  反向代理多臺主機:

當有多臺主機需要向外網發佈時,可以將squid主機設置修改如下:

http_port 80 vhost            //設置squid主機監聽80端口

cache_peer 192.168.1.1 parent 80 0originserver         //添加一臺內網主機

重啓squid服務即可,訪問時訪問squid代理服務的外網地址

(2)  反向代理虛擬主機:

修改squid主機配置文件如下:

vim /etc/squid/squid.conf

http_port 80 vhost

cache_peer 192.168.8.3 parent 80 0originserver name=www

cache_peer 192.168.8.3 parent 80 0originserver name=bbs

cache_peer_domain  www  www.zhy.com

cache_peer_domain  bbs   bbs.zhy.com

3)測試


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章