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端口的问题;

更多优质内容请关注公号:汀丶人工智能;会提供一些相干的资源和优质文章,收费获取浏览。