0


Windows 系统上配置 SSH 密钥验证,实现无密码登录

Windows 系统上配置 SSH 密钥验证,实现无密码登录

在日常工作中,使用密码登录远程云服务器往往让人感到繁琐。云服务器的密码通常较长,难以记忆,每次登录都需要反复输入,既不便捷也影响效率。此外,由于网络不稳定,密码认证连接容易中断,导致需要频繁重新输入密码。通过配置 SSH 密钥验证,不仅可以省去密码输入的烦恼,还能提高连接的稳定性和安全性。以下是详细步骤,指导您在 Windows 系统上配置 SSH 密钥验证,实现无密码登录。

步骤 1:在 Windows 系统上生成 SSH 密钥

  1. 打开 PowerShell 或 CMD 在 Windows 上使用 PowerShell 或 CMD 生成 SSH 密钥。可以在 “开始” 菜单中搜索 PowerShell 或 CMD 并打开。
  2. 生成密钥对 输入以下命令生成 SSH 密钥对:ssh-keygen -t rsa -b 4096 -C "snn_adversial"- -t rsa:指定密钥类型为 RSA。- -b 4096:设置密钥长度为 4096 位,以增加安全性。- -C "snn_adversial":注释信息,可用于标识密钥,如使用者名称或用途。在命令执行后,会出现以下提示:生成密钥提示
  3. 保存密钥 系统会提示输入文件的保存路径,建议按默认路径 C:\Users\Leo\.ssh\id_rsa 保存,直接按回车键即可。
  4. 设置密码短语(可选) 系统接着会询问是否设置密码短语,添加密码短语会增加安全性,但为了自动化连接,可以直接按回车跳过。跳过密码短语生成完成后,密钥对会保存在 C:\Users\Leo\.ssh 目录下,包括以下两个文件:- id_rsa:私钥文件,请务必妥善保管。- id_rsa.pub:公钥文件,用于在服务器上配置。密钥生成位置

步骤 2:将公钥上传到服务器

  1. 查看公钥内容 在 Windows 上,查看公钥文件 id_rsa.pub 的内容。通常以 ssh-rsa 开头并包含一长串字符。请复制整个公钥内容,如下图所示:查看公钥
  2. 通过密码登录到服务器 通过以下命令登录服务器(首次登录需要输入密码):ssh -p 端口号 [email protected]
  3. 在服务器上配置公钥 登录服务器后,将公钥添加到 ~/.ssh/authorized_keys 文件中。- 首先,创建 .ssh 目录(若已存在则跳过):mkdir -p ~/.sshchmod700 ~/.ssh- 使用文本编辑器(例如 nano)编辑或创建 authorized_keys 文件:nano ~/.ssh/authorized_keys- 将公钥内容粘贴到 authorized_keys 文件中并保存。- 设置 authorized_keys 的权限,确保仅用户自己可以访问:chmod600 ~/.ssh/authorized_keys修改公钥权限

步骤 3:在 Windows 上配置 SSH 客户端使用密钥连接

  1. 编辑 SSH config 文件 打开 C:\Users\Leo\.ssh 目录,在其中创建或编辑 config 文件(无文件后缀)。在文件中添加以下内容以配置 SSH 连接:Host snn-adversial HostName i-2.gpushare.com Port 33804 User root IdentityFile C:\Users\Leo\.ssh\id_rsa- Host snn-adversial:这是一个连接的别名。- HostName:服务器地址。- Port:服务器的端口号。- User:登录用户名。- IdentityFile:私钥的本地路径,指向刚才生成的 id_rsa 文件。
  2. 测试连接 配置完成后,可以通过以下命令来测试 SSH 连接,无需输入密码:ssh snn-adversial若配置正确,将直接连接到服务器。测试连接

步骤 4:可选 - 使用 SSH Agent 缓存密码短语(如果设置了密码短语)

如果生成密钥时设置了密码短语,可以使用 SSH Agent 来缓存,从而避免每次连接都输入密码短语。

  1. 启动 SSH Agent 在 PowerShell 或 CMD 中输入以下命令启动 SSH Agent:Start-Service ssh-agent
  2. 将私钥添加到 SSH Agent 使用以下命令将私钥添加到 SSH Agent:ssh-add C:\Users\Leo\.ssh\id_rsa
  3. 输入密码短语 添加私钥时会提示输入密码短语,SSH Agent 会缓存此短语,之后的连接无需再次输入。

验证连接

现在,可以通过以下命令验证连接:

ssh snn-adversial

如果一切配置正确,将直接连接到服务器而无需输入密码或密码短语。


通过以上步骤,您已经成功在 Windows 上配置了 SSH 密钥认证,实现无密码自动登录。配置

config

文件和 SSH Agent,可以大大提升连接的便捷性和安全性。

标签: windows ssh 运维

本文转载自: https://blog.csdn.net/qq_22841387/article/details/143575256
版权归原作者 修炼室 所有, 如有侵权,请联系我们删除。

“Windows 系统上配置 SSH 密钥验证,实现无密码登录”的评论:

还没有评论