rmdir.cn

ssh -R 远程端口转发

把远端端口转发到本地服务

语法

ssh -R [远端地址:]远端端口:目标主机:目标端口 远端主机

说明

适用于把本地正在开发的服务临时暴露给远端环境,例如接收第三方回调。方向与 -L 相反:远端监听端口收到的连接会通过 SSH 回传到发起方本地。远端监听地址默认只绑定回环,若要对外开放需在服务端配置 GatewayPorts。

参数

  • -R必填

    远程转发规则

  • -N

    不执行远程命令

  • -o

    配合 ExitOnForwardFailure 等选项控制失败行为

示例

接收远端回调

把远端 8080 转发到本地开发服务。

ssh -N -R 8080:127.0.0.1:3000 deploy@example.com

注意事项:默认只有远端主机本机可访问该端口。第三方服务从其他机器回调时需要额外配置,涉及安全风险请谨慎开启。

转发失败时立即退出

避免隧道未建立却误以为可用。

ssh -N -o ExitOnForwardFailure=yes -R 8080:127.0.0.1:3000 deploy@example.com

注意事项:远端端口被占用时该选项会让 ssh 直接退出,便于脚本及时发现失败。

参考资料