View a markdown version of this page

管理 SFTP-enabled 服务器的主机密钥 - AWS Transfer Family

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理 SFTP-enabled 服务器的主机密钥

服务器主机密钥是 Transfer Family 服务器使用的私钥,用于为呼叫者提供唯一身份,并保证它是正确的服务器。该保证是通过在呼叫者known_hosts档案中存在正确的公钥来强制执行的。(该known_hosts文件是大多数 SSH 客户端使用的标准功能,用于存储您连接的服务器的公钥。) 您可以通过运行服务器来检索与服务器主机密钥对应ssh-keyscan的公钥。

重要

意外更改服务器的主机密钥会导致中断。根据您的 SFTP 客户端的配置方式,它可能会立即失败,并显示不存在可信主机密钥的消息,或者出现威胁性提示。如果有用于自动连接的脚本,它们很可能也会失败。

默认情况下,为您的 SFTP-enabled 服务器 AWS Transfer Family 生成主机密钥。您可以导入服务器主机密钥以保留主机身份并避免更新客户端信任库。何时导入主机密钥列出了你可能想要这样做的几个原因。如果您不提供主机密钥,则将为您生成新的密钥。

AWS Transfer Family 支持不同类型的多个主机密钥(RSA、ECDSA 和 ED25519),以提供与更广泛的客户端主机签名算法的兼容性。不同的密钥类型支持特定的算法:RSA 密钥启用 rs a-* 算法,ECDSA 密钥启用 ecdsa-* 算法,ED25519 密钥启用 ed25519 算法。 在服务器创建时规划密钥类型,因为在客户端开始与服务器交互后引入其他密钥类型可能会对某些客户端造成干扰,并且可能与替换现有主机密钥一样成问题。

为防止提示用户再次验证服务器的真实性,请将本地 SFTP-enabled服务器的主机密钥导入到 SFTP-enabled 服务器。这样做还可防止您的用户都收到有关潜在中间人攻击的警告。

作为一项额外的安全措施,您也可以定期轮换主机密钥。有关更多信息,请参阅 轮换服务器主机密钥

注意

服务器主机密钥由支持 SFTP 协议的服务器使用。

何时导入主机密钥

虽然 AWS Transfer Family 可以自动生成主机密钥,但在某些情况下,导入自己的主机密钥会带来运营优势:

  • 服务器迁移 -您正在从现有服务器迁移到 AWS Transfer Family 并希望避免更新现有客户端的客户端信任库(known_hosts文件)。

  • 灾难恢复和故障转移 -您有多 AWS Transfer Family 台共享相同公有 DNS 名称的服务器(例如,一台位于美国东部(俄亥俄州),一台位于美国西部(俄勒冈州))。在两台服务器上使用相同的主机密钥可确保无缝故障转移,不会出现客户端身份验证失败的情况。

  • 运行连续性 -您希望主机密钥材料将来可用于其他服务器(AWS Transfer Family 或其他服务器),以便在整个基础架构中保持一致的服务器身份。

  • 算法控制 -您希望通过提供更多主机密钥算法来增强客户端兼容性,或者您想通过仅提供与特定算法兼容的密钥来控制客户端可以使用哪些算法。

以下主题提供了管理服务器主机密钥的详细过程: