rmdir.cn

ssh -L 本地端口转发

把本地端口转发到远端可访问的地址

语法

ssh -L [本地地址:]本地端口:目标主机:目标端口 跳板主机

说明

适用于安全访问内网服务,例如只监听内网的数据库或管理后台。本地监听端口收到的连接会经 SSH 隧道转发到远端视角的目标地址。默认只绑定 127.0.0.1,绑定 0.0.0.0 会让同网段其他机器也能使用该隧道,需谨慎。

参数

  • -L必填

    本地转发规则

  • -N

    不执行远程命令,只做转发

  • -f

    转入后台运行

示例

调试内网数据库

把远端 MySQL 映射到本地 13306。

ssh -N -L 127.0.0.1:13306:127.0.0.1:3306 deploy@example.com

注意事项:目标地址是相对远端主机解析的,127.0.0.1 指远端本机。隧道会保持前台运行,按 Ctrl+C 结束。

经跳板机访问内网服务

目标主机由跳板机解析。

ssh -N -L 127.0.0.1:8080:10.0.0.20:80 bastion

注意事项:本机 8080 端口若已被占用会启动失败。绑定地址写 0.0.0.0 会暴露给局域网,仅在有明确需求时使用。

参考资料