在squid.conf中應該如何編寫這樣的ACL?

王朝厨房·作者佚名  2007-01-02
宽屏版  字体: |||超大  

請問大家一個問題:

我在squid中設置了上網時需要進行用戶驗證,但現在我想在squid中設置上某一個特定網站時不需要進行用戶驗證,而上其他任何網站時都必須進行用戶驗證。我己經實現了此功能,但在實現的過程中還在存在一此問題.

問題如下:

例如:我在squid中設置訪問http://www.abcd.com不用進行用戶驗證(即登陸時,squid不需要進行用戶輸入密碼,直接登陸網站)。在squid.conf中加入如下語句:

acl abcd dstdomain www.abcd.com

acl password proxy_auth REQUIRED

......

http_access allow abcd (注意:此語句必須放在下條語句的前面)

http_access allow password

......

之後,將訪問http://www.abcd.com時確定不需要不進行用戶驗證,但是,此網站中鏈接了其它的網站123.abcd.com與456.abcd.com,所以,當進入此兩個鏈接(http://123.abcd.com與http://456.abcd.com)時,squid還是必須要用戶輸入密碼進行用戶驗證。故請問在squid.conf如何設置針對所有的*.abcd.com都不需要進行用戶驗證(也即:如何更改上面的那條acl abcd)?如果要應用正則表達式的話,該如何使用?多謝大家了。

段誉 回复于:2005-03-17 02:57:57

acl abcd dstdom_regex -i \.abcd\.com

如果有多个domain需要这样的匹配,可以这样:

acl abcd dstdom_regex -i "/path/to/filename"

文件内容如下:

\.abcd\.com

\.efgh\.com

不行用urlpath_regex也行,但一定要加-i参数,取消大小写敏感。

DreamJiang 回复于:2005-03-17 09:22:10

謝謝上樓的兄弟,己經成功地實現了上述功能。

段誉 回复于:2005-03-17 09:31:38

如果可能,请描述一下你是如何实现的,谢谢!

DreamJiang 回复于:2005-03-18 11:45:08

......

acl abcd dstdom_regex -i \.abcd\.com

acl password proxy_auth REQUIRED

......

http_access allow !abcd password

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有