Squid(Proxy)----代理服務器
proxy的意思就是代理軟件或代理服務器,接受用戶的請求後,在internet讀取的網頁數據保存在硬盤上,
在將數據傳給用戶,當其他用戶也需要同一份數據的時候,proxy server就可以直接從硬盤將數據傳給
用戶,減少數據的獲取
默認端口爲3128,建議修改,儘量較少人使用的端口,這樣掃描到的機率低,降低使用效率和帶寬
vim /etc/squid/squid.conf
配置防火牆: -A INPUT -m state --state NEW -m tcp -p tcp --dport 3128 -j ACCEPT
重啓生效
配置squid緩存目錄:
cache緩存目錄可以等價與squid的硬盤:用戶訪問同一個頁面,如果squid代理服務器發現網頁有更新
會自動下載新的數據,在給用戶
開啓squid緩存目錄,cache_dir 默認不啓動被註釋掉,
cache_dir ufs /var/spool/squid 100 16 256
默認 100M 第一層子目錄最多16個,第一層子目錄下最多256個子目錄
清除cache緩存目錄: 停止squid服務。
刪除cache緩存目錄,/var/spool/squid
新建cache緩存目錄。mkdir /var/spool/squid
修改文件屬性。其他人也能寫chown squid /var/spool/squid
mysql -z 重新加載
配置squid鏈接限制: 有效的管理鏈接限制,使squid代理服務器的效率及帶寬達到有效利用
限制某一網段:
按照配置文件/etc/squid/squid.conf 裏面的ACL語法配置
acl quanwindow src 192.168.31.100-192.168.31.200/24
http_access deny quanwindow
注意: quanwindow是自定義的,上下一定要一致
重啓生效
限制某ip地址無法鏈接:
acl quanip src 192.168.31.71/24
http_access deny quanip
限制讀取指定網址: 限制用戶不可訪問的特定網站,其他網站都可以正常鏈接
acl baidu dstdomain .baidu.com
http_access deny baidu
配置禁止網站清單:
用文件清單去限制用戶不可訪問的網絡清單
acl wwwdeny url_regex "/etc/squid/deny.txt"
http_access deny wwwdeny
建立限制清單:echo ".baidu.comm " >/etc/squid/deny.txt
echo ".bsblog.com " >>/etc/squid/deny.txt
限制用戶鏈接時間:,在規定的時間範圍內鏈接不到的特定網址,其他時間正常鏈接
特定的網zhi
acl timedeny time W 22:00-23:00
http_access deny timedeny
其中星期的代碼爲1-7 : M T W H F A S
使用ncsa-auth認證: 網絡上有很多的proxy list網站,專門收集對外服務的proxy服務器。每天都會更新
都是掃描3128端口或80,一旦proxy服務器被公開,會拖慢網絡速度,容易當成跳板
所以建議加一層帳戶認證和密碼保護
一種是LDAP認證
一種是使用htpasswd 建立認證賬號和密碼
htpasswd -c /etc/squid/passwd quan
chmod o+r /etc/squid/passwd 配置爲所有人都可讀
查看nsca_auth認證服務:
rpm -ql squid |grep ncsa_auth //檢查nsca_auth 目錄位置
配置squid認證使用nsca_auth
(認證方式及賬號密碼位置)auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5 //5個程序來驗證
auth_param basic realm Welcom to quan //登錄時的歡迎詞
acl squid_user proxy_auth REQUIRED
http_access allow squid_user
注意:auth_param 必須在acl前面添加且在最前面
要安裝apache服務
SARG監控squid代理服務器:squid Analysis Report Generator
產生報表可以讓我們輕鬆的掌握squid代理服務器使用寂記錄
注意:安裝sarg軟件之前,要安裝apache網頁服務器。因爲sarg是以網頁的形式呈現
需要GD軟件
編輯配置文件/etc/httpd/conf.d下的sarg.conf
其中的意思爲 Deny from all 限制所有網段不可連
Allow from all
Allow from 127.0.0.1 //只允許本機ipv4連接
Allow from ::1 允許本機ipv6連接
重啓Apache服務生效
根據sarg可根據日,周,月報表手機squid代理服務器的數據,建議自行加入計劃任務以便
每天完成:
一次:sarg -o /var/www/sarg/ONE-SHOT
日:sarg -o /var/www/sarg/daily
周:sarg -o /var/www/sarg/weekly
月:sarg -o /var/www/sarg/monthly
Dansguardian過濾網站:免費的proxy filter,限制Client端不應該訪問的網頁
可以過濾指定的URL和IP ,指定那些文件不可以下載,
安裝完成之後必須做一些proxy服務器之間的配置
vim /etc/dansguardian/dansguardian.conf
languagedir = '/etc/dansguardian/languages'
# language to use from languagedir.
language = 'chinesegb2312' 修改爲簡體中文。chinesegb2312
filterport=8080 Dansguardian默認的端口爲8080
注意:如果Dansguardian和proxy服務器是在同一天主機則無需修改proxyip
如果在另一臺主機上則必須配置該主機IP
如果使用簡體中文,必須修改forcequicksearch設置爲on 默認爲off
配置防火牆: -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
啓動dansguardian即可 service dansguardian start
配置客戶端,將原本使用的squid代理服務器的端口給爲8080即可
加入禁止網址:bannedsitelist 禁止網站清單
vim /etc/dansguardian/bannedsitelist
加入baidu.com
加入禁止的關鍵字: bannedphraselist
vim /etc/dansguardian/bannedphraselist
加入 <xxxxo>
禁止下載的文件類型:bannedextensionlist
vim /etc/dansguardian/bannedphraselist
加入 .exe