如何在Ubuntu上设置远程桌面

需要得到一台远程的Ubuntu Linux计算机吗?设置Ubuntu的屏幕共享,并在需要时进行远程控制。您可以连接到与任何VNC客户端的屏幕共享。我们会教你怎么做的。

Ubuntu内置的“屏幕共享”是一个VNC服务器

当您建立到远程Ubuntu Linux计算机的SSH连接时,您会得到一个终端窗口界面。这对于许多任务(如系统管理)来说都是非常好的,而且它具有轻量级连接的优势。没有要从主机传输到本地客户端的图形,因此设置起来又快又容易。

如果您希望看到图形应用程序安装在本地计算机上的远程主机上,您可以使用PuTTY连接来实现,这也很容易设置。

但是,如果你想全力以赴地看到整个远程桌面,就好像你就坐在它的正前方,那该怎么办呢?很简单-你使用“屏幕共享”,也就是所谓的桌面共享。

为此,您需要在远程计算机上配置屏幕共享,并使用本地计算机上的VNC客户端连接到远程计算机。而且-您已经猜到了-它很容易设置。

虽然这篇文章集中在Ubuntu上,但这确实是一个侏儒的事情。它在任何其他拥有其发行版的GNOME版本的Linux上都能同样好地工作。例如,Manjaro和Fedora具有下面描述的相同选项和设置。我们用Ubuntu 18.04LTS经历了这个过程。

如何在远程主机上启用屏幕共享

这些是您在要连接到的远程Ubuntu计算机上进行的设置。

在系统菜单上,单击设置图标。

在“设置”对话框中,单击侧面板中的“共享”,然后单击“共享”开关。

单击“屏幕共享”选项旁边的“关闭”,使其变为“打开”。

此时会出现“屏幕共享”对话框。单击标题栏中的切换将其启用。

启用切换时,对话框底部的滑块也会更改为启用。

默认情况下,“访问选项”设置为“新连接必须请求访问”。这意味着每个用户都必须确认每个连接。如果您尝试远程连接,这将不起作用,因此请改为配置密码。选择“需要密码”单选按钮,然后在“密码”字段中键入密码。

此密码与任何用户帐户无关,但必须由远程客户端在连接时提供。它被限制在八个字符之内,所以要尽可能地复杂。如果您忘记了密码,您可以随时重复这些步骤来重置密码。

输入密码后,关闭“屏幕共享”和“设置”对话框。

当发出连接请求时,加密用于传输和验证密码。其余的VNC流量是否加密取决于VNC客户端的功能。这更多的是对互联网连接的关注。

除非您在两个站点之间有安全的VPN,或者VNC连接受到其他保护(例如,通过SSH隧道传输),否则假定连接没有加密是非常安全的。避免通过连接打开敏感或私人文档。

现在,我们需要配置一个客户端来连接到这台计算机,这就带来了IP地址。

如何通过Internet访问远程系统

警告:我们建议仅在本地网络上使用VNC。Ubuntu的屏幕共享功能不允许设置超过8个字符的密码。如果您想要远程连接,我们建议您在使用远程Ubuntu系统的网络上设置虚拟专用网(VPN)服务器。从Internet连接到VPN,然后通过VPN连接到VNC系统。这可避免将VNC服务器直接暴露给网络。但是,如果您无论如何都要通过Internet访问屏幕共享服务器,本节将向您展示如何操作。

如果您与远程Ubuntu计算机不在同一网络中,则需要通过互联网连接到它。网络提供给Internet的IP地址是其公共IP地址。它实际上是由互联网服务提供商(ISP)分配的路由器的IP地址。因此,我们需要找到该IP地址。

要做到这一点,最简单的方法是在远程Ubuntu电脑的谷歌搜索栏中输入“my IP”,然后按Enter键。

很高兴知道这一点,但这还不足以连接到远程计算机。

想象一下,你想给酒店的某个人打电话。你不能直接打电话给他们的房间。你先给酒店打个电话,告诉他们你要找的客人的名字。总机接线员检查酒店名录,然后把您的电话转到正确的房间。

网络中的路由器充当交换机操作员。因此,远程网络上的路由器必须配置为将VNC连接请求转发到Ubuntu PC。这是一种称为端口转发的网络技术。

不过,让我们回过头来看一下。您的ISP可能为您分配了静态公有IP地址或动态公有IP地址。静态公有IP是永久性的,而动态公有IP地址可能会在路由器重新启动时更改。如果您的公用IP地址定期更改,远程计算机将不知道将其连接请求发送到哪个IP地址。

解决方案是所谓的动态域名系统(DDNS)。您可以使用免费的DDNS提供商。一般流程为:

您向DDNS提供商注册并收到静态网址。 您可以将路由器配置为定期联系DDNS提供商,并将其当前IP地址通知给它。 DDNS系统会更新您的网址记录,因此它会指向您的IP地址。这意味着向您的网址发出的连接请求始终会转发到您当前正确的IP地址。

相关:如何使用动态DNS从任何位置轻松访问您的家庭网络

使用我们的酒店类比,到目前为止,连接请求已经到达酒店总机。要完成连接,路由器必须执行端口转发。

路由器可以将到达特定端口的流量发送到特定计算机。一旦将它们配置为将VNC流量发送到特定计算机,所有传入的VNC连接请求都将定向到该计算机。

如果您要在Internet上使用VNC,建议使用非标准端口。默认情况下,远程Ubuntu计算机侦听TCP/IP端口5900上的VNC连接请求。

这是一个定义明确的约定,但我们还是通过分析一些网络流量对其进行了验证:

我们可以通过使用非标准端口(如43025)向外界屏蔽该详细信息。然后,必须将远程路由器配置为将端口43025(或您选择的任何端口)的连接请求转发到Ubuntu计算机的5900端口。

相关:如何转发路由器上的端口

这就像给酒店打电话,要求和43025房间的极客通话。接线员知道这位极客真的在5900房间,就会为您接通电话。极客不知道你要的是什么房间,他也不在乎。你不知道极客到底在哪个房间,也不在乎。

你们之间的谈话可以继续了,那是我们想要的结果。

如何从Linux系统连接

要连接到我们的Ubuntu计算机的客户端计算机不必运行Ubuntu。正如我们将在配置Windows客户端时看到的那样,它甚至不必运行Linux。

为了加强连接的与分布无关的特性,我们将从运行Manjaro的计算机进行连接。这些步骤对于其他发行版是相同的。

我们将建立虚拟计算网络(VNC)连接,因此我们需要使用能够实现该连接的客户端。Remmina是一个支持VNC的远程桌面客户端,它与许多Linux发行版捆绑在一起,包括Ubuntu。它很容易从其他发行版的包管理器中安装(如果还没有安装的话)。

按位于左侧Ctrl和Alt键之间的Super键,然后键入“remina”的前几个字母。Remmina图标将出现在屏幕顶部。

单击图标以启动Remmina。

当Remmina对话框出现时,单击“+”号以创建新连接。

此时将出现远程桌面首选项对话框。您可以在此输入有关与远程计算机的连接的详细信息。这些文件可以保存和重复使用,因此您不必在每次要连接时都重新键入它们。

提供此连接的“名称”。您可以选择任何选项,但它应该标识您要连接的计算机。

您可以将“Group”字段留空或提供组的名称。如果您配置了许多连接,则可以将它们分成不同的类别,例如Linux计算机、Windows计算机、总部、本地分支机构等。

从“Protocol”(协议)下拉菜单中选择“VNC-VNC Viewer”(VNC-VNC查看器)。因为Remmina知道我们要使用哪个协议,所以会出现更多字段。

在“服务器”字段中,输入远程计算机的IP地址或网络名称。“用户名”字段与Linux用户帐户无关;您可以在此处键入任何内容。“密码”必须是您在远程Ubuntu机器上设置屏幕共享时使用的密码。

从“颜色深度”下拉菜单中选择一个值。数值越低,反应越灵敏,但是屏幕看起来很平坦,有点迷幻。如果视觉效果对您不重要,并且您更喜欢速度而不是美观,请选择较低的值。较高的值看起来更像实际桌面。然而,在连接速度较慢的情况下,它们的更新速度可能会很慢,并且鼠标移动可能会不稳定。

从“质量”下拉菜单中选择“中等”。如果连接时一切正常,则可以在后续连接时将其调整为更高的值。但为了确保连接正常工作,“中”是一个很好的起点。

配置连接详细信息后,单击“保存”按钮。您返回到Remmina主窗口,您的新连接将在那里列出。

双击连接以连接到远程Ubuntu计算机。远程计算机必须通电,并且设置屏幕共享的用户必须登录。他将看到您已连接并控制他的桌面的通知,这只是出于礼貌。

需要注意的是,您没有登录到远程计算机-您正在接管已经登录的人的会话。

Remmina在计算机的窗口中显示远程桌面。您可以像坐在远程计算机前一样移动鼠标和使用键盘。

侧面板上的图标允许您最大化窗口、将远程桌面缩放到Remmina窗口、转到全屏视图等。将鼠标悬停在图标上可获得工具提示,查看它们的功能。

完成远程连接后,单击侧面板中的底部图标断开与远程计算机的连接。

如何从Windows系统连接

Windows与VNC连接中使用的加密存在兼容性问题,因此我们将选择使用加密。这样,使用加密的计算机可以这样做,而不使用加密的计算机可以在没有加密的情况下连接。

警告:您网络中的任何人都可以窃听该连接。这是在本地网络或通过VPN-而不是在互联网上使用它很好的另一个原因!

在远程Ubuntu计算机上使用此命令使加密成为可选的:

gsettings set org.gnome.Vino require-encryption false

如果您的Windows计算机上没有RealVNC,请下载并安装它。安装很简单-只需单击“下一步”按钮并接受默认设置。

安装后,从“开始”菜单启动“VNC查看器”应用程序。-从“文件”菜单选择“新建连接”。

此时会出现“属性”对话框。在“VNC Server”字段中键入远程Ubuntu服务器的IP地址或网络名称。

在“名称”字段中,键入此连接的名称,这样您就可以识别它连接到哪台远程计算机。您可以在“标签”字段中提供标签,也可以将其留空。

在“安全”组中,将“加密”下拉菜单设置为“让VNC服务器选择”。确保“如果可能,使用单点登录(SSO)进行身份验证”和“如果可能,使用智能卡或证书存储进行身份验证”选项都处于未选中状态。

单击“确定”保存您的设置。新连接的图标将出现在主窗口中。

双击图标以连接到远程计算机。启动连接时,您将看到一个闪屏。

因为您将加密设置为可选的,并且不会在Windows计算机上使用它,所以您会看到一个警告对话框。

选中“不要在此计算机上再次就此向我发出警告”复选框,然后单击“继续”。

您可以在RealVNC窗口中看到远程Ubuntu计算机的桌面。

请记住,Windows VNC连接未加密,因此不要使用此连接打开私人文档或电子邮件。

永远不会太远

如果您需要远程访问Ubuntu计算机,您现在有一个简单的方法可以做到这一点。作为一项额外功能,RealVNC还提供了一款适用于Android、智能手机和iPhone的免费应用程序。您可以按照上面相同的步骤进行设置。

相关文章