30

有一个很酷的实用程序,叫做sshuttle。过去它依赖于ipfw转发数据包。看起来这ipfw在 Mavericks 中大部分都被破坏了,建议现在使用 PacketFilter。

我大部分时间都在看 PacketFilter,它似乎ipfw有一个 PacketFilter 不支持的功能(希望我错了)。

以下规则:

ipfw -q add 12300 fwd 127.0.0.1,12300 tcp from any to any not ipttl 42 keep-state setup

会将所有流量转发到 127.0.0.1 (localhost) 端口 12300。但是,它不会更改 TCP 数据包中的目标 IP 或端口。这对于 sshuttle 很重要,因为它使用有关原始目的地的信息将数据包转发到另一个网络。

我可以在 PacketFilter 世界中找到的最接近的规则是:

rdr pass proto tcp from any to any -> 127.0.0.1 port 12300

此规则确实将流量发送到 127.0.0.1 (localhost) 端口 12300,但它还将目标地址重写为 127.0.0.1。

关于如何在 OS X 中获得行为 sshuttle 需要的任何想法?

4

1 回答 1

0

据我所知,sshuttle是解决以下常见情况的唯一程序:

convenientsecure创建一个 ssh 隧道并将这些远程端口转发到您的本地计算机。

查出

如果您想探索另一个有趣的领域。作为服务运行是文档

于 2021-10-29T08:18:20.883 回答