centos

CentOS防火墙配置怎样做

小樊
45
2025-04-22 22:11:06
栏目: 智能运维

在CentOS系统中,配置防火墙通常使用的是firewalld服务。firewalld是一个动态管理防火墙的服务,它允许你定义网络服务、端口和IP地址等规则,并且可以在运行时重新加载这些规则而不需要重启服务。以下是一些基本的firewalld配置步骤:

  1. 检查firewalld状态: 首先,确保firewalld服务已经安装并且正在运行。

    sudo systemctl status firewalld
    

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

    sudo systemctl start firewalld
    
  2. 设置默认区域firewalld有多个预定义的区域,例如trustedhomeinternalworkpublic。每个区域有不同的信任级别和默认规则。

    sudo firewall-cmd --get-default-zone
    sudo firewall-cmd --set-default-zone=public
    
  3. 添加服务到防火墙: 你可以添加服务(如HTTP、HTTPS、SSH等)到当前的防火墙区域。

    sudo firewall-cmd --permanent --zone=public --add-service=http
    sudo firewall-cmd --permanent --zone=public --add-service=https
    sudo firewall-cmd --permanent --zone=public --add-service=ssh
    
  4. 重新加载防火墙规则: 添加或修改服务后,需要重新加载防火墙规则以使更改生效。

    sudo firewall-cmd --reload
    
  5. 开放特定端口: 如果你需要开放特定的端口,可以使用以下命令:

    sudo firewall-cmd --permanent --zone=public --add-port=8080/tcp
    sudo firewall-cmd --reload
    
  6. 允许特定IP地址或范围: 你可以允许特定的IP地址或IP地址范围访问你的服务器。

    sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
    sudo firewall-cmd --reload
    
  7. 查看当前防火墙状态和规则: 你可以查看当前的防火墙状态和规则,以确保配置正确。

    sudo firewall-cmd --list-all
    sudo firewall-cmd --list-services
    sudo firewall-cmd --list-ports
    
  8. 停止或禁用firewalld服务: 如果你不再需要firewalld服务,可以停止并禁用它。

    sudo systemctl stop firewalld
    sudo systemctl disable firewalld
    

请注意,配置防火墙时要非常小心,确保不要错误地阻止了自己或其他用户的访问。在生产环境中,建议在更改防火墙规则之前进行充分的测试。

0
看了该问题的人还看了