防偽碼:仰天大笑出門(mén)去,我輩豈是蓬蒿人
第一章 Squid透明代理+ACL訪問(wèn)控制+日志分析
前言:搭建代理服務(wù)器可以提高上網(wǎng)打開(kāi)網(wǎng)頁(yè)的速度,可以對(duì)非法網(wǎng)站進(jìn)行屏蔽,限制文件下載,以及查看員工訪問(wèn)internet的情況,包括上網(wǎng)的地址,用戶,時(shí)間等,是企業(yè)網(wǎng)絡(luò)管理的常用手段。
代理服務(wù)器分為傳統(tǒng)代理和透明代理,傳統(tǒng)代理適用于瀏覽internet,需要在瀏覽器上手工指定服務(wù)器地址和端口,不是很方便,但是可以隱藏本機(jī)真實(shí)的ip地址,而且為下載工具使用多個(gè)代理可以規(guī)避服務(wù)器的并發(fā)連接顯示。透明代理適用于共享上網(wǎng)網(wǎng)關(guān),不需要指定服務(wù)器地址和端口,無(wú)需額外的設(shè)置即可上網(wǎng),在實(shí)際工作中透明代理較多。
一、構(gòu)建透明代理服務(wù)器
1、實(shí)驗(yàn)拓?fù)洌?/span>
2、 實(shí)驗(yàn)步驟
1)在服務(wù)器A上安裝Squid代理服務(wù)器軟件(掛載光盤(pán),解壓縮)
2) 編譯安裝
--prefix=/usr/local/squid //安裝目錄
--sysconfdir=/etc //單獨(dú)將配置文件修改到其他目錄
--enable-arp-acl //可以在規(guī)則中設(shè)置直接通過(guò)客戶端mac進(jìn)行管理,防止客戶端使用ip欺騙攻擊
--enable-linux-netfilter //使用內(nèi)核過(guò)濾
--enable-linux-tproxy //支持透明模式
--enable-async-io=值 //異步i/o,提升存儲(chǔ)性能
--enable-err-language=”Simplify_Chinese” //錯(cuò)誤信息的顯示語(yǔ)言
--enable-poll //使用Poll()模式,提升性能
--enable-underscore //允許url中有下劃線
--enable-gnuregex //使用GNU正則表達(dá)式
3) 創(chuàng)建鏈接文件,創(chuàng)建用戶和組
4) 使用squid服務(wù)腳本(為了能夠方便啟動(dòng)停止服務(wù))
Vim squid,內(nèi)容如下:
;;
asac(補(bǔ)充)
設(shè)置權(quán)限,并添加為系統(tǒng)服務(wù)。
5) 修改配置文件
Vi /etc/squid.conf
主要修改有以下幾條配置項(xiàng),有的配置項(xiàng)需要修改,而有的配置項(xiàng)需要添加。
http_port 192.168.1.1:3128 transparent squid的默認(rèn)監(jiān)聽(tīng)端口tcp 修改
cache_effective_group squid squid的運(yùn)行組 添加
cache_effective_user squid squid的運(yùn)行用戶 添加
visible_hostname yangwen 當(dāng)前系統(tǒng)的主機(jī)名 添加
cache_dir ufs /usr/local/squid/var/cache/squid 100 16 256 去掉“#”
6) 在防火墻上添加允許策略
7) 啟動(dòng)squid服務(wù)
執(zhí)行:Squid -k parse檢測(cè)語(yǔ)法是否正確,出現(xiàn)很多內(nèi)容,一般不用理會(huì),沒(méi)有提示錯(cuò)誤就可以。
執(zhí)行squid -z 初始化緩存目錄,此步必須要做,執(zhí)行完之后稍微等一會(huì)。
執(zhí)行squid啟動(dòng)服務(wù),也可以使用service squid start啟動(dòng)服務(wù),第一次啟動(dòng)最好用squid啟動(dòng)。
8) 在服務(wù)器B上搭建網(wǎng)站,并開(kāi)啟入站規(guī)則
9)在服務(wù)器A上開(kāi)啟路由轉(zhuǎn)發(fā)
臨時(shí):echo "1" > /proc/sys/net/ipv4/ip_forward
永久:vim /etc/sysctl.conf
修改net.ipv4.ip_forward = 1
然后sysctl -p激活
10)配置防火墻重定向,并service iptables save保存
11)在客戶端上訪問(wèn)網(wǎng)站(配置網(wǎng)關(guān))
12)驗(yàn)證透明代理
在服務(wù)器B上查看的訪問(wèn)者是代理服務(wù)器172.16.16.1,說(shuō)明實(shí)驗(yàn)正確。
上面的這個(gè)實(shí)驗(yàn)屬于正向代理
二、 設(shè)置ACL訪問(wèn)控制
1、 禁止下載擴(kuò)展名為:.mp4,avi視頻
2、 超過(guò)4mb大小的文件不進(jìn)行緩存,禁止下載超過(guò)10mb的文件
3、 設(shè)置網(wǎng)站黑名單,禁止訪問(wèn)位于.qq.com,.lol.com的網(wǎng)站
4、 允許在正常上班時(shí)間(周一到周五8:30-17:30)上網(wǎng)
5、 默認(rèn)策略設(shè)置為禁止任何客戶機(jī)使用代理服務(wù)器。
Vim /etc/squid.conf
acl safeport port 80 443
acl mylan src 192.168.1.0/24
acl mediafile urlpath regex -i \.mp4$ \.avi$
acl dmblock dstdomain "/etc/dmbokck.list"
acl working time MWTHF 08:30-17:30
http_access allow mylan working safeport !mediafile !dmblock
http_access deny all
reply_body_max_size 10 MB
maximum_object_size 4096 KB
在客戶端上測(cè)試下載文件,超過(guò)10mb就禁止下載
(在服務(wù)器B的網(wǎng)站目錄下新建a.data(15mb)和b.data(5mb)
查看如圖:
在客戶端上分別下載
三、 squid日志分析
1、 安裝gd庫(kù)
2、 安裝sarg
--enable-extraprotection 添加額外的安全保護(hù)
3、 配置
修改以下內(nèi)容,不用添加,修改即可
1)制定squid的訪問(wèn)日志文件
2)網(wǎng)頁(yè)標(biāo)題
3)sarg報(bào)告的輸出目錄
4)使用用戶名顯示,根據(jù)連接次數(shù),訪問(wèn)字節(jié)數(shù),采用降序排序,升序?qū)everse換成normal。
于用戶訪問(wèn)記錄,連接次數(shù)按降序排列。
5)當(dāng)有日期報(bào)告存在,是否覆蓋報(bào)告
6)發(fā)送郵件報(bào)告
7)制定不計(jì)入排序的站點(diǎn)列表文件
8)使用的字符集為國(guó)際編碼
9)制定top排序的星期周期和時(shí)間周期,0位周日
10)網(wǎng)頁(yè)根目錄
4、 運(yùn)行Touch /usr/local/sarg/noreport(別忘了service httpd start)
5、 驗(yàn)證
6、 計(jì)劃任務(wù)
vim /usr/local/sarg/daiy.sh
crontab -e
每天0點(diǎn)運(yùn)行統(tǒng)計(jì)昨天的內(nèi)容
Chmod +x /usr/local/sarg/daily.sh
Chkconfig crond on
謝謝觀看,真心的希望能幫到您!
本文出自 “一盞燭光” 博客,謝絕轉(zhuǎn)載!
更多建議: