服务器设置为接受三次登录尝试。系统ssh
在选择正确的文件之前会检查三个身份文件。
ssh命令如下:
ssh -i ~/.ssh/username [email protected] -v
三个身份文件如下:
debug2: key: /path/to/.ssh/identity1
debug2: key: /path/to/.ssh/identity2
debug2: key: /path/to/.ssh/identity3
debug2: key: /path/to/.ssh/username
如何删除三个不正确的身份文件?我已经尝试从目录中删除它们,我也尝试~/.ssh/config
按如下方式更新:
Host xx.xx.xx.xxx
User username
IdentityFile ~/.ssh/username
我怎样才能ssh
使用正确的身份文件?
答案1
看起来 ssh 正在尝试它所知道的所有身份。如果您只想尝试配置文件中指定的身份,请添加以下行
IdentitiesOnly = yes
到 .ssh/config 文件的主机部分。
这是相关部分ssh_config 手册页:
IdentitiesOnly 指定 ssh(1) 应该只使用 ssh_config 文件中配置的身份验证身份文件,即使 ssh-agent(1) 提供更多身份也是如此。此关键字的参数必须是“是”或“否”。此选项适用于 ssh-agent 提供许多不同身份的情况。默认值为“否”。
答案2
查看身份文件是否列出
ssh-add -l
如果没有,请添加
ssh-add ~/.ssh/username
然后能够选择正确的身份文件