如何解决在连接到 AWS Transfer for SFTP 服务器时出现的“无法初始化 SFTP 协议”错误?

上次更新时间:2020 年 6 月 18 日

我创建了一个 AWS Transfer for SFTP 服务器,然后创建了一个服务器用户,并将一个公有密钥添加到该用户。但当该用户使用 WinSCP 连接到服务器时,他们会收到错误消息“无法初始化 SFTP 协议。主机是否在运行 SFTP 服务器?” 如何修复此问题?

注意:不同 SFTP 客户端收到的错误消息有异。例如,如果您使用的是 Cyberduck,则错误消息将为“读取数据包时 EOF。请联系您的 Web 托管服务提供商寻求帮助。” 如果您使用的是 OpenSSH,错误消息将是“退出状态 1(连接关闭)。”

解决方法

AWS Transfer 系列服务的日志记录角色配置不正确时通常会出现此错误。要解决此错误,请确认 AWS Transfer 系列服务有权代入与您的服务器关联的日志记录角色。验证日志记录角色的信任策略,确认其允许委托人"Service": "transfer.amazonaws.com""Action": "sts:AssumeRole"角色,与以下示例语句类似:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "Service": "transfer.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助?