IPTable相關理解記錄

2021-06-27 11:14:50 字數 3052 閱讀 9184

iptable

是一種封包過濾機制,版本在

2.4.xx

以上的linux

核心都支援並預裝

iptable

,而在此之前以

2.2.xx

為核心的

linux

主要以ipchains

作為過濾機制。

iptable

具有過濾指定的資料封包、

ip偽裝、達成 

nat的主機等功能。

iptables

和netfilter

的關係有時容易使人混淆不清。這裡首先做一說明,

iptables

是基於netfilter

基本架構實現的乙個可擴充套件的資料報高階管理系統或核外配置工具,像

防火牆(

firewall

)、**轉換

(nat

)、資料報(

package

)記錄、流量統計,這樣的功能全是

linux

核心中的

netfilter

子系統所提供的,而

iptables

是控管netfilter

的唯一工具程式。

iptable採用表(table)與鏈(chain)的分層結構。

一般來說

iptables

有三張表,每張表中會預先設定多條鏈(

chain

),具體如下:

表(table

)表中預設的鏈(

chain)作用

核心模組

filter

input forward output

過濾資料報

iptables_filter

natprerouting postrouting output

用於網路位址轉換

iptable_nat

mangle

prerouting postrouting input output forward

修改資料報的傳輸特性

iptable_mangle

各表的檢視命令:?1

2

3

# iptables –l –n (檢視filter表)

# iptables –t nat –l (檢視nat表)

# iptables –t mangle –l (檢視mangle表)

鏈( chains  )

linux

核心資料報處理流程中,共設定了五個(魚鉤

)攔截點

(hook points)

,這五個攔截點在

iptables

中被作為鏈(

chain

)來呈現,並且每條鏈(

chain

)中會有相應的策略規則(

rule)。

input

【進來的資料報應用此規則鏈中的策略】

output

【外出的資料報應用此規則鏈中的策略】

forward

【**資料報時應用此規則鏈中的策略】

prerouting

【對資料報作路由選擇前應用此鏈中的規則】

postrouting

【對資料報作路由選擇後應用此鏈中的規則】

iptable

結構圖

常見命令及引數說明

iptable

命令基本格式:

iptable 

【-t 

表】 命令選項

【連名】

匹配條件

【-j 

動作】常用命令選項如下:

-a【】

在指定的連的結尾新增規則-d【

--delete

】刪除指定鏈中的規則,可以按規則號或規則內容匹配-i【

--insert

】插入一條新規則,預設是在最前面-r【

--replace

】替換某一條規則-l【

--list

】列出所有規則-f【

--flush

】清空所有規則-z【

--zero

】將所有的

chain

的計數與流量統計都歸零-n【

--new

】自定義一條規則連-x【

--delete-chain

】刪除使用者自定義規則鏈-p【

--policy

】設定預設策略-e

【--rename-chain

】改變鏈名稱-p【

--proto

】設定傳輸協議-s【

--source

】設定源位址-d【

--destination

】設定目標位址-i【

--in-inte***ce

】設定輸入網口名-j【

--jump

】設定規則的目標-n【

--numeric

】以數字方式顯示,如:顯示

ip,但不顯示主機名-o【

--out-inte***ce

】設定輸出網口名-t【

--table

】設定待操作的表-v【

--verbose

】詳細模式-v【

--version】檢視

iptable

的版本資訊

--line-number

列印顯示列表號

表(tables

)與鏈(

chains

)在許多關於

iptables

的說明文件中,我們常見到一種說法「

filter

表中的input

鏈」,這種說法雖然便於描述但其實並不準確,我們可能因此會誤認為鏈(

chains

)屬於表(

tables

)。然而,鏈與表兩者之間其實並沒有統屬關係,最多只有隱諱的關聯性而已。

iptable設定相關

dport 目標埠,當資料從外部進入伺服器為目標埠 sport 源埠,資料從伺服器出去則為資料來源埠 s 指定源位址 d 指定目標位址 a 新增一條 input 的規則 p 指定是什麼協議 我們常用的tcp協議,當然也有udp 例如53埠的dns j 就是指定是 accept 接收 或者 drop ...

Oracle Sql相關記錄

1.批量增加資料 insert into fasp t carolemenu guid,roleguid,menuguid select sys guid guid,43b3bf934c324381892fe59f3d244629 from fasp t carole where length pr...

mysq相關記錄

1 查詢語句的優化 使 explain找出語句瓶頸 2 使用變數替換now 等 函式,啟用查詢快取 3 使用連線池 4 使用記憶體表 引擎設為memory 5 使用mysql語句分析工具 6 innodb引擎優化 7 where條件排序 where語句從前往後執行,限制範圍小的應放在前面.能夠快速縮...