iptabls 查、增、刪、改,保存
一:查centos
參數 | 說明 |
---|---|
-t | 指定要查看的表,默認爲 filter 表 |
-L | 列出表中規則 |
-v | 查看詳細信息 |
-x | 顯示計數器的精確值 |
-n | 不對 IP 地址進行名稱反解,直接顯示 IP |
--line-number | 顯示規則的行號,可縮寫爲 --line |
-P | 修改默認策略 |
-N | 建立自定義鏈 |
-E | 重命名自定義鏈 |
-N | 刪除自定義鏈 |
案例一:
查詢 fileter 表 INPUT 鏈中的規則丟棄 ip:192.168.8ptables -t filter -vL INPUT
下面介紹下每列的含義app
列明 | 說明 |
---|---|
pkts | 匹配到的報文的個數 |
bytes | 匹配到的報文包的總大小 |
target | 表示 「動做」,即匹配成功後要進行的操做 |
prot | 規則對應的協議(其中 all 表示匹配全部協議) |
opt | 規則對應的選項 |
in | 表示數據包由那個接口(網卡)流入,咱們能夠設置經過哪塊網卡流入的報文須要匹配當前規則 |
out | 表示數據包由那個接口(網卡)流出,咱們能夠設置經過哪塊網卡流出的報文須要匹配當前規則 |
source | 表示規則對應的源頭地址,如:IP、網段 |
destination | 表示規則對應的目標地址,如:IP、網段 |
案例二:
列出 fileter 表 INPUT 鏈中的規則,並顯示行號, 不對 IP 地址進行名稱反解
能夠對比上面圖的區別,下面來解釋下劃線第二行的含義ssh
列明 | 說明 |
---|---|
policy | 表示當前鏈的默認策略,即:在規則中沒有找到對應策略時,應用該策略 |
packets | 表示當前鏈默認策略匹配到的包的 數量 |
bytes | 表示當前鏈默認策略匹配到的全部包的總大小 |
二:增ide
參數 | 說明 |
---|---|
-I insert | 表示將規則插入鏈中 ,即添加 |
-A append | 追加規則(追加到最後一條) |
-s source | 源地址,指明 「匹配條件」 中的地址 |
-j | 當知足條件時,所對應的動做 |
案例一:
在 fileter 表 INPUT 鏈中添加一條丟棄 ip:192.168.80.138 的規則
在 80.138 的機器上進行 ping 或 ssh 鏈接,查看結果
在看 80.144 中變化,如:報文數,總大小
案例二:
使用 -I 與 -A 添加的區別
以下圖:使用 -I 添加的規則在第一行
以下圖:使用 -A 添加的規則在第三行,即 -I 與 -A 的區別
案例三:
使用 -I 在第二行添加一條規則
注意:iptables 中匹配規則是自上而下的,當匹配到第一個符合的規則,便不會在向下匹配centos7
三:刪3d
參數 | 說明 |
---|---|
-F flush | 清空鏈表,不指定鏈只指定表,即刪除表中全部規則 |
-D | 根據匹配條件刪除對應規則 |
案例一:
根據規則行號刪除對應的規則
案例二:
根據匹配條件與動做刪除規則
案例三:
清空鏈表
注意:當沒有 -t 指明表時,默認爲 filter 表
四:改
修改使用 -R,不經常使用,若是要改,我的建議先刪後加
案例一:
修改規則中的動做
注意:在修改時(-R 鏈 序號)便可,但修改有些規則時,要求加上本來的匹配條件,即諾要修改時,本來的匹配條件也要加上,有多個,就寫多個rest
五:保存規則
centos6:使用 service iptables save 便可永久保存,規則默認保存在 /etc/sysconfig/iptables 文件中
若是出現誤操做,但並無保存時,使用service iptables restart 即重啓 iptables,規則會返回到上一次保存時(/etc/sysconfig/iptables)的模樣code
centos7:須要安裝 iptables 與 iptables-service 而後就和 centos6 中同樣了
安裝步驟以下:blog
#配置好 yum 源之後安裝 iptables-service yum install -y iptables-services #中止 firewalld systemctl stop firewalld #禁止 firewalld 自動啓動 systemctl disable firewalld #啓動 iptables systemctl start iptables #將 iptables 設置爲開機自動啓動,之後便可經過 iptables-service 控制 iptables 服務 systemctl enable iptables
也可使用 重載的方式來保存,但重載規則時,現有規則將會被覆蓋
以下:接口
iptables-save > /etc/sysconfig/iptables iptables-restore < /etc/sysconfig/iptables