当前位置:首页 > 探索

搭建云服务器的公共ip 端口

搭建云服务器时,搭建的公p端公共IP和端口的云服配置是最容易让人踩坑的地方。很多人以为买完服务器,搭建的公p端IP自动就能用,云服结果SSH连不上、搭建的公p端网站打不开,云服折腾半天才发现是搭建的公p端安全组规则没配好。

先说说公共IP这回事。云服云服务商给你的搭建的公p端那个IP,比如阿里云的云服弹性IP、AWS的搭建的公p端Elastic IP,本质上是云服NAT映射——你的服务器实际在私有网段里,公共IP是搭建的公p端网关上的一个转发规则。所以别指望像物理机那样直接ifconfig能看到它。云服你得在控制台里把IP绑定到实例上,搭建的公p端这一步漏了,后面全白搭。

端口就更微妙了。默认情况下,云服务器几乎把所有端口都关死了。我见过一个新手,在腾讯云上开了台Ubuntu,装好Nginx,浏览器一访问——超时。他查了半天防火墙,iptables也清了,最后发现控制台里的“安全组”只放行了22端口。这就是云服务器和物理机的核心区别:物理机的防火墙在系统里,云服务器的防火墙在系统外,你得先过外层的关卡。

具体操作分两步。第一步,在云控制台找到“安全组”或“防火墙”选项,添加入站规则。比如要开80端口,就填TCP、80、来源IP填0.0.0.0/0(代表所有人)。这里有个坑:如果你只想让特定IP访问,千万别偷懒填0.0.0.0/0,数据库端口3306一旦对全网开放,几分钟内就会有人来爆破。我自己的服务器就吃过亏,Redis端口没限制,一晚上被扫了四千多次。

第二步,系统内部的防火墙也要同步放行。Ubuntu用ufw的话,执行sudo ufw allow 80/tcp;CentOS用firewalld,命令是firewall-cmd --permanent --add-port=80/tcp然后reload。有些人只改了云控制台,忘了系统防火墙,结果还是连不上——两边都得通,缺一不可。

还有个细节容易被忽略:IP绑定的生效时间。有些云服务商修改弹性IP绑定后,需要等几十秒到几分钟才真正生效。别急着重启服务器,先ping一下新IP,通了再继续。另外,如果你用的是IPv6,那又是另一套逻辑,安全组规则要单独配,别以为IPv4的规则能自动覆盖。

最后说个真实案例。上个月帮朋友排查问题,他的服务器能ping通,但SSH就是连不上。我让他检查安全组,他说“我全都放行了啊”。结果一看,他把入站规则写成了“出站”。方向搞反了,等于白设。这种低级错误其实很常见,因为云控制台的界面设计有时候确实不够直观,但多看一眼总没坏处。

公共IP和端口这事儿,本质上就是“两层关卡,一个都不能少”。外层的安全组管着谁能进来,内层的系统防火墙管着谁能不能落地。搞懂这个逻辑,比死记命令有用得多。下次再连不上,先别急着重装系统,按这个顺序排查:IP绑定没→安全组规则方向对不对→端口号填没填错→系统防火墙开没开。八成问题都出在这几个环节里。

分享到: