最标准安全的做法是启用预定义http服务而非直接开80端口;需确认firewalld运行、执行--permanent--add-service=http并--reload;HTTPS需单独添加https服务。

在 Firewalld 中放行 HTTP 服务,最标准、最安全的做法是启用预定义的 http 服务,而不是直接开放 80 端口。它会自动关联 TCP 协议、端口 80,并包含必要的连接跟踪规则。
确认 firewalld 正在运行
执行以下命令检查防火墙服务状态:
sudo systemctl status firewalld
若显示 active (running),说明已启用;若为 inactive,则需先启动并设为开机自启:
Linux 安全审计工具,检查 SSH 配置、开放/监听端口、防火墙规则(ufw/iptables/nftables)、失败登录尝试、sudoers 权限...
- sudo systemctl start firewalld
- sudo systemctl enable firewalld
永久放行 http 服务
使用服务名方式,语义清晰且不易出错:
- sudo firewall-cmd --permanent --add-service=http
- sudo firewall-cmd --reload(必须执行,否则配置不生效)
验证是否成功
运行以下任一命令确认规则已加载:
- firewall-cmd --list-services —— 输出中应包含 http
- firewall-cmd --list-all —— 在 services: 行下查看是否列出 http
如需同时支持 HTTPS,一并放行
HTTPS 是独立服务,需额外添加:
- sudo firewall-cmd --permanent --add-service=https
- sudo firewall-cmd --reload
之后 firewall-cmd --list-services 应同时显示 http 和 https。

















