将SOCAT与SSH结合使用,通过socks代理进行动态端口转发

时间:2015-07-02 19:52:00

标签: ssh socks socat

我的问题非常简单,我想要做的是通过socat连接到我的ssh,这意味着如果我有服务器10.0.0.1,它有SSH和SOCAT在一起我听我的socat的5555端口,然后我的socat将所有tcp数据包转发到我的ssh服务器22端口以进行动态端口转发。

我希望收到你的来信,并提前感谢你

1 个答案:

答案 0 :(得分:1)

这是一个基本配置,似乎是你想要的。

socat TCP-LISTEN:5555 TCP:localhost:22

如果您想在服务器上使用ssh作为SOCKS代理,那么您不需要socat。在服务器上运行

ssh -D 10.0.0.1:5555 localhost 

当然,如果您在本地计算机上运行ssh客户端并使用

将socks代理更改为指向localhost,则会更安全
ssh -D 5555 10.0.0.1 

在客户端计算机上。

如果您只能间接使用ssh,那么您可以通过在服务器上运行ssh在localhost上监听5550并让socat侦听5555并将其转发到5550来结合上述内容:

socat TCP-LISTEN:5555,fork TCP:localhost:5550 &
ssh -N -D 5550 localhost