阅读量:3
CentOS Stream 8防火墙规则设置指南(基于firewalld)
CentOS Stream 8默认使用firewalld作为防火墙管理工具,它支持动态更新规则且无需重启服务,核心功能包括区域管理、端口/服务控制、富规则等。以下是具体操作步骤:
1. 安装与启动firewalld
若未安装firewalld,可通过以下命令安装:
sudo dnf install firewalld
安装完成后,启动服务并设置开机自启:
sudo systemctl start firewalld # 启动firewalld
sudo systemctl enable firewalld # 设置开机自动启动
2. 检查防火墙状态
- 查看firewalld运行状态(确认是否为
active (running)):sudo systemctl status firewalld - 查看当前防火墙整体状态(是否启用):
sudo firewall-cmd --state
3. 管理区域(Zone)
区域是firewalld的核心概念,用于定义不同网络环境的安全级别(如public、private、trusted)。常用操作:
- 查看默认区域:
sudo firewall-cmd --get-default-zone - 设置默认区域(如将默认区域改为
public):sudo firewall-cmd --set-default-zone=public - 查看活动区域及绑定的接口:
sudo firewall-cmd --get-active-zones # 查看活动区域 sudo firewall-cmd --get-zone-of-interface=eth0 # 查看指定接口(如eth0)所属区域 - 将接口绑定到指定区域(如将
eth0绑定到public区域):sudo firewall-cmd --zone=public --change-interface=eth0 --permanent sudo firewall-cmd --reload
4. 配置端口与服务规则
4.1 管理端口
- 查看所有开放的端口:
sudo firewall-cmd --zone=public --list-ports - 临时开放端口(如
8080/tcp,立即生效但重启后失效):sudo firewall-cmd --add-port=8080/tcp - 永久开放端口(需重载配置):
sudo firewall-cmd --permanent --add-port=8080/tcp sudo firewall-cmd --reload - 删除端口规则(如关闭
8080/tcp):sudo firewall-cmd --permanent --remove-port=8080/tcp sudo firewall-cmd --reload
4.2 管理服务
firewalld预定义了常见服务(如http、ssh、mysql)的规则,可直接通过服务名管理:
- 查看允许的服务列表:
sudo firewall-cmd --list-services - 临时允许服务(如
http):sudo firewall-cmd --add-service=http - 永久允许服务:
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --reload - 移除服务规则:
sudo firewall-cmd --remove-service=http
5. 配置富规则(Rich Rules)
富规则用于更精细的访问控制(如允许/拒绝特定IP、端口或协议),语法更灵活。常用场景:
- 允许特定IP访问某端口(如允许
192.168.1.100访问3306/tcp):sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="3306" protocol="tcp" accept' sudo firewall-cmd --reload - 拒绝特定IP访问所有端口(如拒绝
192.168.1.200):sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.200" reject' sudo firewall-cmd --reload - 允许某网段访问某服务(如允许
192.168.1.0/24访问ssh):sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" service name="ssh" accept' sudo firewall-cmd --reload
6. 其他实用操作
- 查看所有防火墙规则(包括端口、服务、富规则):
sudo firewall-cmd --list-all - 重载防火墙配置(使永久规则生效,不中断现有连接):
sudo firewall-cmd --reload - 完全重载配置(中断现有连接,慎用):
sudo firewall-cmd --complete-reload - 关闭防火墙(临时禁用,生产环境不建议):
sudo systemctl stop firewalld
注意事项
- 备份规则:修改前可通过
sudo firewall-cmd --list-all > firewall-backup.txt备份当前配置。 - 测试规则:生产环境应用前,建议在测试环境验证规则是否生效。
- 安全性:仅开放必要端口,避免过度开放导致安全风险。
以上步骤覆盖了CentOS Stream 8防火墙的核心配置需求,可根据实际场景调整规则。
以上就是关于“stream8如何设置防火墙规则”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm