温馨提示×

centos虚拟机防火墙设置指南

小樊
56
2025-07-18 15:42:30
栏目: 云计算

在CentOS虚拟机中设置防火墙可以通过使用firewalld工具来实现。以下是详细的步骤:

安装firewalld

如果你的CentOS系统还没有安装firewalld,可以使用以下命令进行安装:

sudo yum install firewalld

启动和启用firewalld服务

安装完成后,启动firewalld服务并设置为开机自启:

sudo systemctl start firewalld
sudo systemctl enable firewalld

查看firewalld状态

你可以使用以下命令查看firewalld服务的状态:

sudo systemctl status firewalld

配置firewalld

firewalld使用区域(zones)来组织规则。每个区域定义了一组规则,可以分配给不同的网络接口。

  • 列出所有可用区域

    sudo firewall-cmd --list-all-zones
    
  • 查看当前网络接口所在的区域

    sudo firewall-cmd --get-active-zones
    
  • 将接口分配到特定区域,例如,将eth0接口分配到public区域:

    sudo firewall-cmd --zone=public --change-interface=eth0
    
  • 添加和删除服务

    允许特定服务通过防火墙(例如,HTTP服务):

    sudo firewall-cmd --zone=public --add-service=http --permanent
    

    删除服务(例如,HTTP服务):

    sudo firewall-cmd --zone=public --remove-service=http --permanent
    

    切记更新后要重新加载防火墙配置,否则不生效:

    sudo firewall-cmd --reload
    
  • 添加和删除端口

    允许特定端口通过防火墙(例如,端口8080):

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

    删除端口规则(例如,端口8080):

    sudo firewall-cmd --zone=public --remove-port=8080/tcp --permanent
    

    切记更新后要重新加载防火墙配置,否则不生效:

    sudo firewall-cmd --reload
    
  • 设置默认区域

    sudo firewall-cmd --set-default-zone=public
    
  • 配置服务和端口的临时规则

    如果只需要临时添加规则而不修改永久配置,可以省略--permanent选项:

    临时允许HTTP服务:

    sudo firewall-cmd --zone=public --add-service=http
    

    临时允许端口8080:

    sudo firewall-cmd --zone=public --add-port=8080/tcp
    
  • 查看和修改现有规则

    查看已添加的服务:

    sudo firewall-cmd --zone=public --list-services
    

    查看已添加的端口:

    sudo firewall-cmd --zone=public --list-ports
    

    查看所有规则:

    sudo firewall-cmd --list-all
    

以上步骤可以帮助你在CentOS虚拟机中配置基本的防火墙规则,以保护系统免受未经授权的访问。根据实际需求,你可以进一步调整和优化这些规则。

0