如何创建具有多个跃点的动态端口转发?

how to create a dynamic port forwarding with several hops?

如果我们遇到以下情况:

[膝上型电脑] ---- [host1] ---- [host2] ----[目标]

其中 host1 可以从我的笔记本电脑访问,host2 可以从 host1 访问,目标只能从 host2 访问。我们有 host1 和 host2 的 ssh 凭据。

我们可以通过以下命令使用动态端口转发:

ssh -N -D 127.0.0.1:8282 host1_account@host1

这将基本上创建一个我们可以与代理链一起使用的 SOCKS4,以便该命令可以在 kali 设备上运行:

代理链 ssh host2_account@host2

我们如何才能建立从 host2 到目标的类似(附加?)动态隧道?

确保您使用的是 OpenSSH 7.3 或更高版本,并使用 SSH 的 ProxyJump 功能:ssh -J host1_account@host1 -D 127.0.0.1:8282 host2_account@host2。这将为您提供 host2 上的 SSH 会话,127.0.0.1:8282 将通过 host2 代理流量。