前言
作为一个IT从业者,经常逛github学习别人的开源项目,对于个人技能提升而言,很有必要。
但国内访问github,实在是太艰难了。
只看到浏览器一直转圈,页面就是加载不出来。
或者干脆浏览器里面提示连接超时之类的。
网上有有些人说是因为DNS污染,给了方案是在ipaddress网站上去查询github的公网ip,然后修改hosts文件(C:\Windows\System32\drivers\etc\hosts),然而,经我自己试验过,效果不是很理想。
同时github的公网ip有多个,还会变化。有些大佬给了github520+SwitchHosts的方案定期刷hosts文件,但这些资源得你先能正常访问到github再说。所以作者也懒得再去不停地折腾了。
今天说一个比较好用的方法---以海外云服务器作为代理去访问github
下面是相应步骤:
1. 开通一个海外云服务器
在这里我要给华为云打一个广告。华为,国货之光,除了手机质量挺不错而出名之外,还有公有云服务器产品。
在华为云的全球云服务专场购买一个小规格的云服务器,数据中心在大陆外,比如香港,新加坡之类。
反正新用户一年99,而大多数IT从业者只是访问github用(顺带再用google搜索资料),1M带宽也足够用了。
2. 虚拟机内创建一个普通账号,禁止root ssh登录,并且修改ssh默认端口
创建账号useradd怎么用,请自行百度。
ssh配置部分修改,根据你购买海外云服务器的操作系统去改就行。
一般在 /etc/ssh/sshd_config 这个文件中,按照文件内部描述去改就行了。具体的可以百度。
3. 测试普通账号的ssh是否连接正常
git bash或者putty之类的提供ssh连接的工具中试验。
4. 给windows上安装bitvise ssh client工具
百度上搜索下载就行。
5. bitvise ssh client打开做相关配置
5.1 login面
在login界面把服务器公网ip和端口填好,右侧认证区域吧用户名填好,认证方式是password,然后把Store encrypted password in profile
勾选上,并在Password输入框填写好密码。
5.2 Options页
在options页中,On Login区域把Open Terminal
和 Open SFTP
去掉勾。
5.3 Services界面
SOCKS/HTTP Proxy Forwarding
区域,这里是本地代理转发地址和端口。把Enabled勾选上,Listen interface
的值填127.0.0.1
,Listen port
是本机监听端口,随便填一个大于1024的高位端口就行,比如我这里填写的是8888 。
5.4 在bitvise 程序界面左下角点Log in登录
6 安装Firefox
7 配置firefox
7.1 允许firefox使用远程dns
- 浏览器地址栏输入 about:config,不要管警告,继续操作
- 查询过滤器里面输入
socks_remote_dns
- 把network.proxy.socks_remote_dns 这一项的值改为true
7.2 设置firefox代理
-
打开菜单-->设置,然后搜索代理
-
打开代理
选择手动配置代理,只填写SOCKS主机,ip和端口和之前bitvise里面services页填写的保持一致。然后选择SOCKS v5 。
8 上网
github自然是能顺畅访问:
比较让人惊喜的是google也能访问:
9后续
如何从github下载代码到本机
海外云服务器上有40G的硬盘,想省事了,直接下载的海外云服务器上。
或者,给git bash设置socks5代理:
git config --global http.proxy 'socks5://127.0.0.1:8888'
git config --global https.proxy 'socks5://127.0.0.1:8888'
然后可以下载代码:
后续不用访问github时候再把socks5代理取消掉:
git config --global --unset http.proxy
git config --global --unset https.proxy