新裝LInux系統初始化iptables服務


在紅帽RHEL7系統中firewalld服務取代了iptables服務,但依然可以使用iptables命令來管理內核的netfilter。

iptables命令中則常見的控制類型有:

  1. ACCEPT:允許通過.
  2. LOG:記錄日志信息,然后傳給下一條規則繼續匹配.
  3. REJECT:拒絕通過,必要時會給出提示
  4. DROP:直接丟棄,不給出任何回應.

規則鏈則依據處理數據包的位置不同而進行分類:

  PREROUTING:在進行路由選擇前處理數據包

  INPUT:處理入站的數據包

  OUTPUT:處理出站的數據包

  FORWARD:處理轉發的數據包

  POSTROUTING:在進行路由選擇后處理數據包

Iptables中的規則表:

      規則表的先后順序:raw→mangle→nat→filter

規則鏈的先后順序:

入站順序:PREROUTING→INPUT

出站順序:OUTPUT→POSTROUTING

轉發順序:PREROUTING→FORWARD→POSTROUTING

 iptables的基本參數:

參數 作用
-P 設置默認策略:iptables -P INPUT (DROP|ACCEPT)
-F 清空規則鏈
-L 查看規則鏈
-A 在規則鏈的末尾加入新規則
-I num 在規則鏈的頭部加入新規則
-D num 刪除某一條規則
-s 匹配來源地址IP/MASK,加嘆號"!"表示除這個IP外。
-d 匹配目標地址
-i 網卡名稱 匹配從這塊網卡流入的數據
-o 網卡名稱 匹配從這塊網卡流出的數據
-p 匹配協議,如tcp,udp,icmp
--dport num 匹配目標端口號
--sport num 匹配來源端口號

 實例:iptables的filter的配置:

--關閉firewall:

[root@localhost ~]# systemctl stop firewalld.service            #停止firewall
[root@localhost ~]# systemctl disable firewalld.service        #禁止firewall開機啟動

--安裝安裝iptables防火牆

[root@localhost ~]# yum install iptables-services            #安裝

--清空已有的規則

iptables -F
iptables -X
iptables -Z

--配置允許SSH登陸端口進入

iptables -A INPUT -p tcp -s 192.168.0.0/24 -j ACCEPT

--允許所有的ping操作

iptables -A INPUT -p tcp -s 192.168.0.0/24 -j ACCEPT

--允許本機lo通信

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

--設置默認的訪問規則

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

--允許關聯��狀態包通過

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

--開放特定的端口,以80為例

iptables -A INPUT -p tcp --dport 80 -j ACCEP

 --保存配置

service iptables save

--重啟

systemctl restart iptables.service

--設置開機自啟動

 systemctl enable iptables.service 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM