GitHub Enterprise Server 用户:目前不支持通过 HTTPS 端口访问 GitHub Enterprise Server。
要测试是否可以通过 HTTPS 端口使用 SSH,请运行此 SSH 命令
$ ssh -T -p 443 [email protected]
# Hi USERNAME! You've successfully authenticated, but GitHub does not
# provide shell access.
如果成功,那就太好了!如果没有,您可能需要遵循我们的故障排除指南。
注意
443 端口的主机名为 ssh.github.com
,而不是 github.com
。
现在,要克隆存储库,您可以运行以下命令
git clone ssh://[email protected]:443/YOUR-USERNAME/YOUR-REPOSITORY.git
启用通过 HTTPS 的 SSH 连接
如果您能够通过 443 端口 SSH 登录到 [email protected]
,则可以覆盖您的 SSH 设置,以强制任何到 GitHub.com 的连接都通过该服务器和端口运行。
要在您的 SSH 配置文件中设置此项,请编辑 ~/.ssh/config
中的文件,并添加以下部分
Host github.com
Hostname ssh.github.com
Port 443
User git
您可以通过再次连接到 GitHub.com 来测试此方法是否有效
$ ssh -T [email protected]
# Hi USERNAME! You've successfully authenticated, but GitHub does not
# provide shell access.
更新已知主机
切换到 443 端口后,第一次与 GitHub 交互时,您可能会收到一条警告消息,提示在 known_hosts
中找不到主机,或者通过其他名称找到了主机。
# The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
# ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
# This host key is known by the following other names/addresses:
# ~/.ssh/known_hosts:32: github.com
# Are you sure you want to continue connecting (yes/no/[fingerprint])?
假设 SSH 指纹与 GitHub 发布的指纹之一匹配,则可以安全地回答“是”。有关指纹列表,请参阅“GitHub 的 SSH 密钥指纹”。