从SSH远程到Git Push:在Windows上一步到位实现免密码登录
前言
我一直希望在Windows上能像在Linux系统中那样,通过SSH密钥实现免密码远程连接。每次远程连接到服务器时,手动输入密码既麻烦又不太安全,尤其是在我需要频繁操作的情况下。
之前的文章中已经解决了 SSH 登录的问题: 在 Windows 10 上实现免密码 SSH 登录
Windows的SSH支持
回顾一下
Windows自带了一个名为 OpenSSH Authentication Agent 的服务,这个服务能够管理SSH密钥,这意味着我无需额外安装任何第三方工具,就能轻松设置SSH免密码登录。
按照网上的教程,我简单地启动了 OpenSSH Authentication Agent 服务,设置好SSH密钥后,就可以 ssh 免密码连接到服务器了。
Git Push遇到问题
然而,当我尝试通过Git进行 git push 操作时,却仍然被要求输入密码。
明明已经配置好了SSH密钥,为什么Git操作时还是要求输入密码?
显然,仅仅启动OpenSSH服务并没有解决问题。于是,我决定深入分析这个问题的原因,看看是否还有什么地方需要调整。
使用Git Bash测试
为了进一步排查问题,我决定在 Git Bash 中测试一下。
Git Bash是用来执行Git命令的工具,因此我在Git Bash中运行了 ssh-add -l 命令,想确认是否正确加载了我的SSH密钥。结果发现,Git Bash中的 ssh-agent 并没有启动!
这时我突然意识到,Git Bash和Windows自带的SSH工具似乎并不完全兼容,Git并没有默认使用Windows的SSH工具。
Git使用了自己的SSH工具
接下来,我进一步探讨了这个问题。
我了解到,Git实际上有自己的SSH工具,而并不会默认使用Windows系统中的OpenSSH工具。
Git自带的工具和Windows自带的工具是不同的,因此,即使在Windows中配置了OpenSSH Authentication Agent服务,Git也不会自动使用它。
配置Git使用Windows默认SSH工具
既然Git没有使用Windows自带的SSH工具,那就需要手动配置它。我通过执行以下命令告诉Git使用Windows的默认SSH工具:
git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe"
这条命令的作用是,让Git在进行操作时,使用Windows系统中的 ssh.exe 来处理SSH连接,而不是使用Git自带的工具。配置完成后,我再次尝试 git push 操作。
全部搞定
这次,当我运行 git push 时,一切都顺利进行,没有再提示我输入密码。通过这种方式,我成功地将Git操作与Windows的SSH配置结合起来,实现了免密码登录。现在,无论是进行远程服务器的SSH连接,还是使用Git进行版本控制,我都不再需要每次输入密码。
从SSH远程到Git Push:在Windows上一步到位实现免密码登录的更多相关文章
- 【Hadoop系列】linux下 root用户免密码登录远程主机 ssh
SSH原理:[Hadoop系列]linux SSH原理解析 操作环境: CentOS 6.5 操作对象: 用户A主机和远程主机B 正文部分:斜体加粗代表linux指令. linux下 非root用户免 ...
- git 配置 https和ssh 免密码登录 常用操作命令
git 配置 https和ssh 免密码登录 一. 区分https clone 和 ssh clone 不同的克隆方式导致校验方式不同,对应的免秘方式也不一样. https通过记住账号密码免登,ssh ...
- git hub在windows上的使用
每次使用都需要查找,太麻烦了. 转过来自己用! git hub在windows上的使用 一. 首先安装客户端 Git for Windows. 按提示默认安装后,进入git bash(桌面上) 首先检 ...
- SSH免密码登录和Git免密操作
SSH免密码登录和Git免密操作 每次打完包后都需要把包传到对应的服务器上从而让测试人员下载安装,但是每次ssh或scp时都需要重新输入密码:使用git代码托管平台只要修改了密码就需要输入密码.本文主 ...
- SSH 无密码访问其它机器 和 Windows 上 putty 无密码访问 Linux 机器
1. 从一台 Linux 机器(ubuntu1)上无密码访问其它机器(ubuntu2) (1)登录 ubuntu1 并切换到用户比如 s1 (2)运行 ssh-keygen -t rsa (3)运行c ...
- jenkins发布项目到远程主机上,配置linux使用SSH免密码登录
一.首先要配置两台linux如何使用SSH免密码登录,这样脚本执行scp命令以及远程执行脚本都不需要输入密码: A为本地主机(即用于控制其他主机的机器,jenkins服务器) ; B为远程主机(即被控 ...
- 如何配置ssh免密码登录
[TOC] 如果你在管理一堆unix机器,每次登录都要输入密码是挺烦的事情,一方面为了安全我们一般不会将所有机器的密码都设置成一样,另一方面就算一样每次都输入一遍也很麻烦. 这种情况下我们一般是用ss ...
- Linux 配置ssh 免密码登录
在平常应用中,我们经常会登录到其他主机,比如说服务器,每次都需要用户名和密码. 我们可以通过ssh免密码登录服务器而不需要输入密码. 现在有一台ubuntu的阿里云服务器,称之为 server. 公 ...
- CentOS服务器配置SSH免密码登录
由于工作需要,经常要登录到多台服务器远程操作,每次都是ssh user@host:port 再输入密码,时间长了,难免觉得乏味-- 故而从度娘那里扒来了一些让SSH免密码登录的办法,其实这也是使用Gi ...
- ubuntu ssh 免密码登录
1 ssh 是什么? ssh 是一种 加密协议,ssh 是两个加密的密码,一个是公钥一个是私钥,公钥加密的信息只有是要才能解密.ssh协议可用于服务之间的通信.例如:登录验证,git的授权等等 2 s ...
随机推荐
- Numpy本征值求解
技术背景 Numpy是一个Python库中最经常被用于执行计算任务的一个包,得益于其相比默认列表的高性能表现,以及易用性和可靠性,深受广大Python开发者的喜爱.这里介绍的是使用Numpy计算矩阵本 ...
- bat隐藏窗口运行
在bat脚本开头添加: if "%1" == "h" goto begin mshta vbscript:createobject("wscript. ...
- 零基础学习人工智能—Python—Pytorch学习(十一)
前言 本文主要介绍tensorboard的使用. tensorboard是一个可视化的,支持人工智能学习的一个工具. tensorboard的官方地址:https://www.tensorflow.o ...
- 数据万象推出智能检索MetaInsight,现已开启限时公测
海量文件的分析统计一直是对象存储COS的热点需求,伴随AIGC飞速迭代发展,在众多不同模态素材的海洋中,用户也急需更高效地管理和利用多媒体内容,打破传统搜索的桎梏. 数据万象推出的智能检索 MetaI ...
- 如何安装和使用 Latte Dock
你知道什么是"停靠区Dock" 吧,它通常是你的应用程序"停靠"的底栏,以便快速访问. 许多发行版和桌面环境都提供了某种停靠实现.如果你的发行版没有" ...
- springboot搭建http2服务器和h2c服务器 h2 的http/https 请求服务器
HTTP2.0特性通俗易懂篇:https://www.cnblogs.com/yingsmirk/p/5248506.html深入了解篇:https://www.jianshu.com/p/67c54 ...
- Qt编写的项目作品9-音频综合应用示例
一.功能特点 自动计算音频振幅,绘制音频振幅曲线和音频数据曲线. 支持音频录制,可选音频输入设备.采样频率.通道等参数,Qt5默认保存wav格式,Qt6默认保存mp3格式,Qt6可选wma.aac等格 ...
- Qt编写地图综合应用14-离线地图下载
一.前言 网上其实有很多各种各样的离线地图下载器,大部分都是要收费的,免费的要么是限制了下载的瓦片数量或者级别,要么是下载的瓦片图打上了水印,看起来很难看,由于经常需要用到离线地图,摆脱这个限制,特意 ...
- eclipse中汉字横着的问题解决
最近在eclipse中加上中午注释,出现那种汉字是横着的情况,解决方案如下: 方法一: 同一种字体有两种显示方式,比如Fixedsys Excelsior 3.01和@Fixedsys Excelsi ...
- vue3-openlayers基础知识简介
vue3-openlayers基础知识简介 OpenLayers 3 Primer openlayers6:入门基础(一) openlayers 入门教程 一.基础概念介绍 地图(Map) OpenL ...