Linux实例启动常见服务并查询端口监听状态的方法
发布时间:2021-02-23 点击数:886
概述
当您无法访问Linux实例中的服务时,可能的问题原因之一是该服务对应的进程未处于运行中。以下列举几个Linux实例中常见的服务以及这些服务未运行时产生的影响。
服务名称 | 描述 | 默认监听的端口 | 未运行时的影响 |
SSH | 远程连接 | 22 | 无法通过SSH远程连接 |
Web | Web网站服务 |
80(HTTP)、443(HTTPS) |
无法访问网站 |
MySQL | MySQL数据库 | 3306 | 无法访问数据库 |
本文主要介绍Linux实例启动常见服务的方法并确认这些服务的端口处于监听状态。
详细信息
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
为了清晰展现操作过程,此处以在CentOS 7系统为例。其他Linux发行版系统,请查阅对应的官方文档。操作步骤如下:
-
远程登录Linux实例。关于如何远程登录,请参见ECS连接方式概述。
说明:如果您无法通过SSH的方式登录Linux实例,请参见无法通过SSH远程登录Linux实例时的排查指引。
-
在Linux实例中执行以下命令,检查目标服务的端口监听状态。确认系统无返回结果,即目标服务的端口未处于监听状态。
netstat -ntlp | grep [$Port]
说明:[$Port]指目标服务监听的端口,现场以实际情况为准。如果您修改过目标服务默认的端口,请替换为修改后的端口号。
如果系统返回目标端口信息,并且监听状态为LISTEN,则说明目标服务已经处于运行状态,不需要启动。此时您应当检查服务配置、系统防火墙、ECS安全组等因素,或者参见ECS常见问题,检查是否存在符合您问题现状的参考文档。 -
执行以下命令,启动目标服务。
systemctl start [$Service]
说明:
如果系统无返回结果,则表示命令执行成功。如果系统返回错误,请参考错误提示进行修复。
- [$Service]指目标服务的名称,现场以实际情况为准。
- 如果您要启动的是SSH服务,则服务名称为sshd。
- 如果您要启动的是第三方服务,例如“Nginx”、“Tomcat”、“MySQL”等,请查阅第三方服务的官方网站,获取对应的启动命令。
-
执行以下命令,检查目标服务的状态。
systemctl status [$Service]
说明:此处以SSH服务为例,现场请以实际情况为准。
-
执行以下命令,检查目标服务的端口监听状态。
netstat -ntlp | grep [$Port]
如果您有其他问题,可以联系北京志远天成阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询!