网络知识
centos虚拟机防火墙设置指南
2025-07-20 08:54  点击:0

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

安装firewalld

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

sudo yum install firewalld
启动和启用firewalld服务

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

sudo systemctl start firewalldsudo 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虚拟机中配置基本的防火墙规则,以保护系统免受未经授权的访问。根据实际需求,你可以进一步调整和优化这些规则。