linux - SSH 发送具有相同配置的不同密钥
问题描述
由于某种原因,我无法使用 SSH 登录服务器。我写信给服务器管理员,他告诉我连接被 sshguard 阻止了。此外,他还向我发送了我的登录尝试列表(sudo grep publickey\ for\ <myusername> /var/log/auth
命令输出)。它看起来像这样:
.
.
.
May 12 21:38:16 boss sshd[3003]: Failed publickey for <myusername> from
<myip> port 24057 ssh2: RSA
SHA256:hqddgd...VHhFM
May 12 21:38:16 boss sshd[3003]: Failed publickey for <myusername> from
<myip> port 24057 ssh2: RSA
SHA256:1NwYXJ66...+U5MqJ0
May 12 21:38:21 boss sshd[3003]: Accepted publickey for <myusername> from
<myip> port 24057 ssh2: RSA
SHA256:A6uQ/jb...I9UjXzc
May 12 21:39:29 boss sshd[3151]: Failed publickey for <myusername> from
<myip> port 23837 ssh2: RSA
SHA256:hqddgd...VHhFM
May 12 21:39:30 boss sshd[3151]: Failed publickey for <myusername> from
<myip> port 23837 ssh2: RSA
SHA256:1NwYXJ66...+U5MqJ0
.
.
.
每当我尝试登录时,我都会按顺序发送具有校验和的密钥:hqddgd...VHhFM、1NwYXJ66...+U5MqJ0、A6uQ/jb...I9UjXzc。第三次我的连接总是被接受。我不知道这是不是巧合,但我在 ~/.ssh/ 目录中正好有三个键。此外,~/.ssh/config 文件如下所示:
Host <server to which I want to log in>
HostName <nice domain>
User <myusername>
IdentityFile ~/.ssh/<myusername>
Host <another server>
HostName <nice domain>
User <another username>
IdentityFile ~/.ssh/<another username>
为什么会这样?为什么 SSH 使用相同的配置发送不同的密钥?
解决方案
您必须将此行添加到配置文件中:
IdentitiesOnly=yes
推荐阅读
- yocto - 如何在 yocto (sumo) 中安装 anacron
- c# - 从 EF 核心递归地选择特定任务及其子任务
- android - Andriod studio 无法将我的设备识别为 android 设备
- php - 从名称创建一个唯一的 slug,检查数据库现有 slug
- react-native - 如何在水平滚动中给空间我想要最后一个单元格之后的空间
- botframework - 如何在 bot 框架中重新启动一系列对话框?
- .net - 从后面的代码动态设置 Shell Title 属性
- python - AttributeError: 'SQLAlchemy' 对象没有属性 'datetime'
- javascript - 动态更改 a:before CSS 标签
- css - 从 .card-header 中删除所有 Bootstrap 4 样式