防火牆之詳解

防火牆之詳解 安全

1、防火牆的介紹 網絡

防火牆是指隔離在本地網絡與外界我網絡之間的一道防護系統,一般用於專用網絡與公用網絡的互聯環境之中,特別是接入Internet的網絡,它是惟一進出不一樣網絡安全域之間信息的通道,能根據安全策略控制信息流出入網絡,如容許,拒絕,監測等等,它是一種在Internet上很是有效的安全模式,經過它能隔離風險區域的連接,同時又不會妨礙用戶對風險區域的訪問,從而有效地監控了內部網和Internet之間的活動,保證了內部網絡的安全,防火牆的主要功能是根據IP ssh

TCP兩個報文實現的。 tcp

2、防火牆的特徵以及功能 ide

防火牆的特徵: 函數

(1)雙向流通訊息必須通過它 post

(2)只有符合安全策略受權的信息流才被容許經過 性能

(3)系統自己具備很高的抗***性能 spa

   防火牆的功能: 3d

(1)提供網絡安全的屏障

(2)強化網絡安全策略

(3)監控審計網絡的存取和訪問

(4)防止內部信息外漏

3、防火牆的一些規則

    (1)匹配函數如:IP:源IP,目標IP

TCP:SPORT,DPORT,標準位:

UDP:SPORT,DPORT

ICMP:icmp—type

 2)數據報文過濾: Linux2.0   ipfw/firewall

    Linux2.2 ipchain/firewall

    Linux2.4 iptables/netfilter

     (3)hook function:鉤子函數 prerouting、input、output、forward、postrouting

 (4)規則鏈:PREROUTING、INPUT、OUTPUT、FORWARD、POSTROUTING

4、三種表的做用和內置鏈以及在各類表的功能

(1):filter(過濾數據包)

              INPUT:應用於發往本機的數據包

DORWARD:應用於路由通過本地的數據包

OUTPUT:本地產生的數據包

(2):nat(網絡地址轉換)

PREROUTING:修改剛剛到達防火牆時數據包的目的地址

OUTPUT:修改本地產生的數據包的目的地址

POSTROUTING:修改要離開防火牆的數據包的源地址

(3):mangle(修改數據包)

PREROUTING:在數據包進入防火牆以後路由判斷以前,改變數據包

OUTPUT:在肯定數據包的目的以前更改數據包

POSTROUTING:在肯定數據包的目的以後更改數據包

INPUT:數據包被路由到本地以後,用戶程序看到以前改變數據包

5、iptables介紹

    可使用自定鏈,但只在被調用時才能發揮做用,並且若是沒有自定義鏈中的任何規則匹配,還應該有返回機制,能夠用刪除自定義的空鏈,能夠默認鏈沒法刪除。

每一個規則都有兩個內置的計數器:一、被匹配的報文個數;二、被匹配的報文大小之和

   Iptables的規則:匹配標準,處理動做

     例如:iptables [-t TABLE] COMMAND CHAIN [num] 匹配條件 -j 處理動做

  匹配標準:

     一、通用匹配

-s,--src:指定源地;-d, --dst:指定目標地址;-p {tcp|udp|icmp}指定協議

-i:INTERFACE:指定數據報文流入的接口

    可用於定義標準的鏈:PREROUTING,INPUT,FORWARD

-o INTERFACE:指定數據報文流出的接口

   可用於定義標準的鏈:OUTPUT,POSTROUTING,FORWAD

  

二、擴展匹配

隱含擴展:不用特別指明有哪一個模塊進行的擴展,由於此時使用-p {tcp|udp|icmp}

-p tcp

 --sport PORT[-PORT]:源端口   --dport PORT[-PORT]:目標端口

例如:源地址爲172.16.38.1,sshd爲22/tch

--tcp-flags mask comp:只檢查mask指定的標誌位,是逗號分隔的標誌位列表:comp,此列表中出現的標記必須爲1,comp中沒出現,而mask中出現的,必須爲0;

--tcp-flags SYN,FIN,ACK,RST SYN,ACK

--syn

p icmp   --icmp-type 0:echo-reply   8:echo-repy

-p udp   --sport   --dport

顯示擴展,必須指明有哪一個模塊進行的擴展,在iptables中使用-m選項可完成此功能

-m EXTESTLON --spe-opt

state:狀態擴展

結合ip_conntrack追蹤會話的狀態

NEW:新連接請求   ESTABLISHED:已創建的連接

INVALID:非法連接   RELATED:相關聯的

-m state --state NEW -j ACCEPT

multiport:離散的多端口匹配擴展

--source-ports    --destination-ports    --ports

6、iptables的命令:

管理規則:

-A:附加一條規則,添加在鏈的尾部

-I:CHAIN [num]插入一條規則,插入爲對應CHAIN上的第num條;

-D CHAIN [num]:刪除指定鏈中的第num條規則

-R CHINA [num]:替換指定的規則;

管理鏈:

-F:[CHAIN]:flush:清空指定規則鏈,若是省略CHAIN,則能夠實現刪除對應表中的全部鏈

-P: CHAIN:設定指定鏈的默認策略;

           -N:自定義一個新的空鏈

           -X:刪除一個自定義的空鏈

           -Z:置零指定鏈中全部規則的計數器

           -E:重命名自定義的鏈

查看類:

Lsmod | grep []

-L:顯示指定表中的規則;

          -n:以數字格式顯示主機地址和端口號

              -v:顯示鏈及規則的詳細信息

              -x:顯示計數器的精確值

              --lline-numbers:顯示規則號碼

7、iptables動做(target)

-J

ACCEPT:放行 DROP:丟棄 REJECT:拒絕 DNAT:(目標地址轉換)

SNAT:原地址轉換 REDIRECT:端口重定向 MASQUERADE:地址假裝

NOTRACK(不作任何追蹤) LOG:日誌 MARK:打標機

相關文章
相關標籤/搜索