SSH 在手,天下我有

暴露内网端口给外网

使用场景

  • 开发联调。别人只能访问到你的外网地址,但是你想在本地机器监测并调试
  • 内网内容资源展示

基本流程就是别人访问外网,然后外网转发到内网,实际的内容是在内网。因为外网不能主动访问到内网,所以下面这条命令一定要从内网运行

#暴露内网的3306给remotehost的9123,这样别人访问外网的9123实际就是访问的内网的3306
ssh -R 9123:127.0.0.1:3306 username@remotehost

流量转发

使用场景

  • 本地不能直接连接处于内网的 mysql,可以通过 ssh forward 上去
这条命令会转发本地3308的流程到mysqlhost的3306端口
ssh -L 3308:mysqlhost:3306 user@sshhost

还是比较好区分这两种命令的。R 代表 remote,L 代表 local,如果是-R 表示 remote -> local,-L 标志 local->remote