#背景介绍 做为一个自由开发者,我拥有一台有公网ip的阿里云ecs,家中用台式机跑了几个vm,提供各种需求的开发和测试环境。平时开发在家里进行即可,最近谈了几个项目经常需要外出,为了节省时间,往往会在各个不同的地点coding或者调试部署,这时候就需要一台具有公网ip的服务器,做为跳板机提供ssh跳转访问。
我的具体需求是:
- 用阿里的CloudToolKit工具可以从外网环境部署到内网vm
- 用datagrip可以访问内网mysql
#网络环境 盘点一下目前具有的资源
- 一台具有公网ip的阿里云ecs
- 家里的台式机挂了几个vm,通过路由分配了内网ip
- 使用frp配置了内网穿透,ecs跑frps,内网vm跑frpc
frp支持 TCP、UDP、HTTP、HTTPS等协议类型,提供了非常优秀的内网穿透功能。在这个基础上,将ecs做为跳板机进行ssh访问是完全可以实现的。
#着手实现
配置vm的frpc端口映射
[ssh]
type=tcp
local_port = 22
remote_port = *****
[mysql]
type = tcp
local_port = 3306
remote_port = *****
配置CloudToolKit
增加一个远程主机,在CTK窗口点击"Add Host"按钮。
配置具有公网ip的ecs的ssh连接,22端口要放开。
配置带有跳板机的内网主机连接。
因为frp的内网穿透,host填写localhost,port填写frpc的配置。
在Advanced标签下,选择之前配好的跳板机。
测试连接,通过。
配置DataGrip
配置跳板机
配置内网穿透后的端口
同CTK一样,host填写localhost,port填写frpc的配置。
测试连接,通过。
本文链接:https://deewooo.github.io/post/%E5%BB%BA%E7%AB%99%E7%AC%AC%E5%85%AB%E7%AF%87-%E4%BB%A5%E9%98%BF%E9%87%8C%E4%BA%91%E7%9A%84ecs%E4%B8%BA%E8%B7%B3%E6%9D%BF%E6%9C%BA%E5%AE%9E%E7%8E%B0ssh%E8%AE%BF%E9%97%AE%E5%86%85%E7%BD%91%E6%9C%8D%E5%8A%A1%E5%99%A8/
本作品由 IvyWooo 采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可,转载请注明出处。
「真诚赞赏,手留余香」
真诚赞赏,手留余香
使用微信扫描二维码完成支付
本文总阅读量次