在 Windows 10 上实现免密码 SSH 登录
前言
在日常开发中,SSH(Secure Shell)作为一种安全的远程登录协议,广泛用于 Linux 和 Windows 系统之间的连接。为了提高效率,我们可以通过配置免密码登录,省去每次连接时输入密码的繁琐过程。
本文将详细介绍如何在 Windows 10 上配置 SSH 免密码登录,类似于 Linux 系统上的 ssh-add
功能。
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
在 Windows 10 上实现免密码 SSH 登录的更多相关文章
- Linux A机器免密码SSH登录B机器
一.问题 如上,A机器经常需远程操作B机器,传输文件到B机器,每次输入帐号密码过于繁琐,下文通过ssh公钥能解免密码操作问题. 二.解决 1.方案 SSH认证采用公钥与私钥认证方式. 2.步骤 1) ...
- 两台linux之间建立信任关系,实现免密码ssh远程登录或scp数据上传
两台linux之间建立信任关系,实现免密码远程登录或数据上传 1.执行ssh-keygen命令,生成建立安全信任关系的证书: linux1上:执行命令 ssh-keygen -t rsa 在程序提 ...
- Windows 10 上的 Git 如何清除密码? Git Credential Manager for Windows
Windows 10 上的 Git 如何清除密码? 因为一台新的电脑是 Windows 10 在第一次使用 Git 要求输入密码时把密码给输错了. 之前提交都是说 Token 错了,不再出现提示密码. ...
- 服务器之间免密码ssh登陆
配置服务器f1(192.168.1.1)与服务器f2(192.168.1.2)之间免密码ssh登陆 一.首先,配置服务器主机名为f1.f2 1.更改/etc/sysconfig下的network文件, ...
- ssh免密码快速登录配置
使用ssh登录服务器的时候,需要输入ip地址.端口.用户名.密码等信息,比较麻烦,容易输错.还好,通过客户端和服务器的配置参数,可实现免密码快速登录.服务器可通过保存客户端的公钥,用于验证客户端的身份 ...
- 免密码 ssh 到其它机器
背景:在配置 hadoop 的时候这样设置会比较方便.目标:A 机器上输入 ssh root@B 可以直接访问,不需要输入密码 步骤: 首先在 A 机器上生成密钥对,一路回车 1 ssh-keygen ...
- 如何在 Windows 10 上安装 WSL 2
翻译自 Joey Sneddon 2020年10月30日的文章<How to Install WSL 2 on Windows 10> [1] 如果您想在最新的 Windows 版本中尝试 ...
- 在Windows 10上安装Oracle 11g数据库出现的问题及解决
在Windows 10上安装Oracle 11g数据库,并且很多次出现过:当安装的进度条进行到快要结束的时候弹出一个提示框.如下: [Java(TM)2 Platform Standard Editi ...
- Windows 10 上,Edge 浏览器不支持插件,因此将不运行 Java
在 Windows 10 上,Edge 浏览器不支持插件,因此将不运行 Java.微软想干嘛?
- DB 查询分析器 6.04 在 Windows 10 上的安装与运行展示
DB查询分析器 6.04 在 Windows 10 上的安装与运行展示 中国本土程序员马根峰(CSDN专访马根峰:海量数据处理与分析大师的中国本土程序员 http://www.csdn.net/art ...
随机推荐
- 不容忽视的PCB测试点,关键时刻可以避免批量事故哦!
PCB测试点是啥子?请看下图: 如果你曾经用过NOKIA手机,每次你打开后盖换电池的时候,每次看到的那两排圆形的点--就是PCB测试点,or you can call it Test Poi ...
- 70 个群都来问我的 AI 日报,是这么做的。
最近我给 FastGPT 用户交流群里接入了 AI 日报,每天早上 10 点会自动向群里推送 AI 日报,让群里的小伙伴们第一时间了解到昨天 AI 领域都发生了哪些大事. 效果大概是这个样子的: 如果 ...
- 数据同步之DataX
目前业务中需要进行数据同步, 考虑使用datax数据同步方式替换掉现有的同步方式 业务场景: 即将业务中每天生成的日志表中的数据部分字段同步到自己的库中,进行后台数据的查询 起因: 之前"大 ...
- Electron(2) - 下载与解压缩
1.下载文件 主线程中调用下载 win.webContents.downloadURL(url) 监听下载事件 //监听下载动作 win.webContents.session.on('will-do ...
- JavaScript ES6基础
1.let声明 1.let不像var有变量声明提升,未声明直接使用会报错 console.log(a); //undefined var a; console.log(b); //报错 let b; ...
- ie浏览器设置允许跨域
前情 在访问测试搭建的测试环境的时候,发现接口因为跨域全部失败了,服务端又不想设置允许跨域,又急于使用,于是想到是不是可以使用跨域浏览器,上一次已解决chrome允许跨域,这一次来设置IE允许跨域 放 ...
- 使用TOPIAM 轻松搞定「Wiki.js」单点登录
本文将介绍 TOPIAM 与 Wiki 集成步骤详细指南. 应用简介 Wiki.js 是一款高度可定制且现代化的开源 Wiki 系统,专为团队知识管理和文档协作设计,具有强大的扩展性和跨平台支持能力. ...
- Python 和 Podman
1. Windows 10 上安装 Python 开始在 Windows 上使用 Python(初学者) 2. 使用 pip Python 的 Microsoft Store 安装包括 pip(标准包 ...
- 加密Python项目代码之把Django或Flask项目打包成exe
目录 python代码仿泄露方案 -方案一:启动起来,把源代码删除 -方案二:pipinstaller 打包成可执行文件 -方案三:做到docker镜像中--->运行容器--->-e pa ...
- 2024年1月Java项目开发指南12:前后端分离项目跨域问题解决
创建config文件夹,创建WebConfig文件 代码如下(可以直接抄) package cc.xrilang.serversystem.config; import org.springframe ...