代理伺服器分為傳統代理和透明代理,傳統代理适用于浏覽internet,需要在浏覽器上手工指定伺服器位址和端口,不是很友善,但是可以隐藏本機真實的ip位址,而且為下載下傳工具使用多個代理可以規避伺服器的并發連接配接顯示。透明代理适用于共享上網網關,不需要指定伺服器位址和端口,無需額外的設定即可上網,在實際工作中透明代理較多。
一、搭建傳統代理伺服器
1、實驗拓撲:

1、實驗步驟
1)在伺服器B上安裝Squid代理伺服器軟體(挂載CD光牒,解壓縮)
2)編譯安裝
--prefix=/usr/local/squid //安裝目錄
--sysconfdir=/etc //單獨将配置檔案修改到其他目錄
--enable-arp-acl //可以在規則中設定直接通過用戶端mac進行管理,防止用戶端使用ip欺騙攻擊
--enable-linux-netfilter //使用核心過濾
--enable-linux-tproxy //支援透明模式
--enable-async-io=值 //異步i/o,提升存儲性能
--enable-err-language=”Simplify_Chinese” //錯誤資訊的顯示語言
--enable-poll //使用Poll()模式,提升性能
--enable-underscore //允許url中有下劃線
--enable-gnuregex //使用GNU正規表達式
2)建立連結檔案,建立使用者群組
2)使用squid服務腳本(為了能夠友善啟動停止服務)
Vim squid,内容如下:
沒有完,接着下面的寫
設定權限,并添加為系統服務。
2)修改配置檔案
Vi /etc/squid.conf
主要修改有以下幾條配置項,有的配置項需要修改,而有的配置項需要添加。
http_port 3128 squid的預設監聽端口tcp 修改 cache_effective_group squid squid的運作組 添加
cache_effective_user squid squid的運作使用者 添加
visible_hostname centos1.lzg.com 目前系統的主機名 添加
cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256
2)在防火牆上添加允許政策
3)啟動squid服務
執行:Squid -k parse檢測文法是否正确,出現很多内容,一般不用理會,沒有提示錯誤就可以。
執行squid -z 初始化緩存目錄,此步必須要做,執行完之後稍微等一會。
執行squid啟動服務,也可以使用service squid start啟動服務,第一次啟動最好用squid啟動。
4)在伺服器A上搭建網站
5)在客戶機上修改ie浏覽器的代理伺服器位址
6)在客戶機上通路網站
别忘記在網站伺服器A上開啟80端口
然後把代理伺服器服務停止,再次通路網站,發現不能通路,說明客戶機确實是通過代理伺服器上網。
7)驗證代理伺服器
在客戶機通路網站,然後檢視web伺服器的通路日志,發現客戶機172.16.16.110通路網站172.16.16.172的記錄,但是在web伺服器中,檢視網站日志檔案,顯示的通路者是代理伺服器的位址172.16.16.22,不是用戶端的位址。
二、搭建透明代理伺服器
1、實驗拓撲
1、實驗步驟(安裝的步驟參考前面的傳統代理,IP位址的配置省略)
1)配置squid支援透明代理
修改上面的一行就可以
修改完成時候别忘記重新加載squid服務
1)在伺服器B上開啟路由轉發
1)配置防火牆重定向
Iptables -t nat -I PREROUTING -i eth1 -s192.168.4.0/24 -p tcp --dport 80 -j REDIRECT --to 3128
Service iptables save儲存
1)在用戶端上通路網站(必須配置網關)
1)驗證透明代理
如果在linux客戶機上測試,需要提前清除HTTP_PROXY、HTTPS_PROXY變量
Unset HTTP_PROXY HTTPS_PROXY
我們就在windows上驗證了,因為在實際工作中,員工很少使用LINUX通路網站。
驗證方法和傳統代理驗證方法一樣
在伺服器A上檢視的通路者是代理伺服器172.16.16.1,說明實驗正确。
上面的這個實驗屬于正向代理,還有一種反向代理,作用是外部通路内部的網站,雲盤有文檔,有興趣可以做一下。
三、設定ACL通路控制
1、禁止下載下傳擴充名為:.mp4,avi視訊
2、超過4mb大小的檔案不進行緩存,禁止下載下傳超過10mb的檔案
3、設定網站黑名單,禁止通路位于.qq.com,.lol.com的網站
4、允許在正常上班時間(周一到周五8:30-17:30)上網
5、預設政策設定為禁止任何客戶機使用代理伺服器。
Vim /etc/squid.conf
在用戶端上測試下載下傳檔案,超過10mb就禁止下載下傳
(在伺服器A的網站目錄下建立15mb的檔案)
在用戶端上分别下載下傳5mb和15mb的檔案
四、squid日志分析
1、安裝gd庫
1、安裝sarg
1、配置
修改以下内容,不用添加,修改即可
1)制定squid的通路日志檔案
網頁标題
sarg報告的輸出目錄
使用使用者名顯示,根據連接配接次數,通路位元組數,采用降序排序,升序将reverse換成normal。對于使用者通路記錄,連接配接次數按降序排列。
當有日期報告存在,是否覆寫報告
發送郵件報告
制定不計入排序的站點清單檔案
使用的字元集為國際編碼
制定top排序的星期周期和時間周期,0位周日
網頁根目錄
1、運作
Touch /usr/local/sarg/noreport
驗證
計劃任務
Crontab -e
每天0點運作統計昨天的内容
Chmod +x /usr/local/sarg/daily.sh
Chkconfig crond on
每天堅持給大家帶來基礎知識,一起成長一起拼搏。
詳細技術請咨詢我的QQ936172842,或者維信lc177zl,記得标注姓名+51cto