緊密VNC和SSH

緊密VNC和SSH

讓我們假設這個狀態(imageshack 影像)的網路。我想要在 VNC 用戶端和 VNC 伺服器之間建立 SSH 隧道連線。

在此輸入影像描述

PC1 和 PC2 都運行 TightVNC 伺服器和 SSH 伺服器,並允許連接埠 22。TightVNC Java 檢視器。需要在 TightVNC Java 檢視器中輸入哪些位址(遠端主機?連接埠?SSH 伺服器?)需要對路由器進行哪些設定才能轉送到正確的 PC?感謝您的回答。

答案1

首先,您必須在路由器上設定連接埠轉送。讓我們以 ssh 為例(所有其他協定都可以同樣運作)。

如果您只有一台機器,您可以簡單地轉發連接埠22。由於您只能將連接埠轉送到一台計算機,因此在您的情況下這不是一個選項。為您的機器組成兩個連接埠號碼。在這種情況下,我將使用1002220022。現在您必須在路由器上設定兩個轉送:

  • 一、從外部端口10022到內部ip&端口10.0.0.12:22
  • 一、從外部端口20022到內部ip&端口10.0.0.14:22

這表示連接埠上的每個外部請求都會傳送到PC1 的10022連接埠(ssh)。22

現在,您需要從外部 PC 到 IP 的兩個 ssh 連線88.65.41.128。請注意,這些連接不能在預設連接埠上工作22,只能在10022和上工作20033

對於所有其他協定/服務也可以進行相同的操作。只需將連接埠替換22為該服務的連接埠即可。

或者,您可以透過 ssh 隧道傳輸每個服務。我不知道tighVNC 端口,但我們假設它是9000.您可以使用以下命令設定到 PC1 的隧道:

ssh -L 9001:localhost:9000 [email protected]:10022

這透過 ssh 連接到 PC1 並將位址localhost:9000(從 PC1 的視圖)轉發到您執行此操作的電腦的連接埠 9001。我選擇9001,這樣你就可以同時從PC2轉送tightVNC:

ssh -L 9002:localhost:9000 [email protected]:20022

現在,您可以使用位址localhost:9001和來從遠端電腦連接ightVNC localhost:9002

相關內容