一句话方案:配置.ssh/config文件通过HTTPS端口进行SSH连接(443端口)
参考链接: Using SSH over the HTTPS port
有时,防火墙拒绝完全允许 SSH 连接。如果不能选择使用带有凭证缓存的 HTTPS 克隆,您可以尝试使用通过 HTTPS 端口建立的 SSH 连接进行克隆。大多数防火墙规则应该允许这样做,但代理服务器可能会干扰。
测试是否可以通过HTTPS端口进行SSH连接:
ssh -T -p 443 [email protected]
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.
如果您可以通过HTTPS端口进行SSH连接,则可以使用以下命令克隆:
git clone ssh://[email protected]:443/USERNAME/REPOSITORY.git
修改ssh配置文件:
vim ~/.ssh/config
添加以下内容:
Host github.com
HostName ssh.github.com
Port 443
User git
测试是否有效
ssh -T [email protected]
> Hi USERNAME! You've successfully authenticated, but GitHub does not
> provide shell access.
第一次连接,更新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])?
回答’YES’,加入known_hosts配置文件,以后就不会再提示了
建立连接