端口防火墙拦截SSL握手失败排查

当你的网站从HTTP切换到HTTPS后,浏览器出现 ERR_SSL_PROTOCOL_ERRORSSL握手失败,一大半原因都出在 443端口被防火墙拦截 上。
别慌,这篇文章会带着你从服务器环境开始,一步步排查到底是哪里挡住了443端口,再给出针对性的解决动作。

一、先确认443端口是否真的被拦截

不要急着改配置,先执行一条命令,看看端口状态。

在服务器终端(SSH)输入:

curl -I https://你的域名 --connect-timeout 10

如果返回 curl: (7) Failed to connect to 你的域名 port 443: Connection refused 或超时,说明443端口确实被拦截了。
如果你用的是宝塔面板,可以登录面板后台,在左侧菜单点击 安全,查看 端口规则 列表里443端口是否存在且状态为“放行”。

二、针对不同环境的端口放行操作

确认端口被拦截后,根据你的服务器环境选择对应的操作。

1. Linux 系统自带防火墙(firewalld / iptables)

如果你用的是CentOS 7以上,默认用firewalld,执行:

firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

看到 443/tcp 输出,说明放行成功。
如果是Ubuntu或Debian,先检查是否装了 ufw

ufw allow 443/tcp
ufw status

确保状态为 Status: active,且443端口规则状态为 ALLOW

2. 宝塔面板安全模块

在宝塔后台,点击左侧 安全端口管理添加端口规则,输入 443,协议选 TCP,策略选 允许
添加完成后,点击 防火墙 旁边的 重启防火墙 使其生效。

3. 云服务器安全组(阿里云、腾讯云、华为云等)

这是新手最容易忽略的地方。
登录云服务商控制台,找到你的实例,进入 安全组防火墙 配置,添加入方向规则:

  • 协议类型:TCP
  • 端口范围:443/443
  • 授权对象:0.0.0.0/0(表示所有IP都可以访问,如果你只想让特定IP访问,可以改成你的固定IP)

保存后,等待几分钟规则生效。

三、避开这三个常见坑

  1. SELinux没关闭或没加规则:如果你用的是CentOS且开启了SELinux,执行 getenforce 如果返回 Enforcing,可用 setenforce 0 临时关闭测试。确认问题后建议永久关闭或为httpd添加SELinux端口规则。
  2. 443端口已被其他进程占用:输入 lsof -i :443 查看443端口被谁占用。如果Nginx或Apache都没启动,却占用了,可能是上次服务的残留,用 kill -9 PID 杀掉进程再重启服务。
  3. 只放行了IPv4却忘了IPv6:部分云服务器安全组和本地防火墙需要同时放行TCP6 443端口,否则通过IPv6访问时依旧会握手失败。

四、验证SSL握手是否正常

放行端口后,再次用 curl -I https://你的域名 测试,如果返回HTTP头部信息(如 HTTP/2 200)就说明443端口通了。
还可以用在线SSL检测工具(如“SSL Labs”)检查证书链和握手过程。

如果你已经完成以上所有步骤,但SSL握手依然失败,请回头检查 Nginx/Apache 配置文件中的 listen 443 ssl; 是否确实绑定了正确证书,或者域名DNS解析是否指向了服务器IP。
大多数情况下,端口放行动作一旦做对,SSL握手问题就迎刃而解了。

分享到:
上一篇
SSL证书链不完整导致HTTPS报错修复
下一篇
多层反向代理造成TLS协议降级根治方案
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意