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

发表于:2007-06-08来源:作者:点击数: 标签:
請問大家一個問題: 我在squid中設置了上網時需要進行用戶驗證,但現在我想在squid中設置上某一個特定網站時不需要進行用戶驗證,而上其他任何網站時都必須進行用戶驗證。我己經實現了此功能,但在實現的過程中還在存在一此問題. 問題如下: 例如:我在squid

請問大家一個問題:
   我在squid中設置了上網時需要進行用戶驗證,但現在我想在squid中設置上某一個特定網站時不需要進行用戶驗證,而上其他任何網站時都必須進行用戶驗證。我己經實現了此功能,但在實現的過程中還在存在一此問題.
  問題如下:
       例如:我在squid中設置訪問http://www.abcd.com不用進行用戶驗證(即登陸時,squid不需要進行用戶輸入密碼,直接登陸網站)。在squid.conf中加入如下語句:
      acl abcd dstdomain www.abcd.com
      acl password proxy_auth REQUIRED
       ......
      http_aclearcase/" target="_blank" >ccess 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 
......

原文转自:http://www.ltesting.net