在 Windows 10 上实现免密码 SSH 登录
在日常开发中,SSH(Secure Shell)作为一种安全的远程登录协议,广泛用于 Linux 和 Windows 系统之间的连接。为了提高效率,我们可以通过配置免密码登录,省去每次连接时输入密码的繁琐过程。
目录9 个章节
前言
在日常开发中,SSH(Secure Shell)作为一种安全的远程登录协议,广泛用于 Linux 和 Windows 系统之间的连接。为了提高效率,我们可以通过配置免密码登录,省去每次连接时输入密码的繁琐过程。
本文将详细介绍如何在 Windows 10 上配置 SSH 免密码登录,类似于 Linux 系统上的 ssh-add 功能。
注意本文仅适用于 Windows 10 系统,Windows 11 的配置方法请参考 在 Windows 11 上启用 ssh-agent。
1. 准备工作:确保 OpenSSH 已安装
在开始配置之前,确保你的 Windows 10 上已安装 OpenSSH 客户端。这里我们先检查并安装 OpenSSH:
- 打开 设置 -> 应用 -> 可选功能,查找是否有 OpenSSH 客户端 和 OpenSSH 服务。
- 如果没有安装,点击 添加功能,选择 OpenSSH 客户端 进行安装。
2. 启动 OpenSSH Authentication Agent
要实现免密码登录,我们需要启用 ssh-agent 服务,这个服务负责存储和管理 SSH 密钥。
- 打开 服务管理器:按下
Win + R,输入services.msc,然后回车。 - 在服务列表中找到 OpenSSH Authentication Agent,右键点击并选择 启动,然后将启动类型设置为 自动。
或者,你也可以通过 PowerShell 来启动 ssh-agent 服务:
Start-Service ssh-agent
Set-Service -Name ssh-agent -StartupType Automatic
3. 生成 SSH 密钥对
如果你还没有生成 SSH 密钥,可以通过以下步骤创建:
-
打开终端(命令提示符或者 PowerShell)。
-
输入以下命令生成 SSH 密钥:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"按提示操作(默认存储路径为
~/.ssh/id_rsa)。 -
输入密钥存储位置和密码(如果不想设置密码,可以直接按回车跳过)。
4. 将 SSH 密钥添加到 ssh-agent
接下来,需要将生成的私钥添加到 ssh-agent 中,以便在连接时自动使用密钥进行认证。
-
打开终端(命令提示符或者 PowerShell)。
-
输入以下命令加载密钥:
ssh-add ~/.ssh/id_rsa
这样,ssh-agent 就会管理你的私钥,免去每次连接时输入密码的需求。
5. 将公钥复制到远程服务器
为了让远程服务器识别你的 SSH 密钥,你需要将公钥添加到服务器的 ~/.ssh/authorized_keys 文件中。你可以手动复制公钥,或者使用 ssh-copy-id 工具来完成:
-
复制公钥:
cat ~/.ssh/id_rsa.pub -
将公钥复制到远程服务器的
~/.ssh/authorized_keys文件中。
如果你使用 ssh-copy-id,命令如下:
ssh-copy-id user@remote_host
6. 测试免密码 SSH 登录
完成以上配置后,你可以尝试连接远程服务器:
ssh user@remote_host
如果配置成功,你将无需输入密码即可直接连接。
总结
通过以上步骤,你可以轻松实现 Windows 10 上的免密码 SSH 登录功能,类似于 Linux 上的 ssh-add。这种配置不仅提升了连接的效率,也使得远程管理变得更加便捷和安全。如果遇到任何问题,可以参考本文的解决步骤进行排查。
参考资料
- OpenSSH 官网 - https://www.openssh.com/
- Windows 10 OpenSSH 客户端文档 - https://docs.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse
_EOF_
在 Windows 10 上实现免密码 SSH 登录
- 本文作者:
- 程序设计实验室
- 版权声明:
- 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
相关文章
Kali-Linux-on-WSL2安装与简单配置指南
Windows在更新到2004版本之后正式开启了WSL2的支持,这次是完整的运行在HyperV虚拟机中的Linux系统了,可以称之为真正的Linux了,难不成Windows即将成为最好的Linux发行版? 实际体验下来还是可以的,不过小问题不少,爱折腾的同学安排一手,对提高Windows平台下的开发体验还是有很大帮助的~ Kali on WSL2安装指南 升级系统 首先检查当前系统版本,按Win+
2021-12-18 · Windows · 约 1 分钟
WSL小技巧:切换到zsh以及加入右键菜单
切换到zsh 说明 在 Windows Subsystem for Linux 中,执行 chsh -s /bin/zsh 并不能成功地将默认 shell 修改为 zsh。在打开 WSL 时,默认 shell 仍然为 bash。 这是因为WSL 在启动时并没有执行 login 相关的组件,而这些组件和默认 shell 有关。Microsoft 已经知晓了这个问题,但并没有计划去解决。 方法 我们可
2021-12-18 · Windows · 约 1 分钟
Windows设置Pageant开机自动启动并且加载秘钥
场景 用Linux的时候ssh和git这些很方便,因为只要一次ssh-add就可以一劳永逸,以后需要认证的时候ssh-agent会帮我们搞定,不需要输入秘钥的密码。 其实Windows也可以实现这种生产力解放,就是用putty附带的工具里的Pageant。 Pageant主要负责和服务器端进行身份验证,但是每次在启动Pageant后都需要手动的加载秘钥文件,本文就是要介绍让Pageant开机自动加
2021-12-18 · Windows · 约 1 分钟
修复winget命令找不到的问题
微软官方包管理器winget在Windows 10 1809以上版本中,用于快速安装、更新和管理应用程序。本文介绍了因系统环境变化导致winget命令失效的问题,分析了可能原因,并提供了解决方案及预防措施,包括修复命令、定期更新检查、备份环境变量等。
2025-04-04 · Windows · 约 1 分钟
讨论
共 0 条加载评论中…