Squid
Squid 訪問控制
我們應該對Squid代理服務從理論上有了一定的認識,接下來通過應用實例的學習,希望能夠使大家對Squid代理服務有一個更為深入的理解。在學習實例之前有必要強調(diào)一下,Squid訪問控制列表是順序讀取的,應將配置文件squid.conf中的以下兩個規(guī)則始終放置在acl語句的最后,否則這兩條規(guī)則會覆蓋其他的acl語句。
acl all src 0.0.0.0/0.0.0.0 |
同樣的道理,當配置文件中配置多條訪問控制規(guī)則時,必須注意其順序,避免規(guī)則相互覆蓋或屏蔽。另外,每次修改完配置文件后,若想使修改后的規(guī)則生效就必須重新載入配置文件,即運行命令"/etc/rc.d/init.d/squid reload"。
【實例一】禁止IP地址為192.168.1.102的客戶機上網(wǎng)。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl badclientip src 192.168.1.102 |
該規(guī)則定義了一條名為badclientip的acl,acl類型為src源IP地址方式,列表值為192.168.1.102,然后使用http_access參數(shù)禁止badclientip規(guī)則。也就是在IP地址為192.168.1.102的客戶機通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,該終端客戶訪問Internet資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息,如圖16-31所示。
(點擊查看大圖)圖16-31 拒絕訪問的錯誤提示信息 |
【實例二】禁止IP地址屬于192.168.1.0這個子網(wǎng)的所有客戶機上網(wǎng)。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl badclientsubnet src 192.168.1.0/24 |
該規(guī)則定義了一條名為badclientsubnet的acl,acl類型為src源IP地址方式,列表值為192.168.1.0/24,然后使用http_access參數(shù)禁止badclientsubnet規(guī)則。也就是在IP地址為192.168.1.0子網(wǎng)的客戶機通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,當前定義子網(wǎng)的終端客戶訪問Internet資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息。
【實例三】禁止所有終端用戶訪問IP地址為64.233.189.99(www.google.com)的網(wǎng)站。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl badserverip dst 64.233.189.99 |
該規(guī)則定義了一條名為badserverip的acl,acl類型為dst目標IP地址方式,列表值為64.233.189.99,然后使用http_access參數(shù)禁止badserverip規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,當前所有終端客戶訪問IP地址為64.233.189.99的服務器資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息。
【實例四】禁止所有終端用戶訪問域名為www.google.com的網(wǎng)站。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl baddomain dstdomain -i www.google.com |
該規(guī)則定義了一條名為baddomain的acl,acl類型為dstdomain目標域名方式,列表值為www.google.com,然后使用http_access參數(shù)禁止baddomain規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,當前所有終端客戶訪問域名為www.google.com的服務器的Web資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息。但需要大家注意的是,這個限制規(guī)則僅對google.com域的WWW服務進行了限制,而對于Mail服務等并未限制。
16.6 訪問控制應用實例(2)
【實例五】禁止所有終端用戶訪問域名包含為google.com的網(wǎng)站。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl badurl url_regex -i google.com |
該規(guī)則定義了一條名為badurl的acl,acl類型為url_regex URL規(guī)則表達式匹配方式,列表值為google.com,然后使用http_access參數(shù)禁止badurl規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,當前所有終端客戶訪問服務器的URL中含有g(shù)oogle.com的所有資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息。例如,www.abc.com/google/test.index、www.google.com、mail.google.com等URL均被攔截。
【實例六】限制IP地址為192.168.1.102的客戶機并發(fā)連接的最大連接數(shù)為5。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl clientip src 192.168.1.102 |
上述規(guī)則定義了一條名為clientip的acl,該acl類型為src源地址方式,列表值為192.168.1.102;還定義了一條名為clientmaxconn的acl,該acl類型為maxconn單一IP的最大連接數(shù)方式,列表值為5,然后使用http_access參數(shù)禁止clientip、clientmaxconn規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,終端用戶通過IP地址為192.168.1.102的客戶機同時訪問Internet資源的線程數(shù)不能超過5。這樣可以防止特定客戶開太多線程而占用服務器資源和帶寬。
【實例七】禁止客戶機IP地址在192.168.2.0子網(wǎng)的所有終端客戶在星期一到星期五的9:00到18:00訪問Internet資源。
我們可以定義如下幾條規(guī)則實現(xiàn)上述要求:
acl clientnet src 192.168.2.0/24 |
上述規(guī)則定義了一條名為clientnet的acl,該acl類型為src源地址方式,列表值為192.168.2.0/24;還定義了一條名為worktime的acl,該acl類型為time時間段方式,列表值為MTWHF 9:00-18:00,然后使用http_access參數(shù)禁止clientnet、worktime規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,終端用戶通過IP地址屬于192.168.2.0網(wǎng)段的所有客戶機不能在星期一到星期五的9:00到18:00期間訪問Internet資源。
【實例八】禁止終端用戶在任何客戶機上下載文件擴展名為mp3、exe、zip和rar類型的文件。
我們可以定義如下規(guī)則實現(xiàn)上述要求:
acl badfile urlpath_regex -i \.mp3$ \.exe$ \.zip$ \.rar$ |
該規(guī)則定義了一條名為badfile的acl,該acl類型為urlpath_regex略去協(xié)議和主機名的URL規(guī)則表達式匹配方式,列表值為\.mp3$ \.exe$ \.zip$ \.rar$;同時使用-i參數(shù)是為了忽略列表值大小寫的檢查,然后使用http_access參數(shù)禁止badfile規(guī)則。也就是在終端用戶通過Squid代理服務上網(wǎng)的模式下,由于Squid服務器增加了如上規(guī)則,所有終端客戶訪問服務器的URL中以mp3、exe、zip和rar結(jié)尾的所有資源的請求將會被攔截,終端客戶的Web瀏覽器中會顯示拒絕訪問的錯誤提示信息。例如,http://www.abc.com/google/test.mp3、http://www.cqit.edu.cn/cs/123.zip、http://www.cqit.edu.cn/cs/siyanzhidao. rar等URL均被攔截。
轉(zhuǎn)載于:https://blog.51cto.com/tingting1/1435724
總結(jié)
- 上一篇: 矿区自动驾驶:异军突起的新赛道
- 下一篇: 家用路由器被攻击记