文章插圖

文章插圖
使用過Linux系統的人對iptables一定不陌生,它是Linux從2.4.x版本內核開始,系統自帶的防火墻 。如今Linux內核已經更新至5.11.x版本,Linux的防火墻在iptables基礎上泛生出UFW和Firewalld,并且在一些發行版中已經替代iptables 。
Netfilter/Iptables
Netfilter/Iptables 是Linux系統自帶的防火墻,Iptables管理規則,Netfilter是規則的執行者,它們一起組成Linux下包過濾防火墻 。
iptables內置4個表,即filter表、nat表、mangle表和raw表,分別用于實現包過濾,網絡地址轉換、包重構(修改)和數據跟蹤處理 。每個表都會有相應的鏈 。下圖是iptables中的四表五鏈:
關于iptables的原理這篇文章講得很清楚:https://blog.csdn.net/tennysonsky/article/details/44596515在Linux中,可以使用如下命令啟用或關閉iptables
// 啟動iptablessystemctl start iptables// 停止iptablessystemctl stop iptables以下是常用命令:// 列出 INPUT 表中規則iptables -L INPUT// 允許3306端口TCP協議訪問iptables -I INPUT -p tcp --dport 3306 -j ACCEPT// 允許IP為xxx.xxx.xxx.xxx通過udp訪問本地500端口iptables -I INPUT -p udp --dport 500 -s xxx.xxx.xxx.xxx -j ACCEPT// -I參數是將規則插入表開頭,-A是把規則添加到表未尾,優先級最低,可做為默認規則// 當不符合前面規則后拒絕所有請求iptables -A INPUT -p tcp -j REJECT// 刪除INPUT表中第1條規則iptables -D INPUT 1// 清空規則列表iptables -Fiptables還能做基于內核的包轉發 。關于iptables用法網上文章太多了,就不多寫 。需要注意的是,iptables規則雖然能即時生效,但并未保存 。開機后會丟失 。
RedHat系執行保存:
service iptables saveDebian系執行 iptables-save 列出所有規則,輸出到文件中保存 。系統啟動時用 iptables-restore 恢復 。// 保存iptables-save > /etc/iptables.conf// 恢復iptables-restore < /etc/iptables.confUFW 和 Firewalldiptables很強大也很復雜,于是便有UFW和Firewalld 。它們的命令簡單清晰很多,底層都是調用iptables 。
UFW
UFW是Ubuntu下防火墻:
// 啟動ufwsystemctl start ufw// 停用ufwsystemctl stop ufw以下是常用命令:// 查詢ufw開啟狀態,打印規則ufw status// 允許80端口訪問ufw allow 80// 拒絕8000端口訪問ufw deny 9000// 拒絕ip為xxx.xxx.xxx.xxx訪問ufw deny from xxx.xxx.xxx.xxx// 允許通過tcp協議,9000-9002訪問ufw allow 9000:9002/tcp// 刪除規則ufw delete allow httpFirewalldFirewalld是Fedora/CentOS 8之后版本自帶的防火墻:
// 啟動firewalldsystemctl start firewalld// 停用firewalldsystemctl stop firewalld以下是常用命令:// 允許tcp協議8161端口訪問,--zone(作用域),--permanent(永久生效)firewall-cmd --zone=public --add-port=8161/tcp --permanent// 重新加載規則firewall-cmd --reload// 將80端口的流量轉發至8080firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080// 將80端口的流量轉發至192.168.0.1firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.1.0.1// 將80端口的流量轉發至192.168.0.1的8080端口firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080【debian 防火墻iptables關閉 linux關閉防火墻命令iptables】Firewalld也有圖形界面:- redhat5關閉防火墻命令 redhat7.3關閉防火墻命令
- ddos防護系統軟件 ddos硬件防火墻
- debian安裝教程雙系統 debian安裝教程服務器
- windows防火墻設置端口 ip windows防火墻設置端口 作用域
- ubuntu防火墻設置禁用端口 Ubuntu設置防火墻
- 怎樣給電腦設置防火墻 怎么給電腦設防火墻
- 防火墻端口怎么開放 防火墻怎么開啟端口
- linux查看防火墻是否開啟某端口 Linux如何查看防火墻是否開啟
- 無法連接adobe服務器請檢查防火墻設置 卸載ps顯示無法連接adobe服務器
- 風云防火墻官方網址 防火墻哪個好用
