在windows客户端上使用ssh-keygen生成密钥对,将生成的密钥对的公钥内容添加到Linux服务器~/.ssh/authorized_keys认证文件中,从客户端端使用私钥以密钥认证登录Linux服务器。待测试正常,关闭密码认证
时间: 2024-04-16 15:28:06 浏览: 23
您可以按照以下步骤在Windows客户端上使用ssh-keygen生成密钥对,并将公钥添加到Linux的认证文件中,以实现密钥认证登录并关闭密码认证:
1. 打开 Windows 客户端上的命令提示符或 Git Bash 终端。
2. 运行以下命令来生成密钥对:
```
ssh-keygen -t rsa
```
您可以选择使用不同的密钥类型(如ED25519)并指定其他选项,但rsa是最常用的选择。
3. 程序会提示您提供文件名以保存生成的密钥对。您可以按回车键接受默认的文件名和位置,或者自定义一个文件名和路径。例如,您可以将密钥对保存在用户主目录的.ssh文件夹下。
4. 在提示时,您可以为密钥对设置一个密码以增加安全性。这是可选的,如果您不想使用密码,请直接按回车键跳过。
5. 密钥对生成完成后,您将在指定的位置找到两个文件:私钥(通常为id_rsa)和公钥(通常为id_rsa.pub)。
6. 使用安全方式将公钥复制到 Linux 服务器上。您可以使用以下命令将公钥内容添加到服务器上的认证文件中(假设您已通过其他方式登录到服务器):
```
cat id_rsa.pub >> ~/.ssh/authorized_keys
```
7. 确保认证文件的权限设置正确。运行以下命令修改权限:
```
chmod 600 ~/.ssh/authorized_keys
```
8. 现在,您可以尝试使用私钥进行密钥认证登录到 Linux 服务器。在 Windows 客户端上的命令提示符或 Git Bash 终端中运行以下命令:
```
ssh username@server_ip_address -i path/to/private_key
```
将 "username" 替换为您在 Linux 服务器上的用户名,"server_ip_address" 替换为服务器的IP地址,"path/to/private_key" 替换为您保存私钥的路径。
请注意,这些步骤假设您已经在 Windows 客户端上安装了合适的 SSH 客户端(如 Git Bash)以及在 Linux 服务器上配置了 SSH 服务。