一千萬個為什麽

搜索

在類固醇上進行SSH隧道



I have a remote redis machine with no ssh and no open ports except to the same lan + a remote machine (on the same lan) with ssh + my pc outside the lan. What I'm trying to do (mostly to see if it's possible) is redis-cli on my pc -> ssh tunnel to the ssh machine -> something -> redis so it would work. Is netcat + mkfifo the right way? Thanks :)

轉載註明原文: 在類固醇上進行SSH隧道

一共有 3 個回答:

假設如下:

  • YOUR_PC,擁有Redis客戶端,SSH客戶端,SSH訪問SSH_SERVER
  • SSH_SERVER,擁有SSH服務器,可以訪問REDIS_SERVER
  • REDIS_SERVER,擁有Redis服務器

建立從YOUR_PC(端口1234)到REDIS_SERVER的隧道:REDIS_PORT,通過SSH_SERVER

ssh SSH_SERVER -L 1234:REDIS_SERVER:REDIS_PORT

在另一個終端上,在YOUR_PC上,運行redis客戶端(基於 https://stackoverflow.com/a/40678950 ):

redis-cli -h localhost -p 1234

我們通過stunnel連接了redis。這樣你不必總是建立ssh連接,這可能是一個問題。這裏有一篇關於如何通過stunnel設置redis的文章,我不會復制到這個答案中。隨意編輯。

http:// bencane的.com/2014/02/18 /送redis的流量通-AN-SSL隧道與 - 安全通道/

這工作,我想知道是否有更好的解決方案。 SSH隧道+ NC代理

ssh $ssh_server -L $port:localhost:$port "mkfifo /tmp/backpipe; nc -k -l localhost $port 0/tmp/backpipe"