5月30日 20:53

SSH 端口转发怎么用?-L、-R、-D 分别适合什么场景?

SSH 端口转发就是用 SSH 连接临时搭一条加密通道,把某个端口流量转到另一个网络位置。常见参数是 -L-R-D-L 是本地端口转发,-R 是远程端口转发,-D 是动态 SOCKS 代理。先判断流量入口在哪一端,就不容易选错。

追问

-L、-R、-D 一句话怎么区分?

-L 是本机开入口访问远端资源;-R 是远端开入口访问本地资源;-D 是本机开 SOCKS 代理,目标动态决定。

为什么建议绑定 127.0.0.1?

绑定本地只允许本机访问,安全边界更小。绑定 0.0.0.0 可能让局域网甚至公网用户连上这个端口。

端口被占用怎么办?

先用 lsof -i :3307ss -tlnp 找占用进程。临时调试可以换端口,不要随便杀不认识的进程。

和反向代理有什么区别?

SSH 转发偏临时、按连接建立;Nginx/Caddy 适合长期对外服务,有 TLS、日志、限流和路由能力。

写段命令

bash
ssh -N -L 127.0.0.1:3307:db.internal:3306 user@jump ssh -N -R 8080:localhost:3000 user@public ssh -N -D 127.0.0.1:1080 user@jump
标签:SSH