首页/系统/Linux 运维命令速查/ssh 端口转发与隧道
本包目录(613 条)
文件与目录76 条文本处理77 条
网络命令82 条
进程与作业69 条磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

ssh 端口转发与隧道

ssh 三大转发:-L 本地转发(把远端服务映射到本地)、-R 远程转发(暴露本地端口)、-D 动态 SOCKS5 代理;-N 不执行命令、-f 后台化。

Linux 运维命令速查系统更新于 2026-10-12
用途端口转发/SOCKS 代理
语法ssh -L 本地:目标:目标端口 跳板机 / -R / -D
要点-N 只转不发命令,-f 转后台

常用示例

常用示例
ssh -N -L 5432:127.0.0.1:5432 ops@db-bastion      # 本地 5432 → 远端 5432
ssh -N -L 8080:10.0.0.9:80 ops@gateway             # 远端网络里的 10.0.0.9
ssh -f -N -D 1080 ops@jump                         # 本地 SOCKS5 代理 1080
ssh -R 9000:127.0.0.1:3000 ops@public              # 把本机 3000 暴露到远端 9000
默认只绑 127.0.0.1:想让别人连加 GatewayPorts 与监听地址参数——那等于开放入口,先做安全评估。

易错点

  • -L 的方向容易记反:本地端口 → 通过 ssh 服务器转发到「目标地址:端口」(目标是站在跳板机视角可达)
  • 长隧道加 ServerAliveInterval=30 防静默断开;-f 后要关闭得手动 kill 对应 ssh 进程

数据来源与参考

  • man 1 ssh(OpenSSH 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌