Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >SSH高级功能 - 本地端口转发

SSH高级功能 - 本地端口转发

作者头像
十毛
发布于 2019-03-27 06:44:34
发布于 2019-03-27 06:44:34
1.3K00
代码可运行
举报
运行总次数:0
代码可运行

ssh是日常使用最多的程序,但是大部分情况都只是用来做加密远程登录,实际上ssh实现的加密传输可以用在很多场景,比如scp就是利用了ssh的加密通道,实现文件的加密传输。 本文介绍一下使用ssh实现通用网络服务的加密传输

端口转发

SSH端口转发分成:

  • 本地端口转发
  • 远程端口转发
  • 动态端口转发

本文介绍本地端口转发,其他两种下次再介绍

场景

MySQL直连

MySQL连接,连接传输的是明文数据,容易被窃听,特别如果连接需要经过公网的情况下。

不过我们可以借助SSH构建的本地端口转发(又称SSH隧道),实现加密传输。如下图:

SSH端口转发

实现方式

假设Server-A的IP为192.168.58.101,Server-B的IP是192.168.58.103

在Server-B上执行如下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ssh -f -N -L 9906:192.168.58.101:3306 192.168.58.101

上面的命令,就建立了本地端口转发(SSH隧道),Server-B发送到9906端口的所有数据都会被转发到192.168.58.101的3306端口

使用

SSH隧道已经建立,可以往隧道发送数据,会自动转发到目的服务器和端口。

在Server-B(192.168.58.103)上执行如下命令就可以建立到Server-A(192.168.58.101:3306)的MySQL连接

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 mysql -h127.0.0.1 -P9906 -uroot -p

系列

参考

  • ssh端口转发:ssh隧道
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019.01.13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验