由于公司使用HTTP代理服务器上网,Github一直无法使用, 之前折腾几次都没搞定, 最近正好有空,因此花了两天时间各种百度,终于搞定了,特记录一下。
1 屏蔽NTLM验证
公司网络代理上网需要验证上网,因此首先需要建立一个无需身份验证的普通HTTP代理,Cntlm 正是用来做这件事, windows 下安装和配置很简单,直接从https://sourceforge.net/projects/cntlm/files/ 下载安装,然后从程序中打开cntlm.ini,修改如下内容:
Username yourusername
Domain domain
Password password
Proxy http-proxy-server-ip:port
修改后保存关闭。然后在 程序-Cntlm-Start Cntlm Authentication Proxy, 然后代理就可以不用用户名和密码使用127.0.0.1:3128 代理上网了
2 添加rsa公钥到github
3 配置config
使用git Bash 创建config file vi ~/.ssh/config ,内容为:
Host github.com
ProxyCommand ~/.ssh/ssh-https-tunnel %h %p
Port 443
Hostname ssh.github.com
Host bitbucket.org
ProxyCommand ~/.ssh/ssh-https-tunnel %h %p
Port 443
Hostname altssh.bitbucket.org
其中第二段是因为我同时使用了bitbucket,如果只使用github的话只用上面一部分即可, 然后:wq 保存退出
4 下载 ssh-https-tunnel,地址是http://zwitterion.org/software/ssh-https-tunnel/ssh-https-tunnel 直接保存在~/.ssh目录下。打开修改内容如下:
# Proxy details
my $host = "127.0.0.1";
my $port = 3128;
5 成功, 可以用 ssh github.com 测试。
Leave a Reply