当我第一次通过SSH连接到主机时,我会遇到这样的消息:Authenticity of host ***** can't be established. ECDSA key fingerprint is SHA256 *******. Are you sure you want to continue to connect? (yes/no/[fingerprint])。
我在试着为客户验证主人的指纹找到一种安全的方法。
当与SSH连接时,客户端接收指纹,但是为了使客户能够验证指纹确实属于主机,主机也应该在另一个通道上共享该指纹。
安全团体使用什么标准来安全地共享指纹?
发布于 2023-05-25 12:07:58
使用DNS安全发布安全Shell密钥指纹的的2455定义一个SSHFP DNS记录来存储SSH服务器的公钥。RFC6594对此进行了扩展。在使用DNSSEC时使用它是有意义的。
OpenSSH支持使用SSHFP (VerifyHostKeyDNS)检查SSH公钥,但它不执行任何DNSSEC验证(据我所知)。使用时,您应该使用一个为您处理此问题的解析器:如果您是通过安全通道(DoT、DoH等)与其通信,则理想情况下应该是本地解析器或受信任的远程解析器。查看代码,只有当DNS响应设置了AD (身份验证数据)位时,OpenSSH才会信任SSHFP记录。
发布于 2023-05-25 10:41:31
我怀疑这方面是否有一个正式的标准,因为合适的方法完全取决于上下文和安全需求。如果它是一台供个人使用的服务器,那么就会有不同的过程,比如说,在一家拥有自己的管理员的大公司中。
有很多可能的方法。
https://security.stackexchange.com/questions/270412
复制相似问题