FastGithub:github 加速神器,解决 github 打不开、用户头像无法加载、releases 无法上传下载、git-clone、git-pull、git-push 失败等问题。
FastGithub:github 加速神器,解决 github 打不开、用户头像无法加载、releases 无法上传下载、git-clone、git-pull、git-push 失败等问题。
github 加速神器,解决 github 打不开、用户头像无法加载、releases 无法上传下载、git-clone、git-pull、git-push 失败等问题。
之前尝试过手动修改 host 文件来解决网站的访问问题 以及更换网络但还是有时候无法如愿的访问 GitHub
相关说明:
fastgithub 不具备“翻墙”功能,也没有相关的计划
fastgithub 不支持 Windows7 等已被发行方停止支持的操作系统,并且也不会主动提供支持
fastgithub 不能为您的游戏加速
fastgithub 没有主动在 github 之外的任何渠道发布
1. 工作原理
从公共 dns 服务器拿到 github 的大量 ip 数据,检测哪些 ip 可用,哪些 ip 访问速度最佳,然后编写一个本地版的 dns 服务,当要解析 github 相关时,返回这个最佳 ip。
修改本机的 DNS 服务指向 FastGithub 自身
解析匹配的域名为 FastGithub 自身的 IP
请求安全 DNS 服务 (dnscrypt-proxy) 获取相应域名的 IP
选择最优的 IP 进行 SSH 或 HTTPS 反向代理
2 部署方式
2.1 windows-x64 桌面
win 下使用最方便,解压后直接双击运行 FastGithub.UI.exe 即可,自带图形界面。
双击运行 FastGithub.UI.exe
解压下载的 zip 包, 将文件夹放到合适位置,找到 FastGithub.UI.exe, 双击执行即可
2.2 windows-x64 服务
1.在使用 GitHub 前需要打开并保证 Fast GitHub 在运行状态
2.在安装完成之后可以直接点开 fastgithub 的执行文件就可以运行程序,顺利连接到 Github。
如果不能正常打开.exe 的执行文件的话还是使用命令去启动
fastgithub.exe start
// 以 windows 服务安装并启动fastgithub.exe stop
// 以 windows 服务卸载并删除
2.3 linux-x64 终端
x64 版是针对 PC 使用的,2.0.6 版开始支持采用 64 位 arm cpu 的单片机,如树莓派,jetson nano 等。解压缩后,进入目录运行已编译好的可执行文件 fastgithub
sudo ./fastgithub
设置系统自动代理为
http://127.0.0.1:38457
,或手动代理 http/https 为127.0.0.1:38457
2.4 linux-x64 服务
sudo ./fastgithub start
// 以 systemd 服务安装并启动sudo ./fastgithub stop
// 以 systemd 服务卸载并删除设置系统自动代理为
http://127.0.0.1:38457
,或手动代理 http/https 为127.0.0.1:38457
ubuntu 系统只能识别 crt 格式的证书,而目前的代码里只有 cer 格式。其实他们都是纯文本格式,只是后缀的区别,可以直接重命名使用。
$ sudo cp cacert/fastgithub.cer /usr/local/share/ca-certificates/fastgithub.crt
$ sudo update-ca-certificates
2.5 macOS-x64
双击运行 fastgithub
安装 cacert/fastgithub.cer 并设置信任
设置系统自动代理为
http://127.0.0.1:38457
,或手动代理 http/https 为127.0.0.1:38457
2.6 docker-compose 一键部署
准备好 docker 18.09, docker-compose.
在源码目录下,有一个 docker-compose.yaml 文件,专用于在实际项目中,临时使用 github.com 源码,而做的 demo 配置。
根据自己的需要更新 docker-compose.yaml 中的 sample 和 build 镜像即可完成拉 github.com 源码加速,并基于源码做后续的操作。
3. 软件功能
提供域名的纯净 IP 解析;
提供 IP 测速并选择最快的 IP;
提供域名的 tls 连接自定义配置;
google 的 CDN 资源替换,解决大量国外网站无法加载 js 和 css 的问题;
4 证书验证
4.1 git
git 操作提示SSL certificate problem
需要关闭 git 的证书验证:git config --global http.sslverify false
4.2 firefox
firefox 提示连接有潜在的安全问题
设置->隐私与安全->证书->查看证书->证书颁发机构,导入 cacert/fastgithub.cer,勾选“信任由此证书颁发机构来标识网站”
5 安全性说明
FastGithub 为每台不同的主机生成自颁发 CA 证书,保存在 cacert 文件夹下。客户端设备需要安装和无条件信任自颁发的 CA 证书,请不要将证书私钥泄露给他人,以免造成损失。
6 合法性说明
《国际联网暂行规定》第六条规定:“计算机信息网络直接进行国际联网,必须使用邮电部国家公用电信网提供的国际出入口信道。任何单位和个人不得自行建立或者使用其他信道进行国际联网。”FastGithub 本地代理使用的都是“公用电信网提供的国际出入口信道”,从国外 Github 服务器到国内用户电脑上 FastGithub 程序的流量,使用的是正常流量通道,其间未对流量进行任何额外加密(仅有网页原有的 TLS 加密,区别于 VPN 的流量加密),而 FastGithub 获取到网页数据之后发生的整个代理过程完全在国内,不再适用国际互联网相关之规定。
参考链接
https://github.com/dotnetcore/FastGithub
安装 GitHub 上 FastGithub 的最新版本: https://github.com/dotnetcore/fastgithub/releases
修复非 windows 平台启动后可能异常而停止的问题;
修复 windows 平台拦截了非回环 IP 的 Tcp80 和 443 端口的问题;
更多优质内容请关注公号:汀丶人工智能;会提供一些相关的资源和优质文章,免费获取阅读。
版权声明: 本文为 InfoQ 作者【汀丶人工智能】的原创文章。
原文链接:【http://xie.infoq.cn/article/b697095f5ea8d73e3538ad0cc】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。
评论