阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

本文介绍无法访问ECS实例中的服务的排查方法。

操作场景

无法访问ECS实例中的服务可能有以下原因:

可能原因

排查方案

ECS实例的安全组未开放相应端口

检查ECS实例安全组规则

ECS实例中,该服务未启动/开启或服务对应端口未被监听

检查服务状态及端口监听状态

ECS实例内防火墙设置错误

检查ECS防火墙设置

本文以排查无法访问ECS实例中的Nginx服务(默认端口为80)为例,排查其他服务时,请替换命令中的服务名和对应的端口。

检查ECS实例安全组规则

  1. 登录ECS管理控制台。
  2. 在左侧导航栏,选择实例与镜像 > 实例
  3. 在顶部菜单栏左上角处,选择地域。
  4. 在ECS实例列表页面,单击目标ECS实例ID。

  5. 在ECS实例详情页面,单击安全组页签。

  6. 安全组列表页签下,单击安全组ID。

  7. 在安全组规则页面,查看入方向规则是否开放80端口。

    阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    • 未开放80端口,请添加入方向为80的安全组规则。具体操作,请参见添加安全组规则。

    • 已开放80端口,请执行检查服务状态及端口监听状态。

检查服务状态及端口监听状态

Linux实例

本操作以CentOS 7.9为例,其他版本的Linux系统操作可能有所差异。

  1. 远程连接Linux实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例。

  2. 执行如下命令,查看Nginx服务状态。

    systemctl status nginx
    • 如果返回类似如下信息,则说明Nginx已经启动。

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    • 如果未开启,请执行如下命令,启动Nginx命令。

      systemctl start nginx
  3. 执行如下命令,查看端口是否正常被监听。

    netstat -an | grep 80
    • 如果返回如下信息,则说明80端口被正常监听,请执行检查ECS防火墙设置。

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    • 如果返回的不是以上信息,表示80端口未处于监听状态。说明该端口可能被其他端口占用,您需要修改该端口。具体操作,请参见如何修改Nginx服务端口监听地址。

Windows实例

本操作以Windows Server 2012为例,其他版本的Windows Server系统操作类似。

  1. 远程连接Windows实例。

    具体操作,请参见通过密码或密钥认证登录Windows实例。

  2. 选择开始>运行,输入service.msc,单击确定,打开服务

  3. 查看nginx状态。

    1. 如果nginx无状态,请右键单击该nginx服务,然后单击启动(S)

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    2. 如果nginx状态为正在运行,请继续执行步骤4。

  4. 在Windows PowerShell中执行如下命令,查看端口是否正常被监听。

    netstat -ano | findstr "80"
    • 如果返回如下信息,则说明80端口被正常监听,请执行检查ECS防火墙设置。

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    • 如果返回的不是以上信息,表示80端口未处于监听状态。说明该端口可能被其他端口占用,您需要修改该端口。具体操作,请参见如何修改Nginx服务端口监听地址。

检查ECS防火墙设置

Linux实例

本操作以CentOS 7.9为例,其他版本的Linux系统操作可能有所差异。

  1. 远程连接Linux实例。

    具体操作,请参见通过密码或密钥认证登录Linux实例。

  2. 执行如下命令,查看防火墙状态。

    systemctl status firewalld
    • 如果回显中出现Active: inactive (dead)信息,说明防火墙为关闭状态,无需再进行任何操作。

    • 如果回显中出现Active: active (running)信息,说明防火墙已开启,请继续执行步骤3。

  3. 执行如下命令,查看防火墙中已开放的端口。

    firewall-cmd --list-all
    • 如果回显中出现ports: 80/tcp信息,说明防火墙规则中已放行80端口,无需再进行任何操作。

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    • 如果回显中没有ports: 80/tcp信息,请执行如下命令,放行80端口。

      firewall-cmd --zone=public --add-port=80/tcp --permanent

      若返回结果为success,表示已经放行TCP 80端口。

Windows实例

本操作以Windows Server 2012为例,其他版本的Windows Server系统操作类似。

  1. 远程连接Windows实例。

    具体操作,请参见通过密码或密钥认证登录Windows实例。

  2. 单击左下角的阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]图标,打开服务器管理。

  3. 选择右上角的工具(T)>高级安全 Windows防火墙

    阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

  4. 查看防火墙状态。

    1. 如果防火墙处于关闭状态,无需进行任何操作。

      阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

    2. 如果防火墙状态为已启用,请继续以下操作。

      1. 高级安全 Windows防火墙页面,单击入站规则

      2. 查看Windows 远程管理-兼容模式(HTTP-In)的状态。

        • 如果协议已启动,无需进行任何操作。

        • 如果该规则未启用,请右键单击该规则,然后单击启用规则(E)

          阿里云服务器无法访问ECS实例中的服务的排查方法-[云淘科技_教程]

关于阿里云ecs服务器的内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家

阿里云企业补贴进行中: 马上申请

腾讯云限时活动1折起,即将结束: 马上收藏

同尘科技为腾讯云授权服务中心。

购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠

本文来自投稿,不代表新手站长_郑州云淘科技有限公司立场,如若转载,请注明出处:https://www.cnzhanzhang.com/9770.html

(0)
匿名
上一篇 2023年6月1日 下午5:15
下一篇 2023年6月8日 上午11:19

相关推荐

新手站长从“心”出发,感谢16年您始终不离不弃。