Gitlab:无法在家中进行 SSH(Windows)
Posted
技术标签:
【中文标题】Gitlab:无法在家中进行 SSH(Windows)【英文标题】:Gitlab: can't SSH from home (Windows) 【发布时间】:2015-09-06 14:37:39 【问题描述】:我无法通过我的家用 PC 让 SSH 为 GitLab 工作。
要明确: 1. SSH 在同一台机器上对 BitBucket 工作正常 2. SSH key 已添加且正确 3. 我通过 *** 连接(工作中)
当我尝试使用 -v -v -v 参数连接时得到以下输出:
$ ssh git@[server] -v -v -v
OpenSSH_6.6.1, OpenSSL 1.0.1i 6 Aug 2014
debug1: Reading configuration data /c/Users/[me]/.ssh/config
debug2: ssh_connect: needpriv 0
debug1: Connecting to [server] [ip] port 22.
debug1: connect to address [server] port 22: Attempt to connect timed ` out wssh: connect to host [server] port 22: Bad file number
这可能是服务器配置问题吗?
编辑:
我生成了一个新密钥并配置了 ssh 以使用它。 这是输出:
$ ssh -Tvv git@[server]
OpenSSH_6.6.1, OpenSSL 1.0.1i 6 Aug 2014
debug1: Reading configuration data /c/Users/[me].ssh/config
debug1: /c/Users/[me]/.ssh/config line 5: Applying options for [server]
debug2: ssh_connect: needpriv 0
debug1: Connecting to [server] [IP] port 22.
debug1: connect to address [IP] port 22: Attempt to connect timed out without establishing a connection
ssh: connect to host [server] port 22: Bad file number
【问题讨论】:
【参考方案1】:SSH 在同一台机器上适用于 BitBucket SSH 密钥已添加且正确
我希望它不是已添加到 GitLab 的 相同 ssh 密钥,而是不同的公共密钥(对于相应的 不同的私有 ssh 密钥)
在这种情况下,您需要一个引用两个公钥的 ~/.sssh/config,如“How to set up two SSH keys for two GitLab accounts and push/pull by using TortoiseGit?”:
# my primary account for BitBucket
Host bitbucket
User git
HostName bitbucket.com
PreferredAuthentications publickey
IdentityFile C:/Users/username/.ssh/id_rsa1
# for GitLab server
Host gserver
User git
HostName server
PreferredAuthentications publickey
IdentityFile C:/Users/username/.ssh/id_rsa2
同时,检查以下输出:
ssh -Tvv gserver
('gserver
' 是 .ssh/config
文件的条目,它引用正确的私有 ssh 密钥和用户 'git
')
【讨论】:
更新了我的帖子,因为我不能在回复中使用代码,还没有骰子。 @ReinierKaper 如果您希望使用 ssh/config,则需要使用 Host 条目进行测试,例如ssh -Tvv gserver
。否则不会使用右键。我已经相应地编辑了我的答案。以上是关于Gitlab:无法在家中进行 SSH(Windows)的主要内容,如果未能解决你的问题,请参考以下文章
无法通过新 GitLab 容器上的 ssh 密钥进行身份验证