共计 2555 个字符,预计需要花费 7 分钟才能阅读完成。
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 端口的问题;
更多优质内容请关注公号:汀丶人工智能;会提供一些相干的资源和优质文章,收费获取浏览。