Debian/Ubuntu Linux公钥已列入黑名单(请参阅ssh-vulnkey(1))错误和解决方案
时间:2020-01-09 10:41:51 来源:igfitidea点击:
问题描述:每当我尝试登录到名为in013.example.com的远程Debian Linux服务器时,在/var/log/auth.log文件中都会收到以下错误消息:
Jul 1 17:04:36 in013 sshd[14447]: Public key 48:de:55:22:xx:yy:zz:yy:xx:yy:zz:yy::88:e8:87:47 blacklisted (see ssh-vulnkey(1)) Jul 1 17:04:36 in013 sshd[14447]: Public key 48:de:55:22:xx:yy:zz:yy:xx:yy:zz:yy::88:e8:87:47 blacklisted (see ssh-vulnkey(1))
我使用Ubuntu Linux作为桌面操作系统。
如何解决此错误?
解决方法:这是Debian/Ubuntu Linux OpenSSL软件包中众所周知的安全流程。
首先,您需要通过执行以下命令来更新Ubuntu Linux桌面软件:
$ sudo apt-get update $ sudo apt-get upgrade
这将为您更新openssl,openssh服务器和客户端软件包。
这还将重新生成存储在/etc/ssh /目录中的COMPROMISED密钥。
但是,这将更新存储在$HOME/.ssh中的个人COMPROMISED密钥。
执行以下命令以列出所有COMPROMISED密钥:
$ sudo ssh-vulnkey -a
ssh-vulnkey将密钥与已泄露密钥的黑名单进行检查。
您必须删除所有COMPROMISED密钥,然后使用ssh-keygen命令重新生成它们。
$ cd ~/.ssh $ rm id_* $ ssh-keygen -t rsa
或者
ssh-keygen -t dsa
将新的id_rsa.pub或者id_dsa.pub文件上传到远程主机并覆盖现有的authorized_keys2文件,执行:
$ scp ~/.ssh/id_rsa.pub [email protected]:.ssh/authorized_keys2
如果有多个密钥,则将~/.ssh/id_rsa.pub复制到$HOME并手动删除/更新authorized_keys2文件:
$ scp ~/.ssh/id_rsa.pub [email protected]:~/
找出行号,执行:
$ grep 'your-desktop-name' ~/.ssh/authorized_keys2
使用vi打开COMPROMISED键,输入(将N替换为实际的行号):
$ vi +N ~/.ssh/authorized_keys2
按dd一次删除文件。
保存并关闭文件。
追加新的公钥,执行:
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys2