firewalld命令記錄

0、 引言

今天配置服務器的ftp,被這個防火牆命令困擾半天,想不起來,特此整理下。
centos7 默認的防火牆是 firewall,替代了以前的 iptables。
參考資料 : https://blog.csdn.net/wangmx1993328/article/details/80738012

1、安裝

  • 查看版本
firewall-cmd --version

有些服務器已經自帶了 firewall ,但是查看版本沒有找到,也可以直接通過yum安裝。

  • 安裝
yum -y install firewalld

2、服務管理

和其他服務一樣,通過systemctl 管理。

systemctl status firewalld		//查看防火牆狀態
systemctl stop firewalld		//關閉防火牆	
systemctl start firewalld		//開啓防火牆
systemctl restart firewalld		//重啓防火牆	
systemctl is-enabled firewalld	//查看 firewall 服務是否開機啓動	
systemctl enable firewalld		//開機時自動啓動
systemctl disable firewalld		//開機時自動禁用

3、防火牆管理

3.1 firewall-cmd 命令

  • 查看狀態
firewall-cmd --state
  • 查看打開的所有端口
firewall-cmd --zone=public --list-ports
  • 開啓指定端口
    –permanent 永久開放
firewall-cmd --zone=public --add-port=80/tcp --permanent	//永久開放80端口
firewall-cmd --zone=public --add-port=3000-4000/tcp --permanent	//永久開放3000到4000端口
  • 關閉指定端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
  • 重新加載
    對端口的所有修改,必須重新加載才能生效
firewall-cmd --reload

3.2 public.xml 文件

firewall-cmd對端口的操作,如開放端口等信息,都在 public.xml 文件中
文件目錄 /etc/firewalld/zones/public.xml

vim /etc/firewalld/zones/public.xml

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
  <service name="ssh"/>
  <service name="dhcpv6-client"/>
  <port protocol="tcp" port="21"/>
  <port protocol="tcp" port="4500-5000"/>
</zone>

修改後 :wq
firewall-cmd --reload

4、相關問題

  • 如果你的服務器是在阿里雲,就需要去阿里雲配置安全組,只開啓防火牆,或者 只開啓安全策略,是不生效的。
  • 修改安全策略,不需要重啓服務器
  • 修改防火牆配置,必須重啓防火牆

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章