首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过SSH通过另一个服务器将MySQL连接到服务器

问通过SSH通过另一个服务器将MySQL连接到服务器
EN

Stack Overflow用户
提问于 2013-12-23 23:01:19
回答 2查看 399关注 0票数 2

设置:

  • 我的计算机(linux / unix)有一个任意的IP地址
  • 我可以连接到具有静态ip的中央linux服务器。
  • 远程linux系统被设置,因此它们只响应端口22上的中央服务器IP地址。

我希望通过中央服务器进行转发,这样我就可以使用MySQLWorkbench并在端口3306上将python脚本连接到远程系统。

理想情况下,我希望ssh命令的语法能够使端口转发工作;

假设我想在远程系统上将本地端口3307转发到3306。假设我的ip是x.x.x.x,中心服务器IP是y.y.y.y,远程系统IP是z.z.z.z;

我认为这与ssh -L有关,但到目前为止,我只能转发到中央服务器。也许我需要连接到中央服务器,在那里设置转发,然后在我的机器上设置转发?我认为使用ssh使用一个命令来完成它的功能已经存在。

如果这是一个复制,它不应该被标记为这样,因为不知道搜索什么魔术关键字,你找不到副本;

说明:远程服务器上没有打开端口3306。只有22

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-23 23:07:29

代码语言:javascript
复制
ssh -L :3307:z.z.z.z:3306 user@y.y.y.y -Nf

工作很好

或

代码语言:javascript
复制
ssh -L 3307:z.z.z.z:3306 user@y.y.y.y  -Nf

只绑定到x.x.x.x的本地主机

第一个示例绑定到所有接口。

编辑..。

刚刚看到z.z.z.z只有22端口是打开的。

在y.y.y.y上,您还需要打开本地端口

在Y.Y上运行

代码语言:javascript
复制
ssh -L 3307:localhost:3306 user@z.z.z.z -Nf

然后在x.x上

代码语言:javascript
复制
ssh -L 3307:localhost:3307 user@y.y.y.y -Nf

在屏幕上运行这些命令以获得最佳效果。

实际上,您可以将这两个命令压缩到一起。

代码语言:javascript
复制
ssh -L 3307:localhost:3307 user@y.y.y.y -f 'ssh -L 3307:localhost:3306 user@z.z.z.z -Nf'
票数 1
EN

Stack Overflow用户

发布于 2013-12-23 23:09:52

代码语言:javascript
复制
ssh -L <local-port-to-listen>:<remote-host>:<remote-port>

The ‘L’ switch indicates that a local port forward is need to be created

最好的方法是使用putty (ssh客户端)创建隧道。所以您可以启动shell,它将为您创建ssh隧道。这是一个很好的参考

https://howto.ccs.neu.edu/howto/windows/ssh-port-tunneling-with-putty/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20752497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档