centos

centos防火墙规则持久化方法

小樊
47
2025-05-18 23:09:49
栏目: 智能运维

CentOS 防火墙(firewalld)规则的持久化可以通过以下几种方法实现:

方法一:使用 firewall-cmd 命令

  1. 添加永久规则: 使用 firewall-cmd 命令添加规则时,可以加上 --permanent 参数,这样规则会被保存到配置文件中。

    firewall-cmd --permanent --zone=public --add-port=80/tcp
    
  2. 重新加载防火墙配置: 添加或修改规则后,需要重新加载防火墙配置以使更改生效。

    firewall-cmd --reload
    

方法二:手动编辑配置文件

  1. 找到配置文件: firewalld 的配置文件通常位于 /etc/firewalld/ 目录下,主要包括 firewall.conf 和各个区域的配置文件(如 zones/public.xml)。

  2. 编辑配置文件: 打开相应的区域配置文件,添加或修改规则。例如,编辑 public.xml 文件:

    sudo vi /etc/firewalld/zones/public.xml
    

    <zone> 标签内添加规则:

    <port protocol="tcp" port="80"/>
    
  3. 重新加载防火墙配置: 编辑完成后,重新加载防火墙配置。

    firewall-cmd --reload
    

方法三:使用 firewall-config 图形界面工具

  1. 安装 firewall-config: 如果尚未安装,可以使用以下命令安装:

    sudo yum install firewalld-config
    
  2. 启动图形界面工具: 使用以下命令启动 firewall-config

    sudo firewall-config
    
  3. 添加或修改规则: 在图形界面中添加或修改规则,然后保存并退出。

  4. 重新加载防火墙配置: 图形界面工具通常会自动重新加载配置,如果没有,可以手动执行:

    firewall-cmd --reload
    

方法四:使用 iptablesiptables-persistent

如果你更喜欢使用 iptables,可以结合 iptables-persistent 来实现规则的持久化。

  1. 安装 iptables-persistent

    sudo yum install iptables-persistent
    
  2. 保存当前的 iptables 规则

    sudo netfilter-persistent save
    
  3. 查看保存的规则

    sudo netfilter-persistent status
    

通过以上方法,你可以确保 CentOS 防火墙规则在系统重启后仍然有效。选择适合你的方法进行操作即可。

0
看了该问题的人还看了