centos

CentOS服务器如何配置防火墙

小樊
41
2025-08-10 17:06:33
栏目: 云计算

在CentOS服务器上配置防火墙通常涉及使用firewalld服务,这是一个动态管理防火墙的工具,它允许你定义网络区域、接口、服务和端口等。以下是配置CentOS服务器防火墙的基本步骤:

  1. 检查firewalld状态: 首先,检查firewalld服务是否已经安装并运行。

    sudo systemctl status firewalld
    

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

    sudo systemctl start firewalld
    
  2. 设置防火墙开机自启: 如果希望服务器重启后防火墙服务自动启动,可以使用以下命令:

    sudo systemctl enable firewalld
    
  3. 查看当前防火墙配置: 使用以下命令查看当前的防火墙配置:

    sudo firewall-cmd --list-all
    
  4. 开放端口: 如果需要开放某个端口,比如开放TCP端口80(HTTP),可以使用以下命令:

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

    --permanent参数表示永久生效,即使重启防火墙服务也不会丢失配置。 --zone=public表示在公共区域添加规则,根据需要可以选择其他区域。 --add-port=80/tcp表示添加一个TCP端口80的规则。

  5. 重新加载防火墙配置: 添加或修改规则后,需要重新加载防火墙配置使规则生效:

    sudo firewall-cmd --reload
    
  6. 关闭端口: 如果需要关闭之前开放的端口,可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --remove-port=80/tcp
    sudo firewall-cmd --reload
    
  7. 查看开放的服务: 查看当前开放的服务:

    sudo firewall-cmd --list-services
    
  8. 添加服务: 如果需要开放某个服务,比如SSH,可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --add-service=ssh
    sudo firewall-cmd --reload
    
  9. 删除服务: 如果需要删除某个服务,可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --remove-service=ssh
    sudo firewall-cmd --reload
    
  10. 配置富规则(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版本和防火墙的配置,上述命令可能会有所不同。如果你使用的是CentOS 7之前的版本,可能需要使用iptables而不是firewalld来配置防火墙。

0
看了该问题的人还看了