CentOS7 firewall防火牆常用操作

  • 2019 年 12 月 29 日
  • 筆記

記錄一些常用的firewall操作。

介紹

firewalld: 動態防火牆後台程式 firewall-config: 圖形化的配置工具 firewall-cmd: 命令行客戶端

日常使用中,常用firewall-cmd來進行配置

使用

1. firewalld

// 安裝服務  # yum install firewalld -y    // 查看當前防火牆狀態  # systemctl status firewalld    // 啟用  # systemctl start firewalld    // 關閉  # systemctl stop firewalld    // 開機自啟  # systemctl enable firewalld    // 關閉開機自啟  # systemctl disable firewalld

2. permanent

需要注意的是,如果要使更改永久生效,需要加上--permanent。這裡的永久生效是有一定的條件的,在命令執行完成後,需要執行防火牆重載或系統重啟。若沒有加該參數,是立即生效的,但在防火牆重載或系統重啟後即失效。

// 重載配置  # firewall-cmd --reload

3. 查看配置

// 當前運行狀態  $ firewall-cmd --state    // 當前活動的網路區(zone)  $ firewall-cmd --get-active-zones    // 查看指定zone的當前所有設置資訊  $ firewall-cmd --zone=public --list-all

4. 設置

// 設置默認zone (立即生效 無需重載)  # firewall-cmd --set-default-zone=public    // 添加介面到網路區  # firewall-cmd --zone=public --add-interface=eth0 --permanent

5. 增加開放埠/服務

// 打開TCP 80埠 (需重載 永久生效)  # firewall-cmd --zone=public --add-port=80/tcp --permanent    // 打開UDP 5000-5005埠 (立即生效)  # firewall-cmd --zone=public --add-port=5000-5005/udp    // SMTP服務加入 (需重載 永久生效)  # firewall-cmd --zone=public --add-service=smtp --permanent

6. 關閉開放的埠/服務

// 關閉已開放的80埠  # firewall-cmd --zone=public --remove-port=80/tcp --permanent    // 關閉已開放的5000-5005埠  # firewall-cmd --zone=public --remove-port=5000-5005/udp    // 移除SMTP服務  # firewall-cmd --zone=public --remove-service=smtp --permanent

參考

  1. https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/security_guide/sec-using_firewalls
  2. https://havee.me/linux/2015-01/using-firewalls-on-centos-7.html