Skip to main content

Command Palette

Search for a command to run...

通过UCloud GlobalSSH加速github推拉速度/暴露内网替代花生壳

Published
1 min read
通过UCloud GlobalSSH加速github推拉速度/暴露内网替代花生壳

前话

本来正在想重构 growerlab 的权限功能 github.com/growerlab,考虑到未来权限的验证是一件非常麻烦的事,以及在其他微服务的功能通用性上,所以打算重新设计权限能力。

当然,功能是跟在 ONES 的同事讨论沟通的设计,非原创,改天推到仓库中。

ONES 是一个非常棒的项目管理系统,欢迎大佬们尝试使用。

UCloud GlobalSSH 的妙用

首先感谢 ucloud 的 GlobalSSH 功能,这个太棒了!希望不要停掉这个服务(目前免费,啥时候收费也支持一波!)

目前我主要用来做 github 的推拉加速、暴露内网替代花生壳。

github 推拉加速

因为国内众所周知的原因,我们使用 github 推拉代码非常的卡、慢。

但是其实我们可以通过 TCP 级别的代理转发 SSH 流量。

如果自建一个 VPS 来做这个事情,其实使用、维护成本还是比较高的。

所以我们可以通过 UCloud 的 GlobalSSH 服务(所谓是全球 SSH 加速服务?)

亲测可行。

截图

截图2

创建一个你的 GlobalSSH 服务即可,通过 ping github.com 即可拿到服务器地址。

然后我们得到「加速域名」。

比如现在我们要加速 github 项目。

这个项目现在的 ssh 地址是 git@github.com:xxx/xxx.git

现在我们将他改成 git@xxxx.ipssh.net:xxx/xxx.git

注意加粗部分就是我们的加速服务器地址。

然后我们在 github 项目目录下执行:

$ git remote set-url origin git@xxxx.ipssh.net:xxx/xxx.git

另外一种简单方法

$ vim ~/.ssh/config

新增配置:

Host github.com User git Hostname 52.xxx.xxx.xxx.ipssh.net Port 22

这样所有的 github.com 走 ssh 时,都会走该 hostname

完成替换后就是使用新的加速地址了。

暴露内网替代花生壳

因为最近做飞书的机器人开发,所有需要调试机器人,OAuth2 授权、ticket 回调等,都需要暴露本地的内网,使内网程序能被公网访问。

相同的功能有花生壳,ngrok。

  • 花生壳:域名要购买,有点麻烦
  • ngrok:免费不固定域名,而且不管免费、收费速度都不快,毕竟是国外服务。

这个功能其实是要一个 VPS 的,但是因为我的服务器在国外,直接 ssh 上经常断断续续非常苦恼。

目前国内这个冲浪环境,程序员应该是人手一台 VPS?

所以使用 GlobalSSH 来中转,效率速度提升非常!

  1. 在 vps 上启动 nginx
  2. 新增一个反向代理配置,将请求全部转到 2222 端口
  3. 如下方式启动 ssh 代理

    $ ssh -vnNt -i ~/.ssh/id_rsa -R 2222:localhost:9001 root@123.123.123.123.ipssh.net

这样 nginx 会将请求转到 2222 端口,ssh 代理会将 2222 的请求转到本地的 9001 端口。

在本地服务启动并监听 9001 端口,当用户访问服务器时,nginx 会将整个请求转到本地监听 9001 端口的程序。

完毕

记了一篇流水账,希望能帮到有需要的人。

81 views

More from this blog

会有越来的多的side projects出现

什么是side project 可以理解为工作之余开发的产品,通常是收费的服务,可作为工作之外额外收入的产品。 在目前经济下行、公司开源节流(裁员)、失业率上升的大环境下,每一个程序员都应该拥有自己的side projects来对冲未来的不可靠风险。 所以side project 不仅仅是多一种「被动收入」,他也是你未来的「筹码」——工作累了,不想干了、有小孩了、买房了、家人生病了等等这些事情发生的时候,你可以「任性」一下。 而不是一些不可靠的风险出现的时候,再来提高自己的「抗风险」能力。 上面...

Jul 28, 20231 min read61

Xbox Cloud Gaming 游戏加速尝试

Xbox Cloud Gaming 游戏加速 之前有个很老的xbox游戏机,因为性能有点差劲了,所以卖了。 偶尔还是想玩玩游戏,但是老婆不让给买xbox的物理机(怀恋单身),所以含泪玩xbox cloud gaming(以下简称 xcg),xpg会员游戏还是很丰富的。 于是买了uu加速器,坦白说uu加速器不算便宜的,但是xcg在晚上高峰期,一样卡得怀疑人生,那种被马赛克糊满脸的感受,上一次这种体验还是看小姐姐的电影。 其实用uu加速器玩是ok的,就是国内的网络情况大家都知道,dddd(懂得都懂)...

Sep 5, 20221 min read258

github codespaces 在ipad上的最佳浏览器

Github Codespaces github codespaces 是github在被微软收购后,提供的一款在线web IDE,基本与vscode一致,只是运行在浏览器上而已。 而且非常土豪的提供了4核8G内存,微软就是壕。 so,通过ipad来使用codespaces就是一件比较顺其自然的事。 可是其实也没那么简单。。 IPad使用codespaces的快捷键问题 其实最大的问题就是快捷键的问题,不管你是用saferi,还是chrome,他们提供的快捷键或多或少会与你的vscode的快捷键...

Oct 8, 20211 min read59

基于binlog检查数据错误

起因 某个表的 status 「莫名其妙」变成 0 了 其实可以判断出是 status 没有被赋值,通常是结构体的 status 默认是 0 才会被插入数据库。 于是问题看起来就很简单了:只要检查相关的更新操作中的 status 字段有没有被赋值即可。 但是 这个表是用户表。 因为历史原因,源码中的更新函数很多 调用更新函数的地方也很多 无法复现该问题,测试人员也不知道做了什么操作状态变成 0 的 所以同事关注这个问题挺久了,也没看到问题原因(当然我也没看到……) 但是恰好我在做导出 bin...

Aug 5, 20212 min read61
M

Moli'blog

64 posts

曾经的少年还在吗?