设置配置文件后,普通 ssh user@server 不起作用

设置配置文件后,普通 ssh user@server 不起作用

macOS Sierra 10.12.4、OpenSSH_7.4p1、LibreSSL 2.5.0。

我的ssh配置文件设置如下(仅其中一台服务器):

Host github
    Hostname            github.com
    HostKeyAlias        github
    User                git
    IdentityFile        /Users/abhay/.ssh/github
    IdentitiesOnly      yes

当我ssh github在命令行使用时,它可以正常工作,使用正确的身份文件并且我能够登录。

但如果我使用,配置将被忽略,而使用我的默认身份文件。其他服务器也是如此,而不仅仅是 github。ssh [email protected]id_rsa

这是应该如何工作的吗?有时我会忘记别名,或者只是想用 complete 登录user@server,但 ssh 会失败。

如何解决这个问题?

答案1

是的,应该是这样运作的。

您可以通过将第一行更改为来轻松解决此问题

Host github github.com

原因是您对Host条目所做的所有配置都与您在命令行中提供的主机名匹配,并且仅适用于此名称。这使得同一主机名可以有多个配置,例如使用不同的密钥。如果没有匹配,则使用默认配置。

相关内容