Linux iptables規則詳解

2021-08-09 18:27:31 字數 2297 閱讀 3283

*filter

:input drop [345:43237]

:forward accept [0:0]

:output accept [306:41346]

-ainput -p tcp -m tcp --dport 10022 -j accept

-ainput -p tcp -m tcp --dport 80 -j accept

-ainput -p tcp -m tcp --dport 1990 -j accept

-ainput -p tcp -m tcp --dport 40000 -j accept

-ainput -p tcp -m tcp --dport 40001 -j accept

-ainput -p tcp -m tcp --dport 9528 -j accept

-ainput -m state --state related,established -j accept

-ainput -m state --state invalid -j drop

-ainput -p icmp --icmp-type echo-request -j accept

-aoutput -p icmp --icmp-type echo-reply -j accept

-aoutput -p icmp --icmp-type echo-request -j drop

-ainput -p icmp --icmp-type echo-reply -j drop

-ainput -i lo -j accept

-aoutput -o lo -j accept

commit

:input drop禁止所有input的包,只允許符合如下規則的指定包進入

-a

input -p tcp -m tcp --dport 10022 -j accept

-ainput -p tcp -m tcp --dport 80 -j accept

-ainput -p tcp -m tcp --dport 1990 -j accept

-ainput -p tcp -m tcp --dport 40000 -j accept

-ainput -p tcp -m tcp --dport 40001 -j accept

-ainput -p tcp -m tcp --dport 9528 -j accept

#開放10022,80,1990,40000,40001,9528埠

上面的配置只能允許從這些埠進來包,但是如果該伺服器主動向外發起連線,該伺服器會開啟乙個隨機埠,而隨機埠肯定不在上面的配置裡面,就會導致無法接受其他伺服器返回的包。

例如:該伺服器訪問a伺服器的80埠,同時自己開啟了54321埠來接受返回的資料,由於我們上面沒有配置54321埠對應的規則。此時,a伺服器返回的資料就會被防火牆丟棄

為了解決上面的問題,還需要如下配置:

-a input -m state --state related,established -j accept

-a input -m state --state invalid -j drop

該配置允許established狀態及related狀態的鏈結不受限的進出該機器,established為已經建立好的鏈結,related狀態一般會出現於有雙通道的服務中,例如ftp服務。ftp服務會開放兩個埠,乙個為控制埠,乙個為資料傳輸埠。核心根據一系列ip_conntrack_*核心函式來判斷是否為related狀態

-a input -p icmp --icmp-type echo-request

-j accept

-a output -p icmp --icmp-type echo-reply

-j accept

-a output -p icmp --icmp-type echo-request

-j drop

-a input -p icmp --icmp-type echo-reply

-j drop

允許其它主機ping該機器,但不允許該機器ping其它主機

-a input -i lo -j accept

-a output -o lo -j accept

允許回環

Linux iptables 規則組成

linux iptables 規則原理和基礎 介紹了iptables的四表五鏈,簡單說就是不同的網路層資料報會經過哪幾個掛載點,在每個掛載點可以在哪張表進行規則定義。本篇沿著這個思路,更具體的介紹一條iptables規則的組成。linux iptables 規則組成 這是iptables一條規則的基...

伺服器 Linux iptables 規則

1.iptables 規則常見 管理控制選項 2.iptables防火牆常用的策略 1.拒絕進入防火牆的所有icmp協議資料報 iptables i input p icmp j reject 2.允許防火牆 除icmp協議以外的所有資料報 iptables a forward p icmp j a...

Linux Iptables命令詳解

ipaddr ipaddr port port 可以指定乙個單一的新的ip位址,乙個ip位址範圍,也可以附加乙個埠範圍 只能在指定 p tcp 或者 p udp的規則裡 如果未指定埠範圍,源埠中512以下的 埠 會被安置為其他的512以下的埠 512到1024之間的埠會被安置為1024以下的,其他埠...