windows配置linux服务器免密登录
时间: 2025-05-10 20:31:18 浏览: 32
### 如何在 Windows 上设置 SSH 密钥以实现对 Linux 服务器的无密码登录
为了实现在 Windows 系统上通过 SSH 密钥对 Linux 服务器进行无密码登录,可以按照以下方法操作:
#### 创建 SSH 密钥对
在 Windows 中可以通过 PowerShell 或者其他工具生成 SSH 密钥对。打开 PowerShell 并运行以下命令创建 RSA 类型的密钥对:
```bash
ssh-keygen -t rsa
```
执行该命令后,程序会询问保存位置以及是否为私钥设置密码保护[^5]。通常情况下,默认路径即可满足需求,直接按 Enter 键接受默认选项。
#### 将公钥复制到 Linux 服务器
完成密钥生成之后,需要将生成的公钥传输至目标 Linux 主机上的特定目录中去。以下是具体的操作方式之一:
##### 方法一:手动上传公钥文件
利用 SCP 协议或者 FTP 客户端(如 WinSCP),把本地计算机中的 `id_rsa.pub` 文件传送到远程主机 `/root/.ssh/authorized_keys` 路径下。例如,在 CMD 下可键入如下指令传送数据:
```cmd
C:\Users\<用户名>\.ssh\id_rsa.pub root@<Linux_IP>:~/.ssh/
```
随后切换到 `.ssh` 目录,并追加内容到 authorized_keys 文件里:
```bash
cat id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
```
另外一种更简便的办法是在 Windows 的命令行界面直接发送公钥给指定账户下的授权列表:
```cmd
type C:\Users\<用户名>\.ssh\id_rsa.pub | ssh root@<Linux_IP> "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
```
这一步骤能够自动建立必要的子文件夹并将公开部分附加进去[^2]。
#### 测试连接
当上述步骤都完成后,尝试从客户端发起新的 SSH 连接测试是否无需再输入密码就能顺利访问服务端机器了:
```bash
ssh root@<Linux_IP>
```
如果没有被要求再次提交任何认证信息,则说明配置成功[^3]。
---
### 注意事项
- 如果遇到权限错误,请确认`.ssh`目录及其内部文件拥有恰当的所有权与读写属性。
- 对于安全性考虑,建议定期更换使用的密钥组合以防泄露风险。
阅读全文
相关推荐


















