《iptables詳解 》RHEL6

來源:互聯網
上載者:User

  •  
  iptables詳解    Iptables原理現在防火牆主要分以下三種類型: 包過濾、應用代理、狀態檢測 包過濾防火牆:現在靜態包過濾防火牆市面上已經看不到了,取而代之的是動態包過濾技術的防火牆哈~ 代理防火牆:因一些特殊的報文攻擊可以輕鬆突破包過濾防火牆的保護,比如大家知道的SYN攻擊、ICMP洪水攻擊,所以以Proxy 伺服器作為專門為使用者保密或者突破訪問限制的資料轉寄通道的應用代理防火牆出現了哈~其使用了一種應用協議分析的新技術。狀態檢測防火牆:其基於動態包過濾技術發展而來,加入了一種狀態檢測的模組,進一點發展了會話過濾功能,工作階段狀態的保留是有時間限制的,此防火牆還可以對包的內容進行分析,從而避免開放過多的連接埠。netfilter/iptables IP資料包過濾系統實際上由netfilter和iptables兩個組件構成。netfilter是整合在核心中的一部分,其作用是定義、儲存相應的規則,而iptables是一種工具,用來修改資訊的過濾規則及其他配置,我們可以通過iptables來設定一些適合我們企業需求環境的規則哈~,而這些規則會儲存在核心空間之中。netfilter是Linux核心中的一個通用架構,其提供了一系列的表(tables),每個表由若干個鏈(chains)組成,而每條鏈可以由一條或若干條規則(rules)組成。實際上netfilter是表的容器,表是鏈的容器,而鏈又是規則的容器。 filter表nat表 mangle表 iptables內建鏈 PREROUTING:路由表之前 INPUT:通過路由表後目的地為本機 FORWARDING:通過路由表後,目的地不為本機 OUTPUT:由本機產生,向外轉寄 POSTROUTIONG:路由之後 netfilter五條鏈相互關係,即iptables資料包轉寄流程圖  Iptables工作流程圖iptables擁有三個表和五條鏈組成  Iptables基本文法 iptables [-t 表名] -命令 -匹配 -j 動作/目標iptables內建了filter、nat和mangle三張表,我們可以使用-t參數來設定對哪張表生效哈~也可以省略-t參數,則預設對filter表進行操作。具體命令參數可以通過 man iptables查詢哈~  配置SNAT命令基本文法 iptables -t nat -A POSTROUTING -o 網路介面 -j SNAT --to-source IP地址 配置DNAT命令基本文法 iptables -t nat -A PREROUTING -i 網路介面 -p 協議 --dport 連接埠 -j DNAT --to-destination IP地址  。  (1)刪除策略 iptables -F:清空所選鏈中的規則,如果沒有指定鏈則清空指定表中所有鏈的規則 iptables -X:清除預設表filter中使用者自定鏈中的規則 iptables -Z:清除預設表filter中使用者自定鏈中的規則 2、設定迴環地址有些服務的測試需要使用迴環地址,為了保證各個服務的正常工作,需要允許迴環地址的通訊,如果不設定迴環地址,有些服務不能啟動哈~。 iptables -A INPUT -i lo -j ACCEPT  3、串連狀態設定為了簡化防火牆的配置操作,並提高檢查的效率,需要添加串連狀態設定 iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 串連跟蹤存在四種資料包狀態 NEW:想要建立串連的資料包 INVALID:無效的資料包,例如損壞或者不完整的資料包 ESTABLISHED:已經建立串連的資料包 RELATED:與已經發送的資料包有關的資料包 4、設定80連接埠轉寄公司網站需要對外開放,所以我們需要開放80連接埠 iptables -A FORWARD -p tcp --dport 80 -j ACCEPT 5、DNS相關設定為了用戶端能夠正常使用網域名稱訪問互連網,我們還需要允許內網電腦與外部DNS伺服器的資料轉寄。開啟DNS使用UDP、TCP的53連接埠 iptables -A FORWARD -p tcp --dport 53 -j ACCEPT iptables -A FORWARD -p udp --dport 53 -j ACCEPT 6、允許訪問伺服器的SSH管理員會通過外網進行遠端管理,所以我們要開啟SSH使用的TCP協議22連接埠 iptables -A INPUT -p tcp --dport 22 -j ACCEPT 7、NAT連接埠映射設定由於區域網路的地址為私網地址,在公網上不合法哈~所以必須將私網地址轉為伺服器的外部地址進行地址映射哈~串連外網介面為ppp0 iptables -t nat -A POSTROUTING -o ppp0 -s 192.168.0.0/24 -j MASQUERADE MASQUERADE和SNAT作用一樣哈~相樣是提供源地址轉換的操作,但是MASQUERADE是針對外部介面為動態IP地址來設定滴,不需要使用--to-source指定轉換的IP地址。如果網路採用的是撥號方式接入互連網,而沒有對外的靜態IP地址(主要用在動態擷取IP地址的串連,比如ADSL撥號、DHCP串連等等),那麼建議使用MASQUERADE哈~ 注意:MASQUERADE是特殊的過濾規則,其只可以映射從一個介面到另一個介面的資料哈~ 8、內網機器對外發布WEB網站內網WEB伺服器IP地址為192.168.0.3,我們需要進行如下配置哈~,當公網Client Access Server時,防火牆將請求映射到內網的192.168.0.3的80連接埠 iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 80 -j DNAT --to-destination 192.168.0.3:80 9、儲存與恢複iptables配置 儲存:iptables-save iptables-save [-c] [-t 表名]-c:儲存包和位元組計數器的值。可以使在重啟防火牆後不丟失對包和位元組的統計-t:用來儲存哪張表的規則,如果不跟-t參數則儲存所有的表可以使用重新導向命令來儲存這些規則集 iptables-save > /etc/iptables-save 恢複:iptables-restore iptables-restore [-c] [-n]-c:如果加上-c參數則表示要求裝入包和位元組計數器-n:表示不覆蓋己有的表或表內的規則,預設情況下是清除所有己存在的規則使用重新導向來恢複由iptables-save儲存的規則集 iptables-restore > /etc/iptables-save 如果要在服務或系統重啟後依然生效 service iptables save    

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.