歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> iptables知識理論的學習與實踐舉例

iptables知識理論的學習與實踐舉例

日期:2017/2/28 14:42:57   编辑:Linux教程

iptables是什麼?不解釋,直接進入正題。

iptables的命令使用結構是這樣的 iptables [-t table] command [match] [target] 下面一項一項來介紹

[-t table]部分

[-t table]選項允許使用標准表之外的任何表。表是包含僅處理特定類型信息包的規則和鏈的信息包過濾表。
有三個可用的表選項:filter、nat和mangle。該選項不是必需的,如果未指定,則filter作為缺省表。

filter 用於一般信息包的過濾,包含INPUT、 OUTPUT和FORWARD鏈。

INPUT:代表匹配目的 IP 是本機的數據包

OUTPUT:代表匹配源ip是本機的數據包

FORWARD:代表匹配穿過本機的數據包

nat 用於要轉發的信息包,包含PREROUTING、OUTPUT和POSTROUTING鏈。

PREROUTING: 修改目的地址(DNAT)
POSTROUTING:修改源地址 (SNAT)

mangle 這個表不是很理解,反正我沒有用過,嘻嘻

#############################################################################

command部分

command部分是iptables命令最重要的部分。它告訴iptables命令要做什麼,例如插入規則、
將規則添加到鏈的末尾或刪除規則。

-A <鏈名>
APPEND,追加一條規則(放到最後)

例如:
iptables -t filter -A INPUT -j DROP

在 filter 表的 INPUT 鏈裡追加一條規則(作為最後一條規則),將所有目的IP為本機的包全部丟棄。


在沒有開啟防火牆之前,我可以ping192.168.254.153這台機子,防火牆開後,ping不通了,而且我的ssh也斷開了,因為防火牆是將所有的包都丟棄了,自然包括ssh鏈接的包。由於無法再使用ssh鏈接,所以我只能到服務器上清空防火牆,清空後,就可以ping了


INPUT:匹配目的IP 是本機的數據包

FORWARD 穿過本機的數據包,

PREROUTING用於修改目的地址(DNAT)

POSTROUTING,用於修改源地址(SNAT)

為了能保證我測試iptables用法時ssh不會斷開,所以在這裡我首先加上一條iptables規則

我還是開啟將所有目的IP為本機的包丟棄

然後我追加一條策略



更多詳情請繼續閱讀第2頁的內容:http://www.linuxidc.com/Linux/2013-10/91444p2.htm

Copyright © Linux教程網 All Rights Reserved