iptables初步接觸

2022-06-26 08:54:09 字數 3495 閱讀 3055

0、iptables命令選項輸入順序:

iptables -t 表名 <-a/i/d/r> 規則鏈名 [規則號] <-i/o 網絡卡名》 -p 協議名 <-s 源ip/源子網》 --sport 源埠 <-d 目標ip/目標子網》 --dport 目標埠 -j 動作

新增規則有兩個引數:-a和-i。其中-a是新增到規則的末尾;-i可以插入到指定位置,沒有指定位置的話預設插入到規則的首部。

表名包括:

raw:高階功能,如:**過濾。

mangle:資料報修改(qos),用於實現服務質量。

net:位址轉換,用於閘道器路由器。

filter:包過濾,用於防火牆規則。

規則鏈名包括:

input鏈:處理輸入資料報。

output鏈:處理輸出資料報。

porward鏈:處理**資料報。

prerouting鏈:用於目標位址轉換(dnat),路由前。

postouting鏈:用於源位址轉換(snat),路由後

1、檢視

iptables -nvl --line-numbers

-l 檢視當前表的所有規則,預設檢視的是filter表,如果要檢視nat表,可以加上-t nat引數

-n 不對ip位址進行反查,加上這個引數顯示速度會快很多

-v 輸出詳細資訊,包含通過該規則的資料報數量,總位元組數及相應的網路介面

--line-numbers 顯示規則的序列號,這個引數在刪除或修改規則時會用到

2、新增

新增規則有兩個引數:-a和-i。其中-a是新增到規則的末尾;-i可以插入到指定位置,沒有指定位置的話預設插入到規則的首部。

當前規則:

[root@test ~]# iptables -nl --line-numbers

chain input (policy accept)

num target prot opt source destination

1 drop all -- 192.168.1.1 0.0.0.0/0

2 drop all -- 192.168.1.2 0.0.0.0/0

3 drop all -- 192.168.1.4 0.0.0.0/0

新增一條規則到尾部:

[root@test ~]# iptables -a input -s 192.168.1.5 -j drop

再插入一條規則到第三行,將行數直接寫到規則鏈的後面:

[root@test ~]# iptables -i input 3 -s 192.168.1.3 -j drop

檢視:[root@test ~]# iptables -nl --line-numbers

chain input (policy accept)

num target prot opt source destination

1 drop all -- 192.168.1.1 0.0.0.0/0

2 drop all -- 192.168.1.2 0.0.0.0/0

3 drop all -- 192.168.1.3 0.0.0.0/0

4 drop all -- 192.168.1.4 0.0.0.0/0

5 drop all -- 192.168.1.5 0.0.0.0/0

可以看到192.168.1.3插入到第三行,而原來的第三行192.168.1.4變成了第四行。

新增多個埠

iptables -i input -p tcp -m multiport --ports 5900:6100 -m comment --comment "vnc ports" -j accept

3、刪除

刪除用-d引數

刪除之前新增的規則(iptables -a input -s 192.168.1.5 -j drop):

[root@test ~]# iptables -d input -s 192.168.1.5 -j drop

有時候要刪除的規則太長,刪除時要寫一大串,既浪費時間又容易寫錯,這時我們可以先使用--line-numbers找出該條規則的行號,再通過行號刪除規則。

[root@test ~]# iptables -nl --line-number

chain input (policy accept)

num target prot opt source destination

1 drop all -- 192.168.1.1 0.0.0.0/0

2 drop all -- 192.168.1.2 0.0.0.0/0

3 drop all -- 192.168.1.3 0.0.0.0/0

刪除第二行規則

[root@test ~]# iptables -d input 2

4、修改

修改使用-r引數

先看下當前規則:

[root@test ~]# iptables -nl --line-numbers

chain input (policy accept)

num target prot opt source destination

1 drop all -- 192.168.1.1 0.0.0.0/0

2 drop all -- 192.168.1.2 0.0.0.0/0

3 drop all -- 192.168.1.5 0.0.0.0/0

將第三條規則改為accept:

[root@test ~]# iptables -r input 3 -j accept

再檢視下:

[root@test ~]# iptables -nl --line-numbers

chain input (policy accept)

num target prot opt source destination

1 drop all -- 192.168.1.1 0.0.0.0/0

2 drop all -- 192.168.1.2 0.0.0.0/0

3 accept all -- 0.0.0.0/0 0.0.0.0/0

第三條規則的target已改為accept。

5、清理防火牆

iptables -f

VML初步接觸

什麼是vml?vml vector markup language 是乙個最初由microsoft開發的xml詞表,現在也只有ie5.0以上版本對vml提供支援。使用vml可以在ie中繪製向量圖形,所以有人認為vml就是在ie中實現了畫筆的功能。下面介紹一下vml的優點 基於xml標準 xml是公認...

glsl初步接觸

在看計算機系的同學的 時,我還不知道glsl這種東西。我還以為opengl繪製就是使用glbegin和glend。我還深深地納悶 opengl這貨畫東西完全不給力,是怎麼做到跟directx相比的?然後我看到了 裡的gluseprogram,看到了程式裡完全沒有出現glbegin這種語句。後來我才知...

初步接觸ubuntu

1 檔案部分helloworld 建立檔案 sudo vi aa.txt 由於許可權問題所以加上管理員許可權sudo 然後進入編輯介面 寫入helloworld 按esc退出 輸入 wq 寫入write並退出quit 檢視檔案 修改檔案許可權 此處還是要用sudo chmod 今天把學習到的先記錄到...