找回密码
 立即注册
首页 业界区 安全 腾讯轻量云 Nacos 公网访问排查指南(适用于其他平台的e ...

腾讯轻量云 Nacos 公网访问排查指南(适用于其他平台的ecs)

俏挺喳 前天 19:55
腾讯轻量云Nacos公网无法访问?从22端口通到8848端口开的全流程排查

前言

最近在腾讯轻量云服务器部署Nacos(单机模式),遇到了经典问题:服务器内网访问Nacos正常,但公网访问超时,端口扫描显示22端口开放(SSH能连),但Nacos的8848端口始终显示“关闭”。
折腾了大半天后终于解决,把全流程排查步骤整理成这篇博客,方便以后遇到类似问题直接复用。
问题现象


  • Nacos启动日志显示正常:Nacos started successfully in stand alone mode;
  • 服务器内网curl http://10.1.8.7:8848/nacos能返回HTML;
  • 本地电脑SSH连接服务器(22端口)正常,但访问http://106.55.170.177:8848/nacos超时;
  • 在线端口扫描:22端口“开启”,8848端口“关闭”。
全流程排查步骤

步骤1:先确认Nacos服务本身是否正常(排除服务问题)

先确定不是Nacos没启动,而是网络问题:
  1. # 1. 查看Nacos启动日志(确认服务正常)
  2. tail -f /usr/local/nacos/logs/start.out
  3. # 关键日志:Tomcat started on port(s): 8848 (http) with context path '/nacos'
  4. # 2. 检查Nacos端口监听(确认绑定端口)
  5. netstat -tlnp | grep 8848
  6. # 正常输出:tcp        0      0 0.0.0.0:8848            0.0.0.0:*               LISTEN      xxxx/java
  7. # 3. 服务器内网访问测试(确认服务可用)
  8. curl http://10.1.8.7:8848/nacos
  9. # 正常返回Nacos登录页HTML
复制代码
步骤2:验证Nacos的正确访问路径(容易忽略的细节)

从启动日志看到context path '/nacos',所以正确的公网访问路径是
http://你的公网IP:8848/nacos(不是/nacos/index.html,虽然加了也能访问,但先简化路径测试)
步骤3:排查服务器本地防火墙(轻量云默认用firewalld)

腾讯轻量云(OpenCloudOS系统)默认启用firewalld,而非iptables,之前清空iptables没用,需处理firewalld:
  1. # 1. 查看firewalld状态
  2. systemctl status firewalld
  3. # 2. 临时开放8848端口(永久生效+重载规则)
  4. firewall-cmd --add-port=8848/tcp --permanent
  5. firewall-cmd --reload
  6. # 3. 验证规则是否生效
  7. firewall-cmd --list-ports | grep 8848
  8. # 正常输出:8848/tcp
  9. # 4. 彻底排除firewalld(可选,直接关闭)
  10. systemctl stop firewalld
  11. systemctl disable firewalld
复制代码
步骤4:检查轻量云控制台防火墙规则(核心!)

22端口能通说明防火墙基础配置没问题,但需确认8848规则:

  • 登录腾讯轻量云控制台 → 找到你的实例 → 进入「防火墙」;
  • 找到8848的规则,确认:

    • 应用类型:自定义;
    • 协议:TCP;
    • 端口:8848;
    • 来源:全部IPv4地址;
    • 策略:允许;

  • 点击规则右侧「编辑」,重新保存(强制同步规则),等待1-2分钟。
步骤5:强制Nacos监听所有IP(避免只绑内网)

Nacos默认可能只监听内网IP,需修改配置强制监听所有IP:
  1. # 编辑Nacos配置
  2. vim /usr/local/nacos/conf/application.properties
  3. # 添加以下配置
  4. server.address=0.0.0.0
  5. server.port=8848
  6. # 重启Nacos
  7. sh /usr/local/nacos/bin/shutdown.sh
  8. sh /usr/local/nacos/bin/startup.sh -m standalone
  9. # 再次验证监听地址(必须显示0.0.0.0:8848)
  10. netstat -tlnp | grep 8848
复制代码
步骤6:用端口检测工具辅助定位

如果前面步骤做完仍有问题,用在线工具检测端口状态:

  • 工具:站长工具-端口扫描;
  • 输入:公网IP + 8848端口;
  • 若显示“开启”:网络通,问题在浏览器/路径;
  • 若显示“关闭”:继续下一步。
步骤7:终极方案——联系腾讯轻量云客服

如果以上步骤都做完,8848端口仍显示关闭,直接联系腾讯云轻量云专属客服
说明:我的轻量云服务器公网IP是xxx,已在防火墙开放8848 TCP端口,服务器本地也开放了端口,但外部检测8848是关闭的,22端口正常,请帮忙排查云侧端口策略。
总结:关键注意点


  • 先证服务,再查网络:先确认Nacos内网通、端口监听正常,排除服务本身问题;
  • 本地+云侧防火墙双检查:轻量云的“防火墙”+服务器本地的firewalld都要处理;
  • Nacos监听地址必须是0.0.0.0:避免只绑定内网IP,导致公网无法访问;
  • 注意访问路径的context path:Nacos默认带/nacos上下文,别漏了。
这套流程适用于所有“云服务器服务内网通、公网不通”的场景,以后遇到类似问题直接按步骤排查即可~

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册