Linux
在不使用埠 8080 進行 SSH 連接的情況下訪問伺服器上的埠 8080
我正在執行一個程序,可讓您在瀏覽器中與之互動。為此,您執行程序並在瀏覽器中打開“localhost:8080”(如果 8080 是正確的埠)。
但是,我在伺服器上執行該程序,並嘗試通過 SSH 連接使用我自己的瀏覽器在我自己的電腦上訪問它。這意味著我必須在我的 SSH 連接中使用與程序使用相同的埠。但這不起作用,我的理論是程序和我的 SSH 連接正在爭奪埠。
所以我的問題是,換句話說: 如何在不使用埠 8080 進行 SSH 連接的情況下訪問伺服器上的埠 8080?
附加說明:我嘗試在我的 SSH 連接中使用 X-forwarding(-X 選項),並在伺服器上執行瀏覽器。這行得通,但速度非常慢。
與其在遠端伺服器上執行瀏覽器,不如使用
ssh
隧道將本地埠轉發到遠端伺服器的本地埠。假設您在遠端主機上有埠 8080,此命令將在您的本地電腦(第一個
localhost:8080
)上創建一個偵聽埠 8080 並通過隧道連接到它以在遠端主機的上下文中localhost:8080
執行- 即該 remote_host 本身上的埠 8080 . 告訴 ssh 繼續在後台執行;如果您希望會話在終端中保持打開狀態,請忽略此選項。-f``ssh
local$ ssh -f -L localhost:8080:localhost:8080 remote_host local$ firefox http://localhost:8080/