ProxyJump 是 SSH 客户端的一个配置参数(也是 -J 命令行选项),它的作用是让你通过一个中间服务器(跳板机/堡垒机)"跳转"到目标服务器,但最终连接看起来像是直接从你的机器连到目标服务器。
核心原理
你本地发起连接 → 跳板机(仅转发TCP流量,不解密) → 目标服务器
最终 SSH 加密会话直接建立在你本地和目标服务器之间,跳板机无法看到传输的内容(只能看到加密后的流量)。
对比传统方法(ProxyCommand)
传统方式需要写 nc 或 netcat 命令:
python
ProxyCommand ssh jump-server nc %h %p
而 ProxyJump 更简洁、性能更好(无需在跳板机上启动额外的 nc 进程)。
重要条件
-
跳板机必须能直接访问目标服务器(通常在同一内网)。
-
你本地需能通过 SSH 连接到跳板机(建议配置免密登录或使用 ssh-agent)。
-
跳板机无需保存目标服务器的私钥,所有认证在你本地完成。
多级跳转
在 ProxyJump 多级跳转中,不需要中间服务器之间互相配置免密登录,只需要 客户端与每一台跳板机、以及客户端与最终目标服务器之间 配置免密登录即可。

