如何在Caddy中配置防火墙端口?
美国、香港服务器
如何在Caddy中配置防火墙端口?
06-18 来源:
一、先确认防火墙状态
bash
运行
# 查看防火墙是否运行
systemctl status firewalld
# 没启动就开启+开机自启
systemctl enable --now firewalld
二、放行 Caddy 必需的 80、443 端口(两种写法任选其一)
方式 1:按服务放行(推荐,简洁好维护)
bash
运行
# 永久放行 http(80)、https(443)
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
# 重载防火墙规则生效
firewall-cmd --reload
方式 2:直接放行端口
bash
运行
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
三、验证端口是否放行成功
bash
运行
# 查看已放行服务
firewall-cmd --list-services
# 查看已放行端口
firewall-cmd --list-ports
输出出现 http https 或者 80/tcp 443/tcp 即放行成功。
四、如果 Caddy 监听自定义端口(比如 8080、8443)
bash
运行
# 放行自定义端口
firewall-cmd --permanent --add-port=8080/tcp
firewall-cmd --permanent --add-port=8443/tcp
firewall-cmd --reload
五、SELinux 必须配置(否则反向代理 502 错误)
bash
运行
# 允许Caddy访问本机其他端口(API中转必备)
setsebool -P httpd_can_network_connect on
六、常用防火墙运维命令
bash
运行
# 查看当前所有规则
firewall-cmd --list-all
# 关闭某个端口永久放行(示例关闭80)
firewall-cmd --permanent --remove-port=80/tcp
firewall-cmd --reload
# 只允许指定公网IP访问80/443(安全加固防CC)
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="你的公网IP/32" service name=http accept"
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="你的公网IP/32" service name=https accept"
firewall-cmd --reload
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快