known_hosts如何生成
时间: 2023-05-14 15:04:59 浏览: 188
known_hosts 文件是用于 SSH 连接时验证主机身份的文件,它包含了已知的主机公钥信息。生成 known_hosts 文件的方法是在第一次 SSH 连接时,会提示你是否信任该主机的公钥,如果你选择信任,那么该主机的公钥信息就会被保存到 known_hosts 文件中。如果你需要手动添加主机公钥信息到 known_hosts 文件中,可以使用 ssh-keyscan 命令来获取主机公钥信息并添加到文件中。
相关问题
如何在本地通过ssh 访问服务器,SSH免密登录通常使用SSH密钥对实现known_hosts known_hosts.old 如何生成的
要在本地通过ssh访问服务器,需要进行以下步骤:
1. 在服务器上安装ssh服务,确保其处于运行状态。
2. 在本地电脑上打开终端或命令行窗口,输入以下命令来连接服务器:
```
ssh username@server_address
```
其中,`username`是服务器上的用户名,`server_address`是服务器的IP地址或域名。
3. 如果是第一次连接服务器,会提示是否继续连接,输入`yes`并按下回车键。
4. 如果使用SSH免密登录,可以生成SSH密钥对。在本地电脑上打开终端或命令行窗口,输入以下命令来生成密钥对:
```
ssh-keygen -t rsa
```
然后会提示你输入保存密钥对的文件名和位置。默认情况下,它们会保存在`.ssh`文件夹中,文件名为`id_rsa`和`id_rsa.pub`。
5. 将公钥(`id_rsa.pub`)添加到服务器的`authorized_keys`文件中。可以使用以下命令将公钥添加到服务器:
```
ssh-copy-id username@server_address
```
然后输入服务器密码,就可以将公钥添加到服务器了。
6. 现在,可以使用以下命令进行SSH免密登录:
```
ssh username@server_address
```
系统会自动使用SSH密钥对进行身份验证,而不需要输入密码。
在进行SSH免密登录时,会生成两个文件`known_hosts`和`known_hosts.old`。这两个文件保存了已知主机的公钥信息,用于验证主机的身份。如果主机的公钥发生了变化,就会提示`WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!`错误。可以通过删除`known_hosts`文件来解决此问题。删除后,下一次连接服务器时,系统会重新生成一个新的`known_hosts`文件。
ssh-keygen -t rsa没有生成konwn_host
您好!如果在使用命令"ssh-keygen -t rsa"生成SSH密钥时没有生成known_hosts文件,有可能是由于以下几种情况之一:
1. 当前用户没有权限创建known_hosts文件:请确保您具有在所选目录中创建文件的权限。您可以尝试在其他目录中生成密钥并检查是否生成了known_hosts文件。
2. known_hosts文件已存在:请检查您指定的目录中是否已存在名为known_hosts的文件。如果已存在该文件,请备份并删除它,然后重新生成SSH密钥。
3. SSH客户端配置问题:有时,SSH客户端可能会禁用自动添加到known_hosts文件中。在这种情况下,您可以尝试使用'--hash-known-hosts'选项来生成哈希值的known_hosts文件,例如:"ssh-keygen -t rsa --hash-known-hosts"。
希望以上信息对您有所帮助!如果您有任何其他问题,请随时提问。