无法匹配git的ssh密钥。改为使用本地指纹?

时间:2015-02-26 06:06:40

标签: linux windows git ssh

我的目标是在我的Linux服务器盒上设置git,这样我就可以从我的Windows机器提交/推送批处理文件。 我希望有类似于我过去使用svn的方式,这样我就可以创建一个具有某些读/写权限的用户。我很高兴它是ssh key依赖。 到目前为止,每当我尝试在我的计算机和服务器上放置一个ssh密钥时,它就会忽略它并自行创建:

The authenticity of host 'xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
Are you sure you want to continue connecting (yes/no)?

这意味着我每次都必须插入一个密码,这样我的批处理文件解决方案就无法工作了。

我将密钥放在我的Windows机器上的msysgit安装目录中的“C:/Users/Ryan/.ssh/”和“C:/ Program Files(x86)/Git/.ssh/”中。我还将它安装到我的服务器上给建议的git用户。我在git documentation之后进行了基本安装:   - 使用puttygen生成自己的SSH密钥。   - 将其复制到我的服务器并将其捕获到/home/git/.ssh/中的authorized_keys   - 初始化裸git存储库等。

我可以推/拉但我必须使用RSA指纹并使用git帐户密码登录而不是使用ssh密钥。

我做错了什么它实际上应该像这样工作?

我还没有完全阅读过制作一个git守护进程,也许这就是我追求的目标?

1 个答案:

答案 0 :(得分:1)

确保从msysgit发行版开始使用git-cmd.bat进行DOS会话:这将正确设置HOME环境变量(通常为%USERPROFILE%)。

公开(id_rsa.pub)和私有(id_rsa)密钥需要位于%HOME%\.ssh

消息The authenticity of host应该只在第一个ssh连接中出现一个消息。完成后,请不要删除它创建的%HOME%\.ssh\known_hosts文件。