当有人需要与您共享屏幕,或者您需要与他人共享屏幕时,您有多种选择。视频会议软件,例如开源的 Jitsi Web 应用程序,虽然我们称之为“屏幕共享”,但它实际上是演示。您正在向他人演示您的屏幕,但他们无法与之互动。有时您实际上想与信任的朋友或同事共享您的屏幕和鼠标光标,而实现此目的的工具是 VNC(虚拟网络计算),它内置于您的 Linux 桌面中。
在任何屏幕共享场景中,都有两台计算机,可能还有两个用户。因此,本文分为两部分。第一部分是为设置计算机以接受屏幕共享请求的人员准备的,第二部分是为尝试连接到其他人屏幕的人员准备的。
在 Linux 上共享我的屏幕
如果您正在阅读本节,那么您是需要朋友提供技术帮助的人,并且您希望允许您的朋友连接到您的屏幕。您需要配置您的桌面以允许屏幕共享。
在 GNOME 桌面中,从“活动”菜单打开“设置”应用程序。在“设置”窗口中,单击“共享”。在“共享”窗口中,单击“屏幕共享”。
在出现的“屏幕共享”窗口中,您有两个选择。
您可以设置密码,以便连接到您屏幕的人员必须输入密码才能连接。当您不希望在您的朋友计划查看您的屏幕时在电脑旁时,这很方便。
您可以要求通知,以便在有人尝试连接时,系统会提示您允许他们进入(或不允许)。

(Seth Kenlon, CC BY-SA 4.0)
如果您使用的是 KDE Plasma 桌面,那么配置屏幕共享的应用程序称为 krfb(它代表“远程帧缓冲”,VNC 使用的协议)。它与相同的概念完全相同,只是布局不同。

(Seth Kenlon, CC BY-SA 4.0)
防火墙
通常,您计算机的内部防火墙阻止人们进入您的计算机。它通过不加区分地阻止所有传入连接来实现这一点。但是,在这种情况下,您希望允许一种类型的流量,因此您需要在防火墙中打开一个端口。
在 Fedora、CentOS、Mageia 和许多其他 Linux 发行版上,无论您是否知道,您都有防火墙。但是,您可能还没有应用程序来帮助您配置防火墙。要安装默认的防火墙配置应用程序,请启动 GNOME 软件并搜索防火墙。
安装完成后,启动防火墙配置应用程序,滚动浏览(非常长的)服务列表,找到并启用 vnc-server。

(Seth Kenlon, CC BY-SA 4.0)
添加 vnc-server
后,打开“选项”菜单并选择“运行时到永久”,以便您的新规则即使在您重新启动后仍然存在。
在 Debian、Ubuntu、Linux Mint 和其他发行版上,您可能正在运行名为 ufw 的防火墙,因此请安装 gufw。在 gufw 中,单击“规则”选项卡底部的加号 (+) 图标以添加新规则。在出现的“添加新防火墙规则”窗口中,搜索 vnc
并单击“添加”按钮。

(Seth Kenlon, CC BY-SA 4.0)
您的计算机现在已配置为接受 VNC 请求。您可以跳到 [故障排除] 部分。
查看共享屏幕
如果您正在阅读本节,那么您是远程提供技术帮助的人。您需要连接到朋友或同事的计算机,查看他们的屏幕,甚至控制他们的鼠标和键盘。有很多应用程序可以做到这一点,包括 TigerVNC、KDE 的 krdc 和 GNOME Connections。
GNOME Connections
在您的本地计算机上,从 GNOME 软件或使用您的软件包管理器安装 GNOME Connections 应用程序
$ sudo dnf install gnome-connections
在 GNOME Connections 中,单击左上角的加号 (+) 图标以添加目标主机。选择 VNC 协议,然后输入您要连接的用户名和主机或 IP 地址,然后单击“连接”按钮。

(Seth Kenlon, CC BY-SA 4.0)
如果您要连接的用户必须出于端口转发的目的创建新端口,则您必须将非默认端口附加到地址。例如,假设您的目标用户创建了端口 59001 以接受 VNC 流量,并且他们的家庭路由器地址是 93.184.216.34。在这种情况下,您输入 username@93.184.216.34:59001
(其中 username
是用户的实际用户名。)
如果远程系统的用户要求 VNC 密码,则在建立连接之前,系统会提示您输入密码。否则,远程计算机上的用户会收到警报,询问他们是否允许您共享他们的屏幕。只要他们接受,连接就会建立,您就可以查看甚至控制远程主机的鼠标和键盘。
Linux 屏幕共享故障排除
在工作环境之外,想要共享屏幕的用户和需要查看屏幕的人员通常位于不同的网络中。您可能在家中,使用路由器将您连接到互联网(这是您向 ISP 支付互联网账单时从他们那里获得的盒子)。无论您是否意识到,您的路由器都旨在阻止不受欢迎的访问者进入。这通常非常好,但在这个特殊情况下,您想让受信任的人通过,以便他们可以连接到您的屏幕。
要让某人进入您的网络,您必须配置您的路由器以允许在特定“端口”(类似于船舶港口,但用于数据包而不是货物)上的流量,然后配置该流量以转发到您的个人计算机。
不幸的是,完成此操作没有单一方法。每个路由器制造商的做法都略有不同。这意味着我无法指导您完成所需的具体步骤,因为我不知道您拥有什么路由器,但我可以告诉您您需要预先了解哪些信息,以及一旦您在路由器中摸索时应该查找什么。
1. 获取您的本地 IP 地址
您需要知道您计算机的网络 IP 地址。要获取该地址,请打开 GNOME “设置”,然后单击左侧列中的“Wi-Fi”(如果您使用有线连接,则单击“网络”)。在“Wi-Fi”面板中,单击齿轮图标,然后在出现的“详细信息”窗口中找到“IPv4 地址”。本地 IP 地址以 192.168 或 10 开头。
例如,我的网络 IP 地址是 10.0.1.2。写下您的网络 IP 地址以备后用。
2. 获取您的公共 IP 地址
单击此链接以获取您的公共 IP 地址: http://ifconfig.me
例如,我的公共 IP 地址是 93.184.216.34。写下您的公共 IP 地址以备后用。
3. 配置您的路由器
此过程在您的家庭网络中向世界打开一个端口。该端口受您的 VNC 密码保护,但这仅作为临时便利措施。完成屏幕共享后,您必须关闭端口,否则您的网络将面临风险。
路由器界面因制造商而异,但无论您在家中使用什么品牌的路由器,其思路都是相同的。首先,登录到您的路由器。路由器的地址和登录信息通常印在路由器本身或其文档中。我拥有一台 TP-Link GX90 路由器,我通过将 Web 浏览器指向 10.0.1.1 来登录它,但您的路由器可能是 192.168.0.1 或其他地址。
我的路由器将端口转发称为“虚拟服务器”,这是在路由器的“NAT 转发”选项卡中找到的类别。= 其他路由器可能只是将其称为“端口转发”或“防火墙”甚至“应用程序”。可能需要点击几下才能找到正确的类别,或者您可能需要花一些时间研究路由器的文档。
当您找到端口转发设置(无论在您的路由器中它的标题是什么)时,您需要添加一个新规则,该规则标识一个外部端口(我使用 59001)并将到达该端口的流量发送到内部端口(5900 是标准 VNC 端口)。
在步骤 1 中,您获得了您的网络 IP 地址。将其用作到达路由器端口 59001 的流量的目标地址。以下是我的路由器配置示例,但您的配置几乎肯定会有所不同

(Seth Kenlon, CC BY-SA 4.0)
此配置将到达外部端口 59001 的流量发送到 10.0.1.2 的端口 5900,这正是 VNC 所需的。
现在您可以告诉尝试与您共享屏幕的朋友输入您的公共 IP 地址(在本例中为 93.184.216.34)和端口 59001。
屏幕共享结束后,返回到您的路由器并禁用或删除此防火墙规则。在任何情况下,您都不应将未使用的端口在路由器的防火墙中保持打开状态。
Linux 屏幕共享与信任
仅与您信任的人共享对您屏幕的控制权。VNC 的设置可能很复杂,因为将您计算机的访问权限授予您自己以外的其他人存在安全和隐私问题。但是,一旦您设置好它,当您想分享您正在做的很酷的事情,或者获得对困扰您的事情的帮助时,您就可以即时轻松地共享您的屏幕。
评论已关闭。