3

介绍下最近比较实用的端口转发

 2 years ago
source link: https://nicksxs.me/2021/11/14/%E4%BB%8B%E7%BB%8D%E4%B8%8B%E6%9C%80%E8%BF%91%E6%AF%94%E8%BE%83%E5%AE%9E%E7%94%A8%E7%9A%84%E7%AB%AF%E5%8F%A3%E8%BD%AC%E5%8F%91/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

介绍下最近比较实用的端口转发

发表于 2021-11-14 分类于 ssh技巧 阅读次数: 9 阅读次数: 12 Disqus: 0 Comments

vscode 扩展转发

在日常使用云服务器的时候,如果要访问上面自建的 mysql,一般要不直接开对应的端口,然后需要对本地 ip 进行授权,但是这个方案会有比较多的限制,比如本地 ip 变了,比如是非固定出口 ip 的家用宽带,或者要在家里跟公司都要访问,如果对所有 ip 都授权的话会不安全,这个时候其实是用 ssh 端口转发是个比较安全方便的方式。
原来在这个之前其实对这块内容不太了解,后面是听朋友说的,vscode 的 Remote - SSH 扩展可以很方便的使用端口转发,在使用该扩展的时候,会在控制台位置里都出现一个”端口” tab

如图中所示,我就是将一个服务器上的 mysql 的 3306 端口转发到本地的 3307 端口,至于为什么不用 3306 是因为本地我也有个 mysql 已经使用了 3306 端口,这个方法是使用的 vscode 的这个扩展,

ssh 命令转发

还有个方式是直接使用 ssh 命令
命令可以如此

ssh -CfNg -L 3307:127.0.0.1:3306 [email protected]

简单介绍下这个命令
-C 表示的是压缩数据包
-f 表示后台执行命令
-N 是表示不执行具体命令只用于端口转发
-g 表示允许远程主机连接本地转发端口
-L 则是具体端口转发的映射配置
上面的命令就是将远程主机的 127.0.0.1:3306 对应转发到本地 3307
而后面的用户则就是登录主机的用户名user1和ip地址199.199.199.199,当然这个配置也不是唯一的

ssh config 配置转发

还可以在ssh 的 config 配置中加对应的配置

Host host1
  HostName 199.199.199.199
  User user1
  IdentityFile  /Users/user1/.ssh/id_rsa
  ServerAliveInterval 60
  LocalForward 3310 127.0.0.1:3306

然后通过 ssh host1 连接服务器的时候就能顺带做端口转发


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK