通过SSH隧道连接mysql

SSH隧道的类型

SSH隧道有3种类型:

  • 动态端口转发(Socks 代理)
  • 本地端口转发
  • 远端端口转发

通过本地端口转发连接mysql

mysql数据库一般在远程的服务器运行,只能内网访问。网络拓扑图如下:

ssh_tunnel.png

远程服务器只暴露了22端口,mysql的3306端口没有暴露在外网。这时,我们可以通过本地端口转发实现在主机b连接mysql。

下文符合说明:IP(x)=主机x的公网ip;ip(x)=主机x的内网ip;

主机b为linux,使用命令行实现

在主机b上执行

ssh -N -f -L 1111:ip(a):3306 IP(a)

之后,在主机b上,使用mysql连接localhost:1111即可。

主机b为windows,使用xshell实现

在主机b上使用xshell操作

ssh1.png
ssh2.jpg

之后,在主机b上使用mysql可视化客户端连接localhost:1111即可。

  • 参考
    https://blog.csdn.net/chenjh213/article/details/49795521

你可能感兴趣的:(通过SSH隧道连接mysql)