centos

centos镜像如何设置防火墙

小樊
39
2025-08-23 00:17:56
栏目: 智能运维

在CentOS系统中设置防火墙通常涉及使用firewalld服务,这是一个动态管理防火墙的工具,支持IPv4和IPv6防火墙设置,以及以太网桥接。以下是一些基本的步骤来设置CentOS的防火墙:

  1. 启动firewalld服务: 如果firewalld没有运行,你可以使用以下命令启动它:

    sudo systemctl start firewalld
    
  2. 设置firewalld开机自启: 如果你希望firewalld在系统启动时自动运行,可以使用以下命令:

    sudo systemctl enable firewalld
    
  3. 检查firewalld状态: 要检查firewalld服务的状态,可以使用以下命令:

    sudo systemctl status firewalld
    
  4. 配置防火墙: 使用firewall-cmd命令来添加、删除或重新加载防火墙规则。

    • 开放端口: 例如,要开放TCP端口80(HTTP),可以使用以下命令:

      sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
      

      --permanent参数表示设置永久规则,即使重启后也会保留。--zone=public指定默认区域,--add-port=80/tcp是要添加的端口和服务。

    • 关闭端口: 要关闭之前开放的端口,可以使用以下命令:

      sudo firewall-cmd --permanent --zone=public --remove-port=80/tcp
      
    • 重新加载防火墙配置: 添加或删除规则后,需要重新加载防火墙配置以使更改生效:

      sudo firewall-cmd --reload
      
    • 查看开放端口: 要查看当前开放的端口,可以使用以下命令:

      sudo firewall-cmd --list-all
      
  5. 配置服务: 除了开放特定端口,你还可以直接开放服务。例如,要开放SSH服务,可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --add-service=ssh
    sudo firewall-cmd --reload
    
  6. 配置ICMP规则: 如果你需要允许或拒绝ICMP请求(例如ping请求),可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --add-icmp-block=echo-request
    sudo firewall-cmd --reload
    
  7. 配置富规则(Rich Rules): 如果你需要更复杂的规则,可以使用富规则。例如,只允许特定IP访问SSH服务:

    sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'
    sudo firewall-cmd --reload
    

请注意,根据你的CentOS版本和防火墙配置,上述命令可能需要适当的调整。始终确保你了解所做的更改,并在生产环境中谨慎操作。如果你不熟悉这些命令,建议先在测试环境中练习。

0
看了该问题的人还看了