
摘要: 云服务器让外网能访问,要配两样:一是有公网 IP(开通时分配或绑弹性公网 IP),二是在安全组放行服务端口。本文讲清公网 IP 怎么来、安全组规则怎么加、以及「程序没问题但外网访问不了」的排查方法。
「程序在服务器上跑得好好的,外网就是打不开」——这是云服务器新手最高频的困惑。答案几乎总是两件事之一:要么没有公网 IP(外网根本找不到你的服务器),要么安全组没放行端口(找到了也进不来)。这两道门缺一不可。这篇讲清公网 IP 和端口怎么配、以及出问题怎么一步步排查。
理解这两道门,99% 的访问问题就有头绪了:
门 | 作用 | 没配的后果 |
|---|---|---|
公网 IP | 外网定位你服务器的地址 | 外网完全找不到服务器 |
安全组放行端口 | 允许特定端口的外部访问 | 找到服务器但端口不通 |
内网 IP 只能云内部互通,外网访问必须有公网 IP;有了公网 IP,还得在安全组给服务端口开门。两道门都过了,外网才能访问你的服务。
公网 IP 是外网访问的前提。两种获得方式:
在 CVM 控制台的实例列表能看到实例的公网 IP。如果这一栏是空的,说明没分配公网 IP,外网自然访问不了,需要绑定 EIP。普通服务用开通时分配的公网 IP 即可;对 IP 稳定性有要求的(如绑了域名、给第三方加了白名单)用弹性公网 IP 更稳。
有了公网 IP,还要给端口开门。CVM 的安全组是实例级的虚拟防火墙,控制哪些端口能被外部访问。默认安全组通常只放行有限端口,你的服务端口大概率不在里面。
加一条入站规则放行你的端口:
0.0.0.0/0 表示允许所有 IP 访问(公开服务),或填指定 IP 段(限定访问来源更安全)。Web 服务通常还要放行 80(http)和 443(https)。规则保存即生效。这一步是外网访问最容易卡住的环节——程序和网络都没问题,就差安全组这道门没开。
两道门都配好后,验证一下。用 公网IP:端口 从外网访问(手机关掉 WiFi 用流量测,确保是真外网),或用在线端口检测工具测端口是否开放。能访问就说明配置成功。
如果还不通,按下面的顺序排查,别瞎试。
这是最实用的部分。按这个顺序查,能快速定位:
检查项 | 怎么查 | 不通的处理 |
|---|---|---|
| 服务器上 | 不通先解决程序本身 |
| 查程序是否监听 0.0.0.0 而非 127.0.0.1 | 改成监听 0.0.0.0 |
| 控制台看实例公网 IP 栏 | 没有则绑弹性公网 IP |
| 查安全组入站规则有无该端口 | 加规则放行端口 |
| 查系统防火墙(ufw/firewalld) | 放行端口或关闭 |
一个高频隐藏坑在第 2 步:程序如果只监听 127.0.0.1(localhost),那它只接受本机访问,外网再怎么配都进不来。必须让程序监听 0.0.0.0,才能接受外部请求。很多「安全组也开了还是不通」的案例,根子就在这里。
外网能访问之后,让服务更正式、更安全:
想了解云服务器 CVM、弹性公网 IP 的配置与价格,可前往腾讯云双十一活动页查看并选购:https://cloud.tencent.com/act/pro/double11-202611
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。