3台機器之間的連接埠轉發

3台機器之間的連接埠轉發

我有 3 台機器,它們連成一條鏈,A、B、C。

 A-->B-->C

A 是我的機器,B 是伺服器,C 是其他機器,上面有一些服務和 Web 伺服器。由於一些問題,我需要從A訪問C上的Web伺服器(連接埠80),我可以使用ssh從A登入B,然後從B登入C,但此時控制台太少了。我需要網頁瀏覽器,並且使用帶有選項的 ssh-X不起作用(Firefox 啟動時 dbus 出現一些問題)。

我使用經典命令在 B 上進行連接埠轉發,為 ssh 轉發 22 連接埠:

ssh -L 2222:localhostB:22 user@ipC

但使用相同的方法轉送連接埠 80 不起作用:

ssh -L 8888:localhostB:80 user@ipC

我知道還有其他一些轉發可以使其工作,但我不明白如何以及什麼。

我需要這樣的東西:

A --> B (frd from B:8888 to C:80) --> C (port 80 web server)

因此,當我輸入 ipB:8888 時,我將被轉發到 C:80。

任何解釋必須做什麼的幫助或帶有命令的腳本將不勝感激。我從一篇部落格中註意到必須完成兩次ssh -L轉發,但我不明白為什麼。

答案1

你走在正確的軌道上。

在A上:

ssh -L 8888:ipC:80 user@ipB -N

將使 C 上的 Web 伺服器可透過 A 上的 localhost:8888 進行存取

應OP要求提供更多詳細資訊:

我從你的問題假設你想訪問A上C的網頁伺服器(我猜你在A上有一個GUI環境,有網頁瀏覽器)。

您無法直接存取C(無論出於何種原因),但您可以存取B,B 又可以存取C。 Web 伺服器

相關內容