ubuntu20.04 ssh遠端開啟vnc,並顯示hdmi輸出介面

ForLivetoLearn發表於2024-09-14

要透過SSH遠端連線到Ubuntu 20.04電腦的桌面,並顯示當前螢幕的內容,可以使用 x11vnc 工具。以下是詳細的步驟:

  1. 安裝 x11vnc
    首先,確保你已經透過SSH連線到目標電腦,並執行以下命令來安裝 x11vnc

    sudo apt update
    sudo apt install x11vnc
    
  2. 設定 VNC 密碼(可選):
    為了安全起見,你可以設定一個密碼,防止未經授權的訪問:

    x11vnc -storepasswd
    

    這將提示你輸入並確認一個密碼。

  3. 啟動 x11vnc
    啟動 x11vnc,以顯示當前桌面會話。你可以執行以下命令:

    x11vnc -display :0 -usepw -forever -bg
    
    • -display :0 表示使用第一個顯示器。
    • -usepw 表示使用之前設定的密碼。
    • -forever 表示在客戶端斷開連線後繼續執行。
    • -bg 表示在後臺執行。
  4. 使用 SSH 隧道連線 VNC
    在你的本地電腦上(SSH 客戶端),使用 SSH 隧道連線到遠端電腦的 VNC 埠(預設是5900)。執行以下命令:

    ssh -L 5900:localhost:5900 your_username@remote_ip_address
    

    替換 your_usernameremote_ip_address 為目標電腦的使用者名稱和 IP 地址。

  5. 連線 VNC 客戶端
    使用 VNC 客戶端(如 RemminaTigerVNCRealVNC)連線到 localhost:5900。輸入之前設定的密碼以進行連線。

  6. 開機啟動:
    /etc/systemd/system/x11vnc.service

[Unit]
Description=x11vnc (Remote access)
After=display-manager.service network.target syslog.target

[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -display :0 -shared -nomodtweak -forever -capslock -repeat -xkb -xrandr "resize" -rfbport 5900
ExecStop=/bin/kill -TERM $MAINPID
ExecReload=/bin/kill -HUP $MAINPID
KillMode=control-group
Restart=on-failure

[Install]
WantedBy=graphical.target

相關文章