Squid

準備在公司部署squid,
有如下要求:
1. Squid服務器在防火前下面
2. 默認只允許http https 上網
3. 可以添加過濾規則
4. AD集成驗證
5. 日誌報表功能

這次,我選擇了Linux as5 +  squid-2.7.STABLE6 
第一步:把Linux主機加入windows2003 域, 參考 http://brandon.blog.51cto.com/602651/116729
第二部:安裝 squid
1. 創建squid用戶 ~#useradd squid
2. 下載squid-2.6.STABLE20.tar.gz
3. tar -vzxf squid-2.6.STABLE20.tar.gz 
4. ./configure --prefix=/Data/software/squid --enable-auth=basic,ntlm
5. make && make install
6. chown -R squid:squid /Data/software/squid
7. su - squid
8  vi /Data/software/squid/etc/squid.conf
加入如下內容
# 指定使用samba的ntlm驗證模塊
auth_param ntlm program /usr/local/samba/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 20
auth_param basic program /usr/local/samba/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 10
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours

acl all src 0/0
acl NTLMUsers proxy_auth REQUIRED # 強制要求用戶驗證
http_access allow all NTLMUsers  
# 通過驗證的用戶則允許訪問
http_access deny all  # 其他的均禁止訪問
 
chgrp squid /var/cache/samba/winbindd_privileged
chmod -R 750 /var/cache/samba/winbindd_privileged
如果使用域帳號登陸計算機,那麼瀏覽網頁時就不會提示輸入用戶名及密碼認證,非域用戶登陸計算機,通過代理訪問網站時,IE將彈出用戶身份驗證窗口要求用戶輸入用戶名及密碼驗證。
squid.conf中同樣可以設置允許訪問的域用戶,及不允許訪問的域用戶。對於windows域用戶來說,說有的驗證都是透明的。不需要手動輸入用戶名及密碼,方便用戶的使用。
在squid服務器上看到如下錯誤
authenticateNTLMHandleReply: Error validating user via NTLM. Error returned 'BH NT_STATUS_ACCESS_DENIED'

9 . /Data/software/squid/sbin/squid -z # 創建cache
10. /Data/software/squid/sbin/squid -Ndc1
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章