我将 DNS 搜索路径设置为“.intranet”,即/etc/resolv.conf
包含:
search intranet
当我使用 FQDN(例如“mailserver.intranet”)通过 SSH 连接到主机时,它会将“mailserver.intranet”的条目添加到~/.ssh/known_hosts
.如果我稍后通过 SSH 连接到同一台主机,但使用简单的“邮件服务器”名称,则 SSH 会在known_hosts 中为“邮件服务器”添加另一个条目。
是否可以让 SSH 始终在known_hosts 中使用 FQDN 来避免这种口是心非?
答案1
您可以使用主机密钥的别名:
Host <hostname>*
hostname <fqdn>
HostKeyAlias <alias>
您的密钥将作为“别名”而不是“主机名”保存到known_hosts,无论是短还是长,缺点是您必须为每个主机编写一个条目。
请注意第一行主机名后面的“*”,它需要匹配短主机名和长主机名。