端口无法访问的常见原因
- 安全组未开放目标端口
- 服务器防火墙拦截端口访问
- 未在服务器启动端口监听服务
- 网络ACL或路由配置错误
安全组规则配置步骤
- 登录ECS控制台选择目标实例的安全组
- 在入方向添加新规则:
- 授权策略:允许
- 协议类型:TCP/UDP
- 端口范围:单端口(如80/80)或范围(80/90)
- 授权对象:0.0.0.0/0(开放全网)或指定IP段
- 规则生效后需等待2-5分钟
端口 | 协议 | 授权对象 |
---|---|---|
80/80 | TCP | 0.0.0.0/0 |
443/443 | TCP | 192.168.1.0/24 |
问题排查流程
推荐按照以下顺序进行诊断:
- 验证安全组规则是否生效:使用其他协议端口测试
- 检查服务器防火墙状态:
firewall-cmd --list-ports
- 确认服务进程监听端口:
netstat -tlnp
- 测试本地网络策略:临时关闭防火墙验证
配置中的常见错误
- 安全组规则方向错误(需配置入方向)
- 忘记关联安全组到ECS实例
- 防火墙未重载配置:
firewall-cmd --reload
- 端口范围格式错误(正确示例:80/80)
通过合理配置安全组规则、同步管理服务器防火墙、确保服务进程正常监听,可解决90%的端口访问问题。建议生产环境采用最小开放原则,避免直接关闭防火墙。