Linux VPS利用iptables ip6tables string模塊屏蔽指定的網站、文件等

利用iptables防火墻,可以阻止服務器訪問某個網站,或文件等,可以屏蔽奈飛(ipv6網址,),可以屏蔽油管。
目的:解決既不想關閉ipv6功能,又能讓Netflix禁用ipv6(Netflix優先使用ipv6的,所以設置ipv4優先不能解決v6不解鎖奈飛的情況)
原理:一般iptables自帶的都有string模塊,這個模塊的作用就是匹配字符串,匹配到泛域名的URL,然後就把數據包丟棄,就實現瞭屏蔽泛域名的功能。ipv6的ip6tables命令於v4基本相同。
方法
以下規則是屏蔽以xx.com為主的所有一級、二級、三級等域名。
#添加屏蔽規則
iptables -A OUTPUT -m string –string “xx.com” –algo bm –to 65535 -j DROP

#刪除屏蔽規則,上面添加的代碼是什麼樣,那麼刪除的代碼就是把-I改成-D
iptables -D OUTPUT -m string –string “xx.com” –algo bm –to 65535 -j DROP

命令詳解:
-A
#添加iptables規則;
-D
#刪除iptables規則(把添加防火墻規則時代碼中的-A改成-D即可刪除添加的規則);
-m string
#指定模塊;
–string “xx.com”
#指定要匹配的字符串(域名、關鍵詞等);
–algo bm
#指定匹配字符串模式/算法(還有一種更復雜的算法:kmp);
–to 65535
#指定端口,這裡代表所有端口(1-65535);
-j DROP
#指匹配到數據包後處理方式,這裡是丟棄數據包。

這個模塊的作用就是匹配字符串,這個字符串可以是URL、普通文本、文件後綴(後兩者時,如果目標網站啟用瞭GZIP類壓縮算法,就會無法過濾匹配,畢竟都壓縮瞭)。
比如:.zip,就會把包含.zip的數據庫丟棄,這樣就會無法下載.zip類型的文件瞭!
本文轉載自:https://www.moerats.com/archives/524/
iptables命令學習網址:https://hezhiqiang.gitbook.io/linux/ming-ling/iptables


本文出自快速备案,转载时请注明出处及相应链接。

本文永久链接: https://www.xiaosb.com/beian/50665/