歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> iptables對請求的URL作IP訪問控制

iptables對請求的URL作IP訪問控制

日期:2017/2/28 14:34:47   编辑:Linux教程

服務器運行環境是Tomcat,現在要實現的目的是,只允許特定的IP訪問某個目錄,

一種方法是在tomcat配置文件server.conf中,使用RemoteAddrValve對虛擬主機做訪問控制。

另外一種方法可以通過iptables規則。個人比較喜歡iptables

例如:禁止訪問http://192.168.137.254:10000/managersns 這個路徑,只允許192.168.137.101訪問

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 10000 -s 192.168.137.101 -m string --string "/managersns" --algo bm -j ACCEPT /sbin/iptables -A INPUT -i eth0 -p tcp --dport 10000 -m string --string "/managersns" --algo bm -j DROP

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 10000 -s 192.168.137.101 -m string --string "/managersns" --algo bm -j ACCEPT

/sbin/iptables -A INPUT -i eth0 -p tcp --dport 10000 -m string --string "/managersns" --algo bm -j DROP

以上規則是正對eth0網卡,可以跟蹤自己需求修改。

參數說明:

-m string

使用string功能,string是iptables的一個module,也就是做字符串匹配的。

–string “xxxx”

定義字符串內容,可以是URL裡任意字符,如果是需要block下載某些類型的文件或請求,這個有很大的發揮空間,可自由想象喔。

–algo bm

設置字符匹配的查詢算法,一般默認使用bm算法效果就可以了,另外還可以設置kmp算法,那是一種更復雜的算法,詳細內容可自行參見高等數學裡的資料。(bm = Boyer-Moore, kmp = Knuth-Pratt-Morris)

-j DROP

這在公司網絡禁用視頻網站是非常有效的,在網關服務器上設置:

iptables -A FORWARD -m string –-string “ku6.com” --algo bm -j DROP iptables -A FORWARD -m string –-string “tudou.com” –-algo bm -j DROP iptables -A FORWARD -m string –-string “ouou.com” –-algo bm -j DROP

iptables -A FORWARD -m string –-string “ku6.com” --algo bm -j DROP

iptables -A FORWARD -m string –-string “tudou.com” –-algo bm -j DROP

iptables -A FORWARD -m string –-string “ouou.com” –-algo bm -j DROP

其中各項參數的意義如下:

-A FORWARD

增加FORWARD鏈的規則,以上規則是針對啟用了路由功能(即:echo 1 > /proc/sys/net/ipv4/ip_forward)

如果是直接訪問,可使用的INPUT或OUTPUT。

設置符合此條件的包的處理方式,DROP即是丟棄,也是reject的意思。

iptables -A INPUT -m string --string "stringname" --algo bm -j DROP

推薦閱讀:

iptables—包過濾(網絡層)防火牆 http://www.linuxidc.com/Linux/2013-08/88423.htm

Linux防火牆iptables詳細教程 http://www.linuxidc.com/Linux/2013-07/87045.htm

iptables+L7+Squid實現完善的軟件防火牆 http://www.linuxidc.com/Linux/2013-05/84802.htm

iptables的備份、恢復及防火牆腳本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm

Linux下防火牆iptables用法規則詳解 http://www.linuxidc.com/Linux/2012-08/67952.htm

Copyright © Linux教程網 All Rights Reserved