Ssh
允許 ssh 流量的 SSH 隧道:連接總是被拒絕
我可以在工作中訪問兩台伺服器。伺服器 A 託管 git 儲存庫並且在外部可見。我希望能夠將儲存庫複製到託管在伺服器 A 上的伺服器 B 中。
目前,我無法從伺服器 B SSH 到伺服器 A。我假設防火牆阻止了它。
所以我試圖在我遇到的文章之後創建一個 ssh 隧道,但到目前為止無濟於事。
從伺服器 A 的外殼:
$ ssh -L 1234:localhost:22 user@server_b
這成功地將我登錄到伺服器 B。從那裡我似乎無法使用
ssh
:$ ssh user@localhost $ user@localhost's password: <entered correctly> $ Permission denied, please try again. $ ssh user@localhost -p 1234 $ ssh: connect to host localhost port 1234: Connection refused
試圖複製
$ git clone ssh://user@localhost:1234/path/to/repo.git/ $ ssh: connect to host localhost port 1234: Connection refused $ fatal: The remote end hung up unexpectedly
我的初始隧道命令不正確嗎?或者我可能需要讓網路管理員在防火牆上打開一些東西?
您需要使用
-R
而不是創建反向隧道-L
。在本地機器上,使用
ssh -R 1234:server_a:22 user@server_b
你會得到一個外殼
server_b
。如果你這樣做ssh -p 1234 user@localhost
在這個 shell 上,這將把你連接到 22 埠
server_a
,通過你的本地機器隧道。之後,您的 git clone 命令應該可以工作了。