我想知道,有没有办法做反向SSH这样的事情?我读过这样的事情,但我不确定这是不是我想要的。
我想要的是我的'服务器'和我的'客户端'之间的连接,客户端登录到服务器并使用服务器来控制客户端。我用Python编写了一个小脚本来使用套接字编程来完成基本的操作,但是由于我的编程技巧,我无法做高级的东西,比如SSH可以为你提供的东西。
所以场景是:我希望能够从服务器控制客户端。我确保客户端连接到服务器,并通过服务器控制客户端。因此连接是相反的,其余的是正常的。这可能吗?这有没有制作过,还是一个愚蠢的副本?
由于
答案 0 :(得分:1)
对不起,伙计们确实在互联网上描述过。
所以你要做的是:
就我而言,在我的“客户”上:
ssh -f -N -R 7000:localhost:22 [username]@[server-ip]
当然ssh
是你的计划
-f
表示您在后台运行请求
-N
表示您不想执行命令,而是转发端口。
-R
表示您要使用上述问题中所述的反向SSH。此外,7000:localhost:22
可以将与端口7000
的任何连接重定向到localhost:22
,其中localhost
是客户端,22
是客户端的端口。
最后但并非最不重要的是,您需要将[username]
替换为服务器的用户名,将[server-ip]
替换为服务器的IP地址。
接下来,在服务器上运行:
ssh [username]@localhost -p 7000
您需要将[username]
替换为客户端的用户名。它是客户端的用户名,因为虽然您似乎登录了localhost
,但您的localhost
只是将端口7000
上的连接转发给客户端。
所以-p 7000
指定要连接的端口,与我们在上一个命令中指定的端口相同。