您好,登錄后才能下訂單哦!
Linux系統中如何使用iptables工具管理防火墻,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
隨著企業中使用Linux系統的增加,保證Linux系統安全成為運維人員的必備技能之一。
Linux系統本身有很強大的防護措施:防火墻。那么如何管理防火墻就成為重中之重。
隨著CentOS 7、CentOS 8的出現,越來越多的人喜歡使用firewalld工具來管理防火墻。因為它不僅可以通過命令行設置,也可以通過圖形化設置。關于使用firewalld工具管理Linux防火墻,可參考保證Linux系統安全之使用firewalld工具管理防火墻
下面我們主要介紹iptables工具管理防火墻。
提到iptables,那么就不得不說一下四表五鏈、執行的動作。
四表分別是:
raw:高級功能,如:網址過濾;
mangle:數據包修改(QOS),用于實現服務質量;
net:地址轉換,用于網關路由器;
filter:包過濾,用于防火墻規則;
五鏈分別是:
INPUT鏈:處理輸入數據包;
OUTPUT鏈:處理輸出數據包;
PORWARD鏈:處理轉發數據包;
PREROUTING鏈:用于目標地址轉換(DNAT);
POSTOUTING鏈:用于源地址轉換(SNAT);
執行的動作分別是:
accept:接收數據包;
DROP:丟棄數據包;
REDIRECT:重定向、映射、透明代理;
SNAT:源地址轉換;
DNAT:目標地址轉換;
MASQUERADE:IP偽裝(NAT),用于ADSL;
LOG:日志記錄;
iptables命令常用的選項有:
-t<表>:指定要操縱的表;
-A:向規則鏈中添加條目;
-D:從規則鏈中刪除條目;
-i:向規則鏈中插入條目;
-R:替換規則鏈中的條目;
-L:顯示規則鏈中已有的條目;
-F:清楚規則鏈中已有的條目;
-Z:清空規則鏈中的數據包計算器和字節計數器;
-N:創建新的用戶自定義規則鏈;
-P:定義規則鏈中的默認目標;
-h:顯示幫助信息;
-p:指定要匹配的數據包協議類型;
-s:指定要匹配的數據包源ip地址;
-j<目標>:指定要跳轉的目標;
-i<網絡接口>:指定數據包進入本機的網絡接口;
-o<網絡接口>:指定數據包要離開本機所使用的網絡接口;
iptables命令選項輸入順序:
iptables -t 表名 <-A/I/D/R> 規則鏈名 [規則號] <-i/o 網卡名> -p 協議名 <-s 源IP/源子網> --sport 源端口 <-d 目標IP/目標子網> --dport 目標端口 -j 動作
iptables命令示例:
[root@localhost ~]#iptables -F // 清空所有的防火墻規則 [root@localhost ~]#iptables -F INPUT //清空指定鏈 INPUT 上面的所有規則 [root@localhost ~]#iptables -X // 刪除用戶自定義的空鏈 [root@localhost ~]#iptables -Z //清空計數 [root@localhost ~]#iptables -P INPUT DROP //配置默認的不讓進 [root@localhost ~]#iptables -P FORWARD DROP //默認的不允許轉發 [root@localhost ~]#iptables -P OUTPUT ACCEPT //默認的可以出去 將INPUT規則鏈設置為只允許指定網段的主機訪問本機的22端口,拒絕來自其他所有主機的流量: [root@localhost ~]# iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT [root@localhost ~]# iptables -A INPUT -p tcp --dport 22 -j REJECT [root@localhost ~]# iptables-save //保存配置 如果我只允許192.168.1.100和192.168.1.110 的PING命令,應該怎么添加 [root@localhost ~]# iptables -I INPUT -s 192.168.1.110 -p icmp -j ACCEPT [root@localhost ~]# iptables -I INPUT -s 192.168.1.100 -p icmp -j ACCEPT [root@localhost ~]# iptables -A INPUT -p icmp -j DROP 如果我只允許192.168.1.0/24網段的,但拒絕192.168.1.100和192.168.1.110 的PING命令,應該怎么添加 [root@localhost ~]# iptables -I INPUT -s 192.168.1.0/24 -p icmp -j ACCEPT [root@localhost ~]# iptables -I INPUT -s 192.168.1.100 -p icmp -j DROP [root@localhost ~]# iptables -I INPUT -s 192.168.1.110 -p icmp -j DROP 向INPUT規則鏈中添加拒絕所有人訪問本機12345端口的策略規則 [root@localhost ~]# iptables -I INPUT -p tcp --dport 12345 -j REJECT [root@localhost ~]# iptables -I INPUT -p UDP --dport 12345 -j REJECT 向INPUT規則鏈中添加拒絕所有主機訪問本機1000~1024端口的策略規則 [root@localhost ~]# iptables -A INPUT -p tcp --dport 1000:1024 -j REJECT [root@localhost ~]# iptables -A INPUT -p UDp --dport 1000:1024 -j REJECT
注意:iptables工具檢查策略時按照:從上到下,找到即停,如果沒有找到則執行默認的策略!所以在添加規則時,應注意策略的添加順序!
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。