Linux中國

在 Gnome 中共享電腦屏幕

你不希望別人能夠監視甚至控制你的電腦,你通常會努力使用各種安全機制來切斷任何此類企圖。然而,有時會出現這樣的情況:你迫切需要一個朋友,或一個專家來幫助你解決電腦問題,但他們並不同時在同一地點。你如何向他們展示呢?你應該拿著你的手機,拍下你的屏幕照片,然後發給他們嗎?你應該錄製一個視頻嗎?當然不是。你可以與他們分享你的屏幕,並可能讓他們遠程控制你的電腦一段時間。在這篇文章中,我將介紹如何在 Gnome 中允許共享電腦屏幕。

設置伺服器以共享屏幕

伺服器 是一台提供(服務)一些內容的計算機,其他計算機(客戶端)將消費這些內容。在本文中,伺服器運行的是 Fedora Workstation 和標準的 Gnome 桌面

打開 Gnome 屏幕共享

默認情況下,Gnome 中共享計算機屏幕的功能是 關閉 的。要使用它,你需要把它打開:

  1. 啟動 Gnome 控制中心 Gnome Control Center
  2. 點擊 共享 Sharing 標籤。 Sharing switched off
  3. 用右上角的滑塊打開共享。
  4. 單擊 屏幕共享 Screen sharing Sharing switched on
  5. 用窗口左上角的滑塊打開屏幕共享。
  6. 如果你希望能夠從客戶端控制屏幕,請勾選 允許連接控制屏幕 Allow connections to control the screen 。不勾選這個按鈕訪問共享屏幕只允許 僅瀏覽 view-only
  7. 如果你想手動確認所有傳入的連接,請選擇 新連接必須請求訪問 New connections must ask for access
  8. 如果你想允許知道密碼的人連接(你不會被通知),選擇 需要密碼 Require a password 並填寫密碼。密碼的長度只能是 8 個字元。
  9. 勾選 顯示密碼 Show password 以查看當前的密碼是什麼。為了多一點保護,不要在這裡使用你的登錄密碼,而是選擇一個不同的密碼。
  10. 如果你有多個網路可用,你可以選擇在哪個網路上訪問該屏幕。

設置客戶端以顯示遠程屏幕

客戶端 是一台連接到由伺服器提供的服務(或內容)的計算機。本演示還將在客戶端上運行 Fedora Workstation,但如果它運行一個 VNC 客戶端,操作系統實際上應該不太重要。

檢查可見性

在 Gnome 中,伺服器和客戶端之間共享計算機屏幕需要一個有效的網路連接,以及它們之間可見的「路由」。如果你不能建立這樣的連接,你將無法查看或控制伺服器的共享屏幕,這裡描述的整個過程將無法工作。

為了確保連接的存在,找出伺服器的 IP 地址。

啟動 Gnome 控制中心 Gnome Control Center ,又稱 設置 Settings 。使用右上角的菜單,或活動模式。當在活動中時,輸入:

settings

並點擊相應的圖標。

選擇 網路 Network 標籤。

點擊設置按鈕(齒輪)以顯示你的網路配置文件的參數。

打開 詳情 Details 標籤,查看你的計算機的 IP 地址。

進入 你的客戶端的 終端(你想從它連接到別的計算機),使用 ping 命令找出客戶和伺服器之間是否有連接。

$ ping -c 5 192.168.122.225

檢查該命令的輸出。如果它與下面的例子相似,說明計算機之間的連接存在。

PING 192.168.122.225 (192.168.122.225) 56(84) bytes of data.
64 bytes from 192.168.122.225: icmp_seq=1 ttl=64 time=0.383 ms
64 bytes from 192.168.122.225: icmp_seq=2 ttl=64 time=0.357 ms
64 bytes from 192.168.122.225: icmp_seq=3 ttl=64 time=0.322 ms
64 bytes from 192.168.122.225: icmp_seq=4 ttl=64 time=0.371 ms
64 bytes from 192.168.122.225: icmp_seq=5 ttl=64 time=0.319 ms
--- 192.168.122.225 ping statistics 5 packets transmitted, 5 received, 0% packet loss, time 4083ms
rtt min/avg/max/mdev = 0.319/0.350/0.383/0.025 ms

如果兩台計算機存在同一個子網中,例如在你的家裡或辦公室,你可能不會遇到任何問題,但當你的伺服器沒有公共 IP 地址,無法從外部互聯網上看到時,可能會出現問題。除非你是互聯網接入點的唯一管理員,否則你可能需要就你的情況向你的管理員或你的 ISP 諮詢。請注意,將你的計算機暴露在外部互聯網上始終是一個有風險的策略,你必須充分注意保護你的計算機免受不必要的訪問。

安裝 VNC 客戶端(Remmina)

Remmina 是一個圖形化的遠程桌面客戶端,你可以使用多種協議連接到遠程伺服器,如 VNC、Spice 或 RDP。Remmina 可以從 Fedora 倉庫中獲得,所以你可以用 dnf 命令或 軟體中心 Software 來安裝它,以你喜歡的方式為準。使用 dnf,下面的命令將安裝該軟體包和幾個依賴項。

$ sudo dnf install remmina

連接到伺服器

如果伺服器和客戶端之間有連接,請確保以下情況:

  1. 計算機正在運行。
  2. Gnome 會話正在運行。
  3. 啟用了屏幕共享的用戶已經登錄。
  4. 會話 沒有被鎖定,也就是說,用戶可以使用該會話。

然後你可以嘗試從客戶端連接到該會話:

  1. 啟動 Remmina
  2. 在地址欄左側的下拉菜單中選擇 VNC 協議。
  3. 在地址欄中輸入伺服器的IP地址,然後按下 回車Remmina Window
  4. 當連接開始時,會打開另一個連接窗口。根據伺服器的設置,你可能需要等待,直到伺服器用戶允許連接,或者你可能需要提供密碼。
  5. 輸入密碼,然後按 OKRemmina Connected to Server
  6. 按下 Align with resolution button 調整連接窗口的大小,使之與伺服器的解析度一致,或者按 Full Screen Button 調整連接窗口的大小,使其覆蓋整個桌面。當處於全屏模式時,注意屏幕上邊緣的白色窄條。那是 Remmina 菜單,當你需要離開全屏模式或改變一些設置時,你可以把滑鼠移到它上面。

當你回到伺服器時,你會注意到現在在上欄有一個黃色的圖標,這表明你正在 Gnome 中共享電腦屏幕。如果你不再希望共享屏幕,你可以進入菜單,點擊 屏幕正在被共享 Screen is being shared ,然後再選擇 關閉 Turn off ,立即停止共享屏幕。

Turn off menu item

會話鎖定時終止屏幕共享

默認情況下,當會話鎖定時,連接 將總是終止 will always terminate 。在會話被解鎖之前,不能建立新的連接。

一方面,這聽起來很合理。如果你想和別人分享你的屏幕,你可能不想讓他們在你不在的時候使用你的電腦。另一方面,如果你想從遠程位置控制你自己的電腦,無論是你在另一個房間的床上,還是你岳母的地方,同樣的方法也不是很有用。有兩個選項可以處理這個問題。你可以完全禁止鎖定屏幕,或者使用支持通過 VNC 連接解鎖會話的 Gnome 擴展。

禁用屏幕鎖定

要禁用屏幕鎖定:

  1. 打開 Gnome 控制中心 Gnome Control Center
  2. 點擊 隱私 Privacy 標籤。
  3. 選擇 屏幕鎖定 Screen Lock 設置。
  4. 關掉 自動屏幕鎖定 Automatic Screen Lock

現在,會話將永遠不會被鎖定(除非你手動鎖定),所以它能啟動一個 VNC 連接到它。

使用 Gnome 擴展來允許遠程解鎖會話

如果你不想關閉鎖定屏幕的功能,或者你想有一個遠程解鎖會話的選項,即使它被鎖定,你將需要安裝一個提供這種功能的擴展,因為這種行為是默認不允許的。

要安裝該擴展:

  1. 打開火狐瀏覽器,並打開 Gnome 擴展頁面Gnome Extensions Page
  2. 在頁面的上部,找到一個信息塊,告訴你為火狐安裝 「GNOME Shell integration」。
  3. 點擊 點此安裝瀏覽器擴展 Click here to install browser extension 來安裝 Firefox 擴展。
  4. 安裝完畢後,注意到 Firefox 的菜單部分有 Gnome 的標誌。
  5. 點擊 Gnome 標誌,回到擴展頁面。
  6. 搜索 「allow locked remote desktop」。
  7. 點擊顯示的項目,進入該擴展的頁面。
  8. 使用右邊的開/關按鈕,將擴展打開Extension selected

現在,可以在任何時候啟動 VNC 連接。注意,你需要知道會話密碼以解鎖會話。如果你的 VNC 密碼與會話密碼不同,你的會話仍然受到 一點 保護。

總結

這篇文章介紹了在 Gnome 中實現共享計算機屏幕的方法。它提到了受限(僅瀏覽)訪問和非受限(完全)訪問之間的區別。然而,對於正式任務的遠程訪問,例如管理一個生產伺服器,這個解決方案無論如何都不算是一個正確的方法。為什麼?

  1. 伺服器將始終保持其控制模式。任何在伺服器會話中的人都將能夠控制滑鼠和鍵盤。
  2. 如果會話被鎖定,從客戶端解鎖也會在伺服器上解鎖。它也會把顯示器從待機模式中喚醒。任何能看到你的伺服器屏幕的人都能看到你此刻正在做什麼。
  3. VNC 協議本身沒有加密或保護,所以你通過它發送的任何東西都可能被泄露。

你幾種可以建立一個受保護的 VNC 連接的方法。例如,你可以通過 SSH 協議建立隧道,以提高安全性。然而,這些都超出了本文的範圍。

免責聲明:上述工作流程在 Fedora 35 上使用幾個虛擬機工作時沒有問題。如果它對你不起作用,那麼你可能遇到了一個錯誤。請報告它。

via: https://fedoramagazine.org/sharing-the-computer-screen-in-gnome/

作者:Lukáš Růžička 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國

    Linux中國

    DevOps 將去向何方?

    微軟、谷歌、亞馬遜、IBM 和甲骨文如今都在關注云上的 DevOps。這些大公司正在給企業提供 IT 自動化的服務。然而,DevOps 仍然在持續的演進中。DevSecOps、AIOps 和 NoOps 正在成為下一個流行詞。