【问题标题】:Setup SSH keys created by PuTTY in GitLab在 GitLab 中设置 PuTTY 创建的 SSH 密钥
【发布时间】:2020-10-06 22:00:09
【问题描述】:

我已经使用 PuTTYgen 生成了一个公钥和一个私钥,并将公钥添加到我的 GitLab 帐户,但是当我尝试克隆存储库时,它仍然需要密码。

我已阅读this site的以下说明

  1. 安装 Putty 和相关实用程序

  2. 在Windows中设置系统环境变量(控制面板\系统和安全\系统 --> 并点击左侧窗格中的“高级系统设置”。然后点击“环境变量”) GIT_SSH=%path_to_plink.exe% (注意 plink.exe 进入你安装 Putty 的地方)

  3. 使用 puttygen.exe 生成 ssh 密钥(ssh2-rsa,4096,comment=GitLab,并设置密码)

  4. 将密钥添加到 pageant.exe 并将公钥添加到您的 GitLab 配置文件

  5. 确保您启动一个新的命令外壳,以便 git 识别 GIT_SSH 值

  6. 首先尝试这两个命令来检查连接。这应该会给你一个验证连接的弹出窗口

  7. 设置 Git putty git@gitlab.com:%user%/%repo.git%

用法:

  1. 从 Putty 文件夹启动 pagent.exe
  2. 向 pageant.exe 添加密钥

我仍然不明白第 5 步,并且在第 6 步中我没有看到用于执行测试的 shell 命令。

谁能帮忙?

更新:

问题是我没有重新启动我的 cmd。但现在我收到这条消息: 服务器的主机密钥未缓存在注册表中。你 无法保证服务器是您的计算机 认为是。 服务器的 ssh-ed25519 密钥指纹为: ssh-ed25519 255 d7:0d:ca:f2:c1:01:46:80:68:4c:5d:e6:d4:52:f9:16 如果您信任此主机,请输入“y”将密钥添加到 PuTTY的缓存并进行连接。 如果您只想进行一次连接,无需 将密钥添加到缓存中,输入“n”。 如果您不信任此主机,请按 Return 放弃 联系。 将密钥存储在缓存中? (是/否)

而且它不允许我在那里输入任何内容。

【问题讨论】:

  • 我认为问题在于我在凭据管理器中的凭据错误。我改变了它们,它现在可以工作了。
  • 好的,我已经相应地编辑了答案。

标签: git ssh gitlab putty


【解决方案1】:

确保您启动一个新的命令外壳,以便 git 识别 GIT_SSH 值

输入git bash,然后输入“set|grep GIT_SSH

如果结果为空,则您打开会话的 CMD 会话没有继承您的 Windows 用户环境变量。打开一个新的 CMD。

但我不建议使用 Putty。用于 Windows 的 Git 带有 openssh,在 git bash 会话中应该足够了

ssh-keygen -t rsa 
<enter a passphrase>

在 GitHub 上查看更多信息(也适用于 GitLab)“Generating a new SSH key and adding it to the ssh-agent

OP Petar Yakov 报告必须在凭据管理器中注册其 GitLab 帐户的密码。
然后SSH访问工作。

【讨论】:

  • 感谢您的回答。我已经尝试过 keygen 命令,它工作正常,但我正在使用 PuTTY 连接到 ssh 服务器,我认为如果我为服务器和 gitlab 使用 1 个公钥会很酷。
  • 我用一个新的奇怪问题更新了这个问题。你知道吗?
  • @PetarYakov 你应该可以输入'y'。从命令行尝试 ssh @,只是为了触发相同的消息并输入 y。然后重试您的 putty 命令:如果 ~/.ssh/known_hosts 已更新,则不应再次提问。
  • 当我尝试克隆存储库以及现在尝试连接到 ssh 服务器时会出现此消息。在这种情况下,我应该为 @ 键入什么内容?
  • @PetarYakov 如果您的远程仓库位于 gitlab.com,那将是 ssh git@gitlab.com,再次触发问题。但是,putty 以不同于 ssh 的方式存储这些签名:ssh.com/ssh/putty/putty-manuals/0.68/Chapter2.html#gs-hostkey。再次检查您是否可以在尝试使用 putty 连接到服务器时随时回答“y”。
猜你喜欢
  • 2020-03-01
  • 2022-09-23
  • 2018-07-17
  • 2014-02-07
  • 2010-09-29
  • 1970-01-01
  • 2016-07-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多