尝试使用 SSH over HTTP 连接时通过 [IP] 端口 443 重置连接

Posted

技术标签:

【中文标题】尝试使用 SSH over HTTP 连接时通过 [IP] 端口 443 重置连接【英文标题】:Connection Reset by [IP] Port 443 when trying to use SSH over HTTP connection 【发布时间】:2022-01-05 11:50:16 【问题描述】:

需要有关 Github 问题的帮助。 我一直在使用 jenkins 从 Github 自动部署我的代码。我一直在使用 SSH 进行身份验证。 直到最近我的公司网络部门决定关闭 SSH 的 22 端口,它才能正常工作, 这使我与 Github 的连接超时失败。

阅读了很多解决方法,看来我可以通过为我的 ssh 连接创建配置文件来通过 HTTPS 端口使用 SSH。所以我创建了这个配置:

Host github.com
Hostname ssh.github.com
Port 443
User git

我的 git 成功监听了 443 端口,但它带来了不同的问题:

一直在寻找有关此问题的信息,其中大部分都说端口被 [ip] 错误关闭的原因是因为我的 IP 被主机列入黑名单,在这种情况下是 Github。我认为情况并非如此。 有没有人知道这可能是什么原因造成的?

然后,很多人使用的解决方法是将 Github 公钥添加到我的服务器 known_hosts。我试过了,但它不起作用。有人知道这个问题的解决方法吗?

【问题讨论】:

【参考方案1】:

试过了还是不行

这取决于你添加了什么。

尝试添加ssh-keyscan ssh.github.com的输出

【讨论】:

你好,我已经将 ssh-keyscan ssh.github.com 添加到我的 known_hosts,结果是我的第二个屏幕截图,通过 [IP] 端口 443 重置连接 @oRoberto 为了测试,您是否尝试使用 HTTPS URL 而不是 SSH? 你能详细说明一下吗?你的意思是我应该尝试使用 https url 而不是 SSH 从 github 拉取或获取?如果是这样,现在我仍然无法使用 SSH 身份验证连接到 github。所以没试过 @oRoberto 是的,我们的想法是检查使用https://github.com/<me>/<myrepo> URL 的克隆是否有效。 嗨,我已经尝试过了,当然我可以使用 HTTPS 进行克隆。但是当我在我的詹金斯上尝试它时它不起作用。所以我找到了另一种解决方法,并将其发布在不同的帖子上。谢谢你的帮助【参考方案2】:

我尝试像@VonC 推荐的那样使用 https URL。 它适用于我的服务器,但不适用于我的詹金斯。

所以我使用个人访问代码代替,您可以找到有关如何创建个人访问令牌的教程personal access token tutorial

然后你可以像这样设置你的 repo url:

https://<access token>@github.com/<userName>/<repository>.git

它现在有效,所以我将关闭此线程。如果我的网络管理员有任何解决方案,将更新。

谢谢。

【讨论】:

这应该确实有效,即使在 URL 中包含 PAT 不是最佳做法(最好在 Jenkins 凭据中注册)

以上是关于尝试使用 SSH over HTTP 连接时通过 [IP] 端口 443 重置连接的主要内容,如果未能解决你的问题,请参考以下文章

jenkins publish over ssh是啥意思

FTPS (FTP over SSL) vs. SFTP (SSH 文件传输协议): 我们如何做出选择

X Window over SSH 不会出现

jenkins.plugins.publish_over.BapPublisherException:无法连接和初始化 SSH 连接消息 [Auth 失败]

python Paramiko SFTP通过RSA密钥传输文件http://code.activestate.com/recipes/576810-copy-files-over-ssh-using-

jenkins插件--publish over ssh