【免费资源#39】VNC远程访问桌面?如何远程访问Ubuntu桌面?VNC如何设置?如何使用Ubuntu自带软件实现远程访问?
目录:
本指南介绍了在Ubuntu 18.04系统上安装和配置VNC服务器的必要步骤。 我们还将向您展示如何通过SSH隧道安全地连接到VNC服务器。
虚拟网络计算(VNC)是一个图形桌面共享系统,可让您使用键盘和鼠标远程控制另一台计算机。 它是Microsoft远程桌面协议(RDP)的开源替代方案。
先决条件
在继续本教程之前,请确保您以具有sudo特权的用户身份登录。
安装桌面环境
大多数服务器未安装桌面环境,因此我们将从安装轻量级桌面环境开始。
Ubuntu存储库中提供了几种桌面环境(DE)。 在本教程中,我们将安装Xfce。 它是一种快速,稳定且轻巧的桌面环境,非常适合在远程服务器上使用。
首先使用以下命令更新系统:
sudo apt update
sudo apt upgrade
然后,键入以下命令以在您的服务器上安装Xfce:
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
根据您的系统,下载和安装Xfce软件包可能需要一些时间。
安装VNC服务器
Ubuntu存储库中还有几种不同的VNC服务器,例如TightVNC,TigerVNC和x11vnc。 每个VNC服务器在速度和安全性方面都有各自的优缺点。
我们将安装TigerVNC,它是积极维护的高性能VNC服务器。
键入以下命令以在您的Ubuntu服务器上安装TigerVNC:
sudo apt install tigervnc-standalone-server tigervnc-common
现在已经安装了VNC服务器,下一步是运行
vncserver
命令,该命令将创建初始配置并设置密码。 运行以下命令时请勿使用sudo:
vncserver
系统将提示您输入并确认密码,以及是否将其设置为只读密码。 如果选择设置仅查看密码,则用户将无法使用鼠标和键盘与VNC实例进行交互。
You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd:1 to connect to the VNC server.
第一次运行
vncserver
命令时,它将创建密码文件并将其存储在
~/.vnc
目录中,如果不存在该目录,则将创建该文件。
注意上面输出中主机名后面的
:1
。 这表示正在运行vnc服务器的显示端口号。 在我们的例子中,服务器在TCP端口
5901
(5900 + 1)上运行。 如果使用
vncserver
创建第二个实例,它将在下一个可用端口(即
:2
)上运行,这意味着服务器在端口
5902
(5900 + 2)上运行。
要记住的重要一点是,在使用VNC服务器时,
:X
是表示
5900+X
的显示端口。
在继续下一步之前,请先使用带有
-kill
选项和服务器编号作为参数的
vncserver
命令停止VNC实例。 在我们的例子中,服务器在端口5901(
:1
)中运行,因此我们将使用以下命令将其停止:
vncserver -kill:1
Killing Xtigervnc process ID 7264… success!
配置VNC服务器
现在我们在服务器上同时安装了Xfce和TigerVNC,我们需要配置TigerVNC以使用Xfce。 为此,请创建以下文件:
nano ~/.vnc/xstartup
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
保存并关闭文件。 每当您启动或重新启动TigerVNC服务器时,以上命令将自动执行。
~/.vnc/xstartup
文件也需要具有执行权限。 运行以下
chmod
命令以确保权限正确:
chmod u+x ~/.vnc/xstartup
〜/.vnc /配置
创建一个Systemd单位文件
我们将创建一个systemd单位文件,该文件使我们能够根据需要轻松地启动,停止和重新启动VNC服务,与其他任何systemd服务一样。
打开文本编辑器,然后将以下配置复制并粘贴到其中。 确保在第7行中更改用户名以匹配您的用户名。
sudo nano /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]
Description=Remote desktop service (VNC) After=syslog.target network.target Type=simple User=linuxize PAMName=login PIDFile=/home/%u/.vnc/%H%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill:%i > /dev/null 2>&1 ||:' ExecStart=/usr/bin/vncserver:%i -geometry 1440x900 -alwaysshared -fg ExecStop=/usr/bin/vncserver -kill:%i WantedBy=multi-user.target
保存并关闭文件。
通知systemd我们使用以下命令创建了一个新的单位文件:
sudo systemctl daemon-reload
下一步是使用以下命令启用单位文件:
sudo systemctl enable [email protected]
@
符号后面的数字
1
定义了VNC服务将在其上运行的显示端口。 这意味着VNC服务器将侦听端口
5901
,如上一节所述。
通过执行以下命令来启动VNC服务:
sudo systemctl start [email protected]
验证服务是否成功启动:
sudo systemctl status [email protected]
● [email protected] - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/[email protected]; indirect; vendor preset: enabled) Active: active (running) since Thu 2018-08-16 19:05:54 UTC; 4s ago Process: 9893 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 9900 (vncserver) Tasks: 0 (limit: 507) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 9900 /usr/bin/perl /usr/bin/vncserver:1 -geometry 1440x900 -alwaysshared -fg
连接到VNC服务器
VNC不是加密协议,可能会受到数据包嗅探。 推荐的方法是创建一个SSH隧道,该隧道将安全地将流量从端口5901上的本地计算机转发到同一端口上的服务器。
在Linux和macOS上设置SSH隧道
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
系统将提示您输入用户密码。
不要忘记用
username
名和服务器的IP地址替换
username
和
server_ip_address
。
在Windows上设置SSH隧道
打开Putty,然后在
Host name or IP address
字段中输入服务器的IP地址。




您可以使用键盘和鼠标从本地计算机开始与远程XFCE桌面进行交互。
结论
到目前为止,您应该已经启动并运行了VNC服务器,并且可以使用易于使用的图形界面从本地台式机轻松管理Ubuntu 18.04服务器。
要将VNC服务器配置为为多个用户启动显示,请创建初始配置并使用
vncserver
命令设置密码。 您还需要使用其他端口创建一个新的服务文件。
如有任何疑问,请随时发表评论。
ubuntu vnc如何在Ubuntu Linux中安装最新的Firefox 3.6.6
Firefox 3.6.6具有浏览器防崩功能。下面介绍如何在Ubuntu Linux中轻松安装它。
如何在Ubuntu 18.04上添加交换空间
交换是物理RAM内存已满时使用的磁盘空间。 当Linux系统的RAM用完时,非活动页面将从RAM移动到交换空间。 本教程介绍了将交换文件添加到Ubuntu 18.04所需的步骤。
如何在Ubuntu Linux中更改root密码
本教程说明了如何临时更改root用户帐户,以及如何在Ubuntu系统上设置root密码。 root用户(或超级用户)是在所有类似Linux和Unix的系统上都存在的特殊用户帐户。







