我的新服务器上已经有 ssh_host_ecdsa_key 和 ssh_host_rsa_key 文件,这正常吗?

use*_*779 4 server ssh

我有一个新的专用服务器,我目前通过 ssh 使用用户名和密码访问它。我还没有设置 ssh 密钥。我现在只是在研究它。

所以这是一个刚安装了ubuntu的新服务器,/etc/ssh/目录上已经有ssh_host_ecdsa_key和ssh_host_rsa_key文件是否正常?我也可以查看这些文件的 .pub 文件。

这是否意味着设置服务器的任何人都可以使用这些密钥文件访问它?我想成为唯一可以登录我的服务器的人。

我不是一个有经验的 linux 用户,仍在努力学习。

谢谢

Pan*_*her 6

安装 openssh-server 时会自动生成密钥。

要手动制作一组新的密钥,

首先,删除旧的 ssh 主机密钥。在服务器上,

sudo rm -f /etc/ssh/ssh_host_*
Run Code Online (Sandbox Code Playgroud)

然后制作新钥匙

sudo dpkg-reconfigure openssh-server
Run Code Online (Sandbox Code Playgroud)

你会看见

创建 SSH2 RSA 密钥;这可能需要一些时间... 创建 SSH2 DSA 密钥;这可能需要一些时间... 重新启动 OpenBSD Secure Shell 服务器:sshd。

您的客户在登录时可能会收到一条消息:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@警告:远程主机标识已更改!@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@ 有人可能正在做一些令人讨厌的事情!现在有人可能正在窃听你(中间人攻击)!也有可能 RSA 主机密钥刚刚被更改。

...

如果是这样,让客户端运行

ssh-keygen -R hostname
Run Code Online (Sandbox Code Playgroud)

其中 hostname 是服务器的名称。