iptables實(shí)例
iptables實(shí)例
單個(gè)規(guī)則實(shí)例
- iptables -F?
# -F 是清除的意思,作用就是把 FILTRE TABLE 的所有鏈的規(guī)則都清空
iptables -A INPUT -s 172.20.20.1/32 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
#在 FILTER 表的 INPUT 鏈匹配源地址是172.20.20.1的主機(jī),狀態(tài)分別是NEW,ESTABLISHED,RELATED 的都放行。
iptables -A INPUT -s 172.20.20.1/32 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
# -p 指定協(xié)議,-m 指定模塊,multiport模塊的作用就是可以連續(xù)匹配多各不相鄰的端口號(hào)。完整的意思就是源地址是172.20.20.1的主機(jī),狀態(tài)分別是NEW, ESTABLISHED,RELATED的,TCP協(xié)議,目的端口分別為123 和 110 的數(shù)據(jù)包都可以通過(guò)。
iptables -A INPUT -s 172.20.22.0/24 -m state --state NEW,ESTABLISHED -p tcp -m multiport --dport 123,110 -j ACCEPT
iptables -A INPUT -s 0/0 -m state --state NEW -p tcp -m multiport --dport 123,110 -j DROP
#這句意思為源地址是0/0的 NEW狀態(tài)的的TCP數(shù)據(jù)包都禁止訪問(wèn)我的123和110端口。
iptables -A INPUT -s ! 172.20.89.0/24 -m state --state NEW -p tcp -m multiport --dport 1230,110 -j DROP
# "!"號(hào)的意思 取反。就是除了172.20.89.0這個(gè)IP段的地址都DROP。
iptables -R INPUT 1 -s 192.168.6.99 -p tcp --dport 22 -j ACCEPT
替換INPUT鏈中的第一條規(guī)則
- iptables -t filter -L INPUT -vn
以數(shù)字形式詳細(xì)顯示filter表INPUT鏈的規(guī)則
#-------------------------------NAT IP--------------------------------------
#以下操作是在 NAT TABLE 里面完成的。請(qǐng)大家注意。
- iptables -t nat -F
- iptables -t nat -A PREROUTING -d 192.168.102.55 -p tcp --dport 90 -j DNAT --to 172.20.11.1:800
#-A PREROUTING 指定在路由前做的。完整的意思是在 NAT TABLE 的路由前處理,目的地為192.168.102.55 的 目的端口為90的我們做DNAT處理,給他轉(zhuǎn)向到172.20.11.1:800那里去。
- iptables -t nat -A POSTROUTING -d 172.20.11.1 -j SNAT --to 192.168.102.55
#-A POSTROUTING 路由后。意思為在 NAT TABLE 的路由后處理,凡是目的地為 172.20.11.1 的,我們都給他做SNAT轉(zhuǎn)換,把源地址改寫(xiě)成 192.168.102.55 。
- iptables -A INPUT -d 192.168.20.0/255.255.255.0 -i eth1 -j DROP
- iptables -A INPUT -s 192.168.20.0/255.255.255.0 -i eth1 -j DROP
- iptables -A OUTPUT -d 192.168.20.0/255.255.255.0 -o eth1 -j DROP
- iptables -A OUTPUT -s 192.168.20.0/255.255.255.0 -o eth1 -j DROP
# 上例中,eth1是一個(gè)與外部Internet相連,而192.168.20.0則是內(nèi)部網(wǎng)的網(wǎng)絡(luò)號(hào),上述規(guī)則用來(lái)防止IP欺騙,因?yàn)槌鋈雃th1的包的ip應(yīng)該是公共IP
- iptables -A INPUT -s 255.255.255.255 -i eth0 -j DROP
- iptables -A INPUT -s 224.0.0.0/224.0.0.0 -i eth0 -j DROP
- iptables -A INPUT -d 0.0.0.0 -i eth0 -j DROP
# 防止廣播包從IP代理服務(wù)器進(jìn)入局域網(wǎng):
- iptables -A INPUT -p tcp -m tcp --sport 5000 -j DROP
- iptables -A INPUT -p udp -m udp --sport 5000 -j DROP
- iptables -A OUTPUT -p tcp -m tcp --dport 5000 -j DROP
- iptables -A OUTPUT -p udp -m udp --dport 5000 -j DROP
# 屏蔽端口 5000
- iptables -A INPUT -s 211.148.130.129 -i eth1 -p tcp -m tcp --dport 3306 -j DROP
- iptables -A INPUT -s 192.168.20.0/255.255.255.0 -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT
- iptables -A INPUT -s 211.148.130.128/255.255.255.240 -i eth1 -p tcp -m tcp --dport 3306 -j ACCEPT
- iptables -A INPUT -p tcp -m tcp --dport 3306 -j DROP
# 防止 Internet 網(wǎng)的用戶(hù)訪問(wèn) MySQL 服務(wù)器(就是 3306 端口)
- iptables -A FORWARD -p TCP --dport 22 -j REJECT --reject-with tcp-reset
#REJECT, 類(lèi)似于DROP,但向發(fā)送該包的主機(jī)回復(fù)由--reject-with指定的信息,從而可以很好地隱藏防火墻的存在。iptables實(shí)例說(shuō)明介紹。
【編輯推薦】