日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

iptables其實不是真正的防火墻,我們可以把它理解成一個客戶端代理,用戶通過iptables這個代理,將用戶的安全設定執行到對應的"安全框架"中,這個"安全框架"才是真正的防火墻,這個框架的名字?.NETfilter。

Netfilter是linux操作系統核心層內部的一個數據包處理模塊,它具有如下功能:網絡地址轉換(Network Address Translate),數據包內容修改以及數據包過濾的防火墻功能!

iptables其實是一個命令行工具,位于用戶空間,我們用這個工具操作真正的框架!

netfilter/iptables(下文中簡稱為iptables)組成Linux平臺下的包過濾防火墻,一般Linux系統是默認自帶啟動的。

查看是否啟動:sysctl -p 從指定的文件加載系統參數,如不指定即從/etc/sysctl.conf中加載!

 

iptables是按照規則來辦事的,我們就來說說規則(rules),規則其實就是網絡管理員預定義的條件,規則一般的定義為"如果數據包頭符合這樣的條件,就這樣處理這個數據包"。規則存儲在內核空間的信息包過濾表中,這些規則分別指定了源地址、目的地址、傳輸協議(如TCP、UDP、ICMP)和服務類型(如HTTP、FTP和SMTP)等。當數據包與規則匹配時,iptables就根據規則所定義的方法來處理這些數據包,如放行(accept)、拒絕(reject)和丟棄(drop)等。配置防火墻的主要工作就是添加、修改和刪除這些規則。

iptables傳輸數據包的過程

當我們啟用了防火墻功能時,報文需要經過如下關卡,而這些關卡在iptables中不被稱為"關卡",而被稱為"鏈"。也就是說,根據實際情況的不同,報文經過"鏈"可能不同。

 

所以,根據上圖,我們能夠想象出某些常用場景中,報文的流向:

到本機某進程的報文:PREROUTING --> INPUT

由本機轉發的報文:PREROUTING --> FORWARD --> POSTROUTING

由本機的某進程發出報文(通常為響應報文):OUTPUT --> POSTROUTING

鏈(chains)

我們知道,防火墻的作用就在于對經過的報文匹配"規則",然后執行對應的"動作",所以,當報文經過這些關卡的時候,則必須匹配這個關卡上的規則,但是,這個關卡上可能不止有一條規則,而是有很多條規則,當我們把這些規則串到一個鏈條上的時候,就形成了"鏈",每個經過這個"關卡"的報文,都要將這條"鏈"上的所有規則匹配一遍,如果有符合條件的規則,則執行規則對應的動作。

5種鏈

5種鏈的說明如下:

PREROUTING:數據包進入路由表之前
INPUT:通過路由表后目的地為本機
FORWARDING:通過路由表后,目的地不為本機
OUTPUT:由本機產生,向外轉發
POSTROUTHING:發送到網卡接口之前

表(tables)

每個"鏈"上都放置了一串規則,但是這些規則有些很相似,我們把實現相同功能的規則放在一起;我們把具有相同功能的規則的集合叫做"表",所以說,不同功能的規則,我們可以放置在不同的表中進行管理。

iptables已經為我們定義了4個表: filter表、nat表、mangle表和raw表:每個表對應了不同的功能,而我們定義的規則也都逃脫不了這4種功能的范圍。

filter表:負責過濾功能,防火墻; 內核模塊:iptables_filter

nat表:network address translation,網絡地址轉換功能; 內核模塊:iptable_nat

mangle表:拆解報文,做出修改,并重新封裝的功能; 內核模塊: iptable_mangle

raw表:關閉nat表上啟用的連接追蹤機制; 內核模塊:iptable_raw

表鏈關系

某些"鏈"中注定不會包含"某類規則",讓我們看看每個"鏈"上的規則都存在于哪些"表"中:

PREROUTING鏈 的規則可以存在于:raw表,mangle表,nat表。
INPUT 鏈的規則可以存在于:mangle表,filter表,(centos7中還有nat表,centos6中沒有)。
FORWARD鏈 的規則可以存在于:mangle表,filter表。
OUTPUT鏈 的規則可以存在于:raw表,mangle表,nat表,filter表。
POSTOUTING鏈 的規則可以存在于:mangle表,nat表。

但是,我們在實際的使用過程中,往往是通過"表"作為操作入口,對規則進行定義的,之所以按照上述過程介紹iptables,是因為從"關卡"的角度更容易從入門的角度理解,但是為了以便在實際使用的時候,更加順暢的理解它們,我們還要將各"表"與"鏈"的關系羅列出來:

表(功能)<--> 鏈(鉤子):
filter表<-->三個鏈:INPUT、FORWARD、OUTPUT
作用:過濾數據包 內核模塊:iptables_filter.

Nat表<-->三個鏈:PREROUTING、POSTROUTING、OUTPUT
作用:用于網絡地址轉換(IP、端口) 內核模塊:iptable_nat

Mangle表<-->五個鏈:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD
作用:修改數據包的服務類型、TTL、并且可以配置路由實現QOS內核模塊

Raw表<-->兩個鏈:OUTPUT、PREROUTING
作用:決定數據包是否被狀態跟蹤機制處理

iptables為我們定義了4張"表",當他們處于同一條"鏈"時,執行的優先級如下

優先級次序(由高而低):raw --> mangle --> nat --> filter

優先級次序(由高而低):raw --> mangle --> nat --> filter

iptables操作

查看filter的詳細規則:filter表<-->三個鏈:INPUT、FORWARD、OUTPUT

————————————————

[root@xing Desktop]# iptables -t filter -nvL

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)

注:OUTPUT 出站鏈

pkts bytes target prot opt in out source destination

0 0 ACCEPT all -- * * 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED(三次握手狀態)

0 0 ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0

0 0 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0

0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 state NEW tcp dpt:22(目標端口22)

2 318 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited(默認拒絕所有

———————

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

注:FORWARD轉發規則鏈(當源IP地址以及目標IP地址都不是本機的時候使用的規則)

pkts bytes target prot opt in out source destination

0 0 REJECT all -- * * 0.0.0.0/0 0.0.0.0/0 reject-with icmp-host-prohibited

———————

Chain OUTPUT (policy ACCEPT 4 packets, 240 bytes)

注:OUTPUT 出站鏈

pkts bytes target prot opt in out source destination

————————————————

iptables的基本語法格式

iptables [-t 表名] 命令選項 [鏈名] [匹配條件] [-j 控制類型]

iptables 【-t filter】 -I 【INPUT】 【-p tcp --dport 80】 【-j ACCEPT】

命令選項:

————

添加新的規則

  • -A 在鏈的末尾追加一條規則
  • -I 在鏈的開頭(或指定序號)插入一條規則

————

查看規則列表

  • -L 列出所有規則條目
  • -n 數字的形式顯示地址、端口信息
  • -v 以更詳細的方式顯示規則信息
  • --line-number 查看規則時,顯示規則的序號

[root@xing Desktop]# iptables -t filter -nvL --line-number

————

刪除、清空規則

  • -D 刪除鏈內指定序號(或內容)的一條規則
  • -F 清空所有的規則

[root@xing Desktop]# iptables -D FORWARD 2

[root@xing Desktop]# iptables -F(清空所有規則)

[root@xing Desktop]# service iptables restart

iptables: Setting chains to policy ACCEPT: filter [ OK ]

iptables: Flushing firewall rules: [ OK ]

iptables: Unloading modules: [ OK ]

iptables: Applying firewall rules: [ OK ]

————

設置默認策略

-P :設置默認策略的(默認策略一般只有兩種。默認是關的/默認是開的)

iptables -P INPUT (DROP|ACCEPT)

[root@xing Desktop]# iptables -P FORWARD DROP

———————

控制類型

ACCEPT 允許通過

DOROP 直接丟棄,不給出任何提示

REJECT 拒絕通過,必要時給出提示

LOG 記錄日志信息,然后傳給下一條規則繼續匹配

———————

匹配條件【參數】

通用匹配:

協議匹配 -p [協議名]

地址匹配 -s [源地址] -d [目的地址]

接口匹配 -i [入站網卡] 、-o [出站網卡]

隱含匹配(需配合通用匹配一起使用):

端口匹配 --sport [源端口]、--dport [目的端口]

TCP標記端口 --tcp-flags [檢查范圍] [被設置的標記]

ICMP類型匹配 --icmp-type [ICMP類型]

常見的顯示匹配條件

多端口匹配 -m multiport -- sport [源端口列表]、-m multiport -- sport [目的端口列表]

IP范圍匹配 -m iprange --src-range [IP范圍]

mac地址匹配 -m mac --mac-source [MAC地址]

———————

注意事項:

不指定表名時,默認指向filter表

不指定鏈名時,默認表內所有鏈

除非設置鏈的默認策略,否則必須指定匹配條件

選項、鏈名、控制類型使用大寫字母,其余均為小寫

————————————————

[root@xing Desktop]# iptables -t filter -I INPUT -p tcp --dport 80 -j ACCEPT

注:命令嚴格區分大小寫

———————

輔助命令:watch(可以幫你監測一個命令的運行結果)

格式:watch (選項) (參數)

選項

-n:指定指令執行的間隔時間(秒);

-d:高亮顯示指令輸出信息不同之處;

-t:不顯示標題。

參數

指令:需要周期性執行的指令。

watch -n1 iptables -t filter -nvL

————————————————

規則備份與還原

iptables-save工具:可結合重定向輸出保存到指定文件

將當前狀態保存到一個桌面的文件中

[root@xing Desktop]# iptables-save > /root/Desktop/ipt.txt

將備份規則文件導入:

[root@xing Desktop]# iptables-restore < /root/Desktop/ipt.txt

將當前狀態保存為默認規則

[root@xing Desktop]# service iptables save

iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]

恢復到默認規則

[root@xing Desktop]# service iptables restart

iptables: Setting chains to policy ACCEPT: filter [ OK ]

iptables: Flushing firewall rules: [ OK ]

iptables: Unloading modules: [ OK ]

iptables: Applying firewall rules: [ OK ]

————————————————

[root@xing Desktop]# iptables -t nat -nvL --line-number

[root@xing Desktop]# iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 172.168.1.0/24 -j SNAT --to-source 12.34.56.89

[root@xing Desktop]# iptables -t nat -A POSTROUTING -p tcp -o eth1 -s 172.168.1.0/24 -j MASQUERADE

分享到:
標簽:防火墻
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定