如何Ubuntu/Debian Linux重新生成OpenSSH主机密钥
时间:2020-01-09 10:40:37 来源:igfitidea点击:
如何重新生成存储在/etc/ssh/ssh_host_*文件中的OpenSSH sshd服务器主机密钥?
我可以使用远程ssh会话安全地重新生成ssh主机密钥,因为我现有的ssh连接不应该在Debian或Ubuntu Linux上中断吗?如何重新生成新的ssh服务器密钥?如何在Debian或Ubuntu Linux上重新生成新的主机密钥? 要重新生成密钥,您需要删除旧文件并重新配置openssh-server。
在基于远程ssh的会话上运行以下命令也是安全的。
您的"现有会话不应中断"。
如何重新生成新的SSH服务器密钥
为什么要重新生成新的ssh服务器密钥?
在安装OpenSSH服务器软件包期间,大多数Linux和Unix发行版都会为您创建ssh密钥。
但是能够不时重新生成新的服务器密钥可能会很有用。
例如,当您复制包含已安装的ssh软件包的VM(KVM或容器)时,需要使用克隆的KVM VM guest虚拟机/计算机上的其他密钥。
在Linux上重新生成OpenSSH主机密钥的步骤
让我们看看所有步骤
步骤1删除旧的SSH主机密钥
以root用户身份登录,然后执行以下命令以删除SSHD服务器上的文件:
# /bin/rm -v /etc/ssh/ssh_host_*
输出示例:
removed '/etc/ssh/ssh_host_dsa_key' removed '/etc/ssh/ssh_host_dsa_key.pub' removed '/etc/ssh/ssh_host_ecdsa_key' removed '/etc/ssh/ssh_host_ecdsa_key.pub' removed '/etc/ssh/ssh_host_ed25519_key' removed '/etc/ssh/ssh_host_ed25519_key.pub' removed '/etc/ssh/ssh_host_rsa_key' removed '/etc/ssh/ssh_host_rsa_key.pub'
步骤2 Debian或Ubuntu Linux重新生成OpenSSH主机密钥
现在,在SSHD服务器上创建一组新的密钥,执行:
# dpkg-reconfigure openssh-server
输出示例:
Creating SSH2 RSA key; this may take some time ... 2048 SHA256:BLUkgjGdbcFX9wCsfOoIG4gtkdSeex4K/xcnsRo0qEA root@ubuntu-box1-clone (RSA) Creating SSH2 DSA key; this may take some time ... 1024 SHA256:Ug9fJa14YMR9Fud/7bXTokffK/hM/sBVse10nSR/6Y8 root@ubuntu-box1-clone (DSA) Creating SSH2 ECDSA key; this may take some time ... 256 SHA256:Rh6izWEXkCV6HZLIpzlGQje178vhDgb77ItaZgpDsIQ root@ubuntu-box1-clone (ECDSA) Creating SSH2 ED25519 key; this may take some time ... 256 SHA256:UD4b7njwxWp1Q3wYf2R//udgPRzfGaeZ/6kE3VgZM+s root@ubuntu-box1-clone (ED25519)
您只是重新生成了新的ssh服务器密钥。
您需要重新启动ssh服务器:
$ sudo systemctl restart ssh
或者
$ /etc/init.d/ssh restart
步骤3更新所有ssh客户端known_hosts文件
最后,您需要更新客户端计算机上的~/.ssh/known_hosts文件,否则每个人都会看到一条错误消息,内容如下:
<<<<<<<<<<<<<<<<<<<@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ <<<<<<<<<<<<<<<<<<<@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that the RSA host key has just been changed. The fingerprint for the RSA key sent by the remote host is f6:67:01:41:e6:20:06:4b:4b:fa:4b:c1:f1:45:45:e0. Please contact your system administrator. Add correct host key in /home/Hyman/.ssh/known_hosts to get rid of this message. Offending key in /home/Hyman/.ssh/known_hosts:12 RSA host key for 192.54.xx.abc has changed and you have requested strict checking. Host key verification failed.
删除主机指纹或使用vi文本编辑器更新文件(必须在客户端计算机上执行命令):
$ ssh-keygen -R remote-server-name-here
现在使用ssh命令登录:
$ ssh [email protected]