SSH登录ECS实例提示“ssh_exchange_identification: read: Connection reset by peer”错误

本文仅供学习。【云技术在线】专业提供阿里云、华为云、腾讯云技术支持,有任何问题请与我们联系。

免责声明:本文档可能包含第三方产品信息,该信息仅供参考。阿里云对第三方产品的性能、可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺。

 

问题描述

使用SSH登录ECS实例时,即便正确输入了密码,也会出现类似如下错误信息。

ssh_exchange_identification: read: Connection reset by peer.
sshd[11949]: refused connect from 192.168.0.0 (192.168.0.0).

 

问题原因

Linux系统通过设置/etc/hosts.allow/etc/hosts.deny文件,启用了TCP Wrapper访问控制。

 

解决方案

我们提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

可以参考以下步骤,通过修改配置文件动态设置访问策略,无需重启服务器使配置生效。应用规则时,先应用hosts.allow规则,然后再应用hosts.deny规则。一般的做法是hosts.allow中配置信任主机规则,然后到hosts.deny中拒绝所有其他主机。

注:本文相关Linux配置及说明已在CentOS 6.5 64位操作系统中进行过测试。其它类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档。

  1. 通过管理终端进入系统。
  2. 通过cat命令查看/etc/hosts.allow/etc/hosts.deny文件中,是否包含类似如下配置。
    all:all:deny
  3. 如果需要修改相关策略配置,请将文件进行备份。
  4. 使用vi等编辑器,修改/etc/hosts.allow/etc/hosts.deny文件中的相关配置,将整行删除或着添加注释,如下所示。
    # all:all:deny
  5. 再次尝试登录服务器。

 

更多信息

TCP Wrapper是Linux系统中的一个通用的标准安全框架。其作用类似于IPTABLES, 用于控制从inetd启动的基于TCP的应用程序的访问。其守护进程是tcpd, 通过读取如下两个文件中的相关策略配置,决定允许还是拒绝到达的TCP连接。

/etc/hosts.allow
/etc/hosts.deny

注:如果想了解更多关于TCP Wrapper的说明,可以参阅TCP Wrapper。

 

相关文档

您还可以结合如下文档,参考更多有关ECS实例无法登录的问题做进一步的排查分析。

  • 云服务器 ECS Linux SSH 无法远程登录问题排查指引

    注:截至2019年6月24日,上述链接正确无误。如果您发现该链接已失效,请提供反馈,阿里云技术支持会复查并更新该链接。

 

适用于

  • 云服务器 ECS

 

如果您的问题仍未解决,您可以联系【云技术在线】工程师。

【云技术在线】免费提供阿里云、华为云、腾讯云的产品选型,架构设计,安装配置,故障排查,数据迁移等技术服务,有任何需求请与我们联系!13121395187(微信同号)