你知道怎么在Linux上安装软件吗?教你如何在Linux系统上安装软件 | Linux安装软件 | Linux教程
目录:
本教程描述了如何在Debian 9系统上安装和配置VNC服务器。 我们还将向您展示如何创建SSH隧道并安全地连接到VNC服务器。
虚拟网络计算(VNC)是一个图形桌面共享系统,可让您使用键盘和鼠标远程控制另一台计算机。
先决条件
在继续本教程之前,请确保您以具有sudo特权的用户身份登录。
安装桌面环境
您的Debian服务器可能没有安装桌面环境。 我们的第一步是安装轻量级桌面环境。
Debian存储库中有几种可用的桌面环境(DE)。 在本教程中,我们将使用Xfce作为我们选择的桌面环境。 它是快速,稳定且轻巧的,非常适合在远程服务器上使用。
更新软件包索引,并使用以下命令在您的Debian服务器上安装Xfce:
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
根据您的系统,下载和安装Xfce软件包可能需要一些时间。
安装VNC服务器
Debian存储库中还有几种不同的VNC服务器,例如TightVNC,TigerVNC和x11vnc。 每个VNC服务器在速度和安全性方面都有其优点和缺点。
我们将使用TigerVNC,它是积极维护的高性能VNC服务器。 要在您的Debian服务器上安装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 'debian9.localdomain:1 (linuxize)' desktop at:1 on machine debian9.localdomain Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/debian9.localdomain: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 6677… success!
配置VNC服务器
现在,在服务器上同时安装了Xfce和TigerVNC,我们需要配置TigerVNC以使用Xfce。 为此,请创建以下文件:
nano ~/.vnc/xstartup
〜/.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服务。
打开文本编辑器,然后将以下配置复制并粘贴到其中。 不要忘记在第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一个新的
[email protected]
文件存在:
sudo systemctl daemon-reload
接下来,启用服务:
sudo systemctl enable [email protected]
@
符号后面的数字
1
定义了VNC服务将在其上运行的显示端口。 正如我们在上一节中讨论的那样,由于我们正在使用
1
因此VNC服务器将在端口
5901
上
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]; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-10-03 05:23:33 PDT; 51s ago Process: 7063 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 7071 (vncserver) Tasks: 0 (limit: 4915) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 7071 /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地址。




至此,您已经成功通过VNC连接到服务器。 现在,您可以使用键盘和鼠标从本地计算机开始与远程XFCE桌面进行交互。
结论
现在,您应该已经启动并运行了VNC服务器,并且可以使用图形界面从本地计算机轻松管理Debian 9服务器。
要将VNC服务器配置为为多个用户启动显示,请创建初始配置并使用
vncserver
命令设置密码。 您还需要使用其他端口创建一个新的服务文件。
如有任何疑问,请随时发表评论。
debian vnc如何在Debian 9上添加和删除用户
知道如何添加和删除用户是Linux用户应该知道的基本技能之一。 在本教程中,我们将向您展示如何在Debian 9上添加和删除用户。
如何在Debian 9上添加交换空间
交换是物理RAM内存已满时使用的磁盘空间。 本教程概述了在Debian 9系统上添加交换文件所必需的步骤。
如何在Debian 10 Linux上添加交换空间
交换是物理内存量已满时使用的磁盘空间。 本教程将指导您完成在Debian 10 Buster上添加交换文件的步骤。







