背景
- 由于
github
的安全限制,只能通过SSH
方式推送代码,并且在github
的Profile Settings
中已经配置好SSH
秘钥。 - 某一天,通过
ssh
方式拉取和推送github
的代码超时失败。DDDD。
解决方案
前置工具
本地需要安装有梯子。
本地需要安装有请求转发工具,我这里使用的是connect
,提前安装好:
brew install connect
全局SSH代理配置
创建该文件~/.ssh/config
,内容如下:
config
Host github.com
Hostname ssh.github.com
User git
Port 443
# 自己的私钥所在路径
IdentityFile "~/.ssh/id_ed25519"
# SOCKS代理设置方法
ProxyCommand connect -S 127.0.0.1:7890 %h %p
# HTTPS代理设置方法
# ProxyCommand connect -H 127.0.0.1:7890 %h %p
连接测试
执行以下命令测试结果:
% ssh -T git@github.com
Hi gqcn! You've successfully authenticated, but GitHub does not provide shell access.