
现在公司的测试 mysql 用的是阿里云,没有公网 ip ,只有内网地址。 用 navicat 等客户端连接的时候,需要添加 ssh 隧道(连接一个阿里云的测试服务器,这个服务器有外网 ip )。 现在开发的时候需要直接连上这个 mysql ,SpringBoot 使用 ssh 隧道连接的话会比较麻烦,请问有什么更优雅的方式让开发都可以连上这个 mysql 使用吗。
1 dier 2022-02-25 10:30:13 +08:00 在公司一台固定的机器上用 SSH 隧道连接,然后公司所有要连接的客户端全连接这台机器的 IP+port |
2 keylock 2022-02-25 10:31:15 +08:00 1 、ssh 端口转发: https://github.com/pahaz/sshtunnel/ 2 、iptables 端口转发: https://learnku.com/articles/39768 3 、nginx 端口转发: https://blog.csdn.net/unhejing/article/details/107941875 |
3 Illusionary 2022-02-25 10:31:40 +08:00 公司路由器配置 ipsec 和阿里云打通内网 |
4 a8Fy37XzWf70G0yW 2022-02-25 10:37:13 +08:00 via Android 在服商任意一台伺服器 TAILSCALE ,然後置一去往其 MYSQL 的子路由,其他人都安 TAILSCALE 加入同一就可以啦。默情形下只有需要的才入伺服器,不路由所有。 |
5 Maco 2022-02-25 10:37:25 +08:00 |
6 28Sv0ngQfIE7Yloe 2022-02-25 10:43:40 +08:00 一个命令的事儿 ssh -CNL 3306:host:3306 username@ip 不需要的时候 ctrl + c 就关闭 |
7 28Sv0ngQfIE7Yloe 2022-02-25 10:44:43 +08:00 |
8 wxdiy 2022-02-25 10:55:45 +08:00 主机上安装个 mysql-proxy 可以吧 |
9 newbeelity 2022-02-25 11:19:04 +08:00 DMS ,合规、有审计 |
10 salmon5 2022-02-25 11:23:29 +08:00 vpn ,libreswan/openvpn/wireguard 都可以,or 阿里云 VPN 网关 |
11 killva4624 2022-02-25 12:34:29 +08:00 - 不允许申请公网 IP 的原因是什么? 申请公网 IP ,然后白名单只写公司公网出口 IP ,不也是一个不错的方法么。 如果开发需要在家访问的话,走 VPN 先回到公司,再走公司出口访问。 |
12 notejava 2022-02-25 12:38:13 +08:00 申请公网 ip ,然后加白名单就足够安全了吧。 |
13 koloonps 2022-02-25 13:08:20 +08:00 Windows SSH 代理下 |
14 koloonps 2022-02-25 13:08:47 +08:00 |
15 virlaser 2022-02-25 14:03:26 +08:00 MobaXterm -> Tunneling -> MobaSSHTunnel 带界面的端口转发工具,用起来顺手一点 |
16 onhao 2022-02-25 14:18:10 +08:00 |
17 ruanimal 2022-02-25 14:34:32 +08:00 在测试机上装 haproxy ,或者在本机开 ssh tunnel |
18 newbeelity 2022-02-25 15:07:01 +08:00 DMS ,合规、有审计 |
19 dayeye2006199 2022-02-25 15:40:10 +08:00 你需要一个 VPN 网关打通办公网络到 vpc 的链接。这个比跳板机等方法更加的安全。 |
20 onhao 2022-02-25 16:39:21 +08:00 |
22 joesonw 2022-02-25 16:48:49 +08:00 这部正是 VPN 正确的使用场景吗? 而且 VPN 可以限制每个用户可访问的网段, 对于只需要 MySQL 的, 只需要开这个 ip 就好了. |
23 keyfunc 2022-02-25 16:53:25 +08:00 租阿里云的 vpn ,然后让网络部门在内网映射好,另外我想问的是开发时为什么要连测试的数据库。。。 |
24 brader 2022-02-25 16:53:46 +08:00 用 6#的方法就行,如果公司本地有服务器,就驻后台一直挂着,如果没有,就自己电脑开,也不用装软件,打开你的 git bash ,就支持 ssh 协议,直接自己起个 ssh 隧道 |
25 brader 2022-02-25 16:56:00 +08:00 @keyfunc 正常的,我们团队也是这个场景,我们测试库也是上云的,然后开发、测试要协作,大家都是连的云测试库,因为是老项目,数据表非常大、多,不可能有新人进来每次都让他自己部署。 第二点就是,我们有时候要在家办公,不上云不行。 |
26 3kkkk 2022-02-25 18:02:26 +08:00 为什么不本地环境装一个 mysql ?有什么需要非要上云测试的需求吗? |
27 akira 2022-02-25 18:12:34 +08:00 原则上 是不允许开发直连生产数据库的,更何况是本地的程序直连。 不要嫌麻烦,这些都是前辈们血的教训的来的。 |
29 ClericPy 2022-02-25 22:05:00 +08:00 VPN 是正经出路, 早架早享受, 隧道用久了感觉太扯淡了 |