在 3 台電腦之間建立連接

在 3 台電腦之間建立連接

我有 3 台機器在 3 個不同的網路上。

:

  • 有互聯網但未連接到任何本地計算機,使用 sudo。

工作:

  • 透過 www 互聯網可以使用 ssh,
  • 可以 ssh 到工作,但反之則不然
  • 工作可以進行傳出和傳入 ssh
  • 我有在此電腦上進行 sudo 訪問
  • 機器沒有iptables安裝

伺服器:

  • 伺服器已連接至 www 網際網路
  • 伺服器可以 ssh 到工作,但反之則不然
  • 伺服器只能進行外發 ssh。
  • 我在這台電腦上有 sudo 存取權限。

所以現在網路可以這樣做:

主頁 -> 工作 <- 伺服器

鑑於此配置我如何得到連接到伺服器?所有三台機器都運行 Ubuntu。我只能透過命令列存取所有三台機器。

答案1

此 ssh 解決方案不需要 sudo。

首先,在 SERVER 上的命令列,設定從 WORK 機器到 SERVER 的遠端連接埠轉送:

SERVER$ ssh -f -N -R 23456:SERVER:22 workuser@WORK

然後,只要該進程正在運行,您就應該能夠執行以下操作:

HOME$ ssh -t workuser@WORK ssh -p23456 serveruser@localhost

也就是說,從 HOME,您應該能夠透過 WORK 連接,然後透過 ssh 隧道連接到 SERVER 電腦。

應該可以使用 :23456 指定 ssh 應偵聽 WORK 計算機上的所有接口,但這對我不起作用,可能是因為 GatewayPorts 被禁用。如果它有效,第二個指令可以簡化為:

HOME$ ssh -p23456 serveruser@WORK

相關內容