OpenCloudOS 8.6 防火墙?

OpenCloudOS 8.6 是基于 Linux 的开源服务器操作系统,其防火墙机制与主流的 RHEL/CentOS/Rocky Linux 等系统类似,主要使用 firewalld 作为默认的动态防火墙管理工具。以下是关于 OpenCloudOS 8.6 防火墙的详细介绍和常用操作:


🔧 1. 默认防火墙服务:firewalld

  • 服务名称firewalld
  • 配置工具firewall-cmd(命令行)、firewall-config(图形界面,可选)
  • 区域(Zones):支持多种网络区域(如 public、internal、trusted 等),用于灵活控制不同网络接口的安全策略。

✅ 常用防火墙操作命令

🔹 启动、停止、重启 firewalld

# 启动防火墙
sudo systemctl start firewalld

# 设置开机自启
sudo systemctl enable firewalld

# 停止防火墙
sudo systemctl stop firewalld

# 禁用开机启动
sudo systemctl disable firewalld

# 查看状态
sudo systemctl status firewalld

🔹 查看当前防火墙状态和规则

# 查看运行状态
sudo firewall-cmd --state

# 查看当前活动区域
sudo firewall-cmd --get-active-zones

# 查看默认区域
sudo firewall-cmd --get-default-zone

# 列出当前区域的规则(临时+永久)
sudo firewall-cmd --list-all

🔹 开放端口或服务

# 临时开放端口(重启后失效)
sudo firewall-cmd --add-port=80/tcp

# 永久开放端口(推荐)
sudo firewall-cmd --add-port=80/tcp --permanent

# 开放某个服务(如 http、https)
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent

# 重新加载配置使永久规则生效
sudo firewall-cmd --reload

⚠️ 注意:添加 --permanent 参数后必须执行 --reload 才能生效。


🔹 删除规则

# 删除已开放的端口
sudo firewall-cmd --remove-port=80/tcp --permanent

# 删除服务
sudo firewall-cmd --remove-service=http --permanent

# 重新加载
sudo firewall-cmd --reload

🔹 更改默认区域

# 设置默认区域为 public
sudo firewall-cmd --set-default-zone=public

# 将某个网卡绑定到指定区域
sudo firewall-cmd --zone=dmz --change-interface=eth0 --permanent

🛑 替代方案:iptables(传统方式)

虽然 firewalld 是默认工具,但你也可以切换回传统的 iptables

# 停止并禁用 firewalld
sudo systemctl stop firewalld
sudo systemctl disable firewalld

# 安装 iptables-services
sudo dnf install iptables-services -y

# 启动并启用 iptables
sudo systemctl start iptables
sudo systemctl enable iptables

然后使用 iptables 命令进行规则配置。


🔐 安全建议

  1. 生产环境不要关闭防火墙,应通过规则精细控制访问。
  2. 开放端口时尽量限制 IP 范围(使用 rich rules):
    sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.1.100' port protocol='tcp' port='22' accept"
  3. 定期检查开放的端口和服务:
    sudo firewall-cmd --list-all
    ss -tuln | grep LISTEN

📚 参考文档

  • OpenCloudOS 官方文档:https://opencloudos.org
  • firewalld 官方手册:man firewalld, man firewall-cmd

如果你有具体需求(例如开放 Nginx/MySQL 端口、配置 NAT、多区域管理等),可以告诉我,我可以提供详细配置示例。