如何在Debian 8上设置VNC服务器

栏目: 服务器 · 发布时间: 6年前

内容简介:VNC(虚拟网络计算)是一种使用户能够连接远程计算机的图形桌面并与之交互的系统。它可以通过网络传输屏幕更新,键盘和鼠标事件。当您需要服务器的图形桌面环境时,VNC非常有用。XFCE是一个轻量级的桌面环境。由于它具有较低的系统资源要求,并且由于许多VNC用户都熟悉它,因此我们将在本教程中使用XFCE。但是,您也可以使用自己喜欢的桌面环境,例如Gnome或KDE。

介绍

VNC(虚拟网络计算)是一种使用户能够连接远程计算机的图形桌面并与之交互的系统。它可以通过网络传输屏幕更新,键盘和鼠标事件。

当您需要服务器的图形桌面环境时,VNC非常有用。

XFCE是一个轻量级的桌面环境。由于它具有较低的系统资源要求,并且由于许多VNC用户都熟悉它,因此我们将在本教程中使用XFCE。但是,您也可以使用自己喜欢的桌面环境,例如Gnome或KDE。

在本教程中,我们将设置Debian 8服务器,在其上安装XFCE桌面环境,并通过VNC连接它。此外,我们将为VNC Server创建一个启动脚本,并通过SSH保护它。

准备

请完成以下准备。

  • Debian 8(或8.1)具有root访问权限的腾讯云CVM。512 MB的RAM足以运行VNC和XFCE,但您可能需要更大的腾讯云CVM,具体取决于您打算如何处理图形界面。没有服务器的同学可以在这里购买,不过我个人更推荐您使用 免费 的腾讯云开发者实验室进行试验,学会安装后再购买服务器。
  • 计算机上的VNC查看器(客户端)连接到您的服务器。在本教程中,我们将在Windows上使用UltraVNC,但您可以使用其他VNC客户端。你可以 在这里 下载UltraVNC 。OS X附带一个名为Screen Sharing的内置VNC客户端
  • SSH客户端通过SSH建立安全连接。我们将使用PuTTY for Windows。你可以 在这里 下载PuTTY 。在OS X上,只需使用内置的终端应用程序。

第1步 - 安装VNC和XFCE

在此步骤中,我们将安装VNC Server和XFCE桌面环境,以及其他软件和图标包。

更新服务器的包列表:

apt-get update

升级包本身:

apt-get -y upgrade

然后,我们将安装 tightvncserver 和XFCE4一些有用的附加组件和一个图标主题:

apt-get install xfce4 xfce4-goodies gnome-icon-theme tightvncserver

默认情况下,没有安装浏览器。如果要从VNC连接访问Web,可以安装 iceweasel (这是Mozilla Firefox for Debian的重新命名版本):

apt-get install iceweasel

第2步 - 创建VNC用户

我们将为VNC连接创建一个单独的用户,以保证安全和整洁。强烈建议使用 sudo ,而不是使用 直接用户为你的VNC服务器。

您可以使用以下命令将名为 vnc 的用户添加到Debian 腾讯云CVM:

adduser vnc

为新用户提供密码。只需按下 ENTER 可跳过所有其他问题。

执行此命令安装 sudo

apt-get install sudo

将新的 vnc 用户添加到 sudo 组,该组将授予该用户执行root命令的权限。

gpasswd -a vnc sudo

让我们切换到 vnc 用户:

su - vnc

第3步 - 启动和停止VNC服务器

作为我们新创建的 vnc 用户,我们可以启动VNC服务器并测试我们的连接。

启动VNC服务器:

vncserver

由于这是您第一次运行服务器,因此系统会要求您设置客户端用于连接的密码。请记住此密码以备日后使用!您还可以设置仅查看密码,该密码允许用户查看屏幕但不与其进行交互。密码应为 6-8个字符

启动服务器时,您将收到有关显示器编号的通知。

xauth:  file /home/vnc/.Xauthority does not exist
​
New 'X' desktop is vnc:1
​
Creating default startup script /home/vnc/.vnc/xstartup
Starting applications specified in /home/vnc/.vnc/xstartup
Log file is /home/vnc/.vnc/vnc:1.log

默认情况下,VNC连接 5901 开始的端口上用于第一次显示。您的第二个显示器将在端口 5902 上提供。

不要立即停止服务器,但是我们要包含stop命令以供参考。

使用此命令停止 Display 1 上的VNC服务器(和端口 5901 ):

vncserver -kill :1

:1 是要结束的显示号码。

如果要再次连接,可以手动启动VNC服务器。我们将在稍后的步骤中为VNC服务器创建服务。

第4步 - 从VNC客户端连接

您现在可以连接到VNC服务器。打开本地VNC客户端,具体取决于您的操作系统。

在Windows上,您可以 在此处 使用UltraVNC 。

在OS X上,您可以使用内置的屏幕共享应用程序或通过Safari访问此应用程序。在Safari中,您可以输入 vnc:// 您的服务器 IP:5901

对于您的VNC服务器地址,请输入 您的服务器 IP:5901 并使用您刚为VNC连接设置的密码。

您可以在XFCE欢迎屏幕上选择 使用默认配置 按钮以便轻松入门:

现在您可以使用远程桌面了!

步骤5 - 创建systemd服务以自动启动VNC服务器

在本节中,我们将VNC服务器添加到systemd。使用服务对于启动和停止VNC服务器非常有用,并且在重新启动腾讯云CVM时也可以自动启动它。

首先,让我们结束当前实例:

vncserver -kill :1

创建一个简单的脚本来轻松管理和配置我们的VNC服务器:

作为 vnc 或其他sudo用户,使用您喜欢的文本编辑器创建脚本文件。

sudo nano /usr/local/bin/myvncserver

准确添加这些内容。该脚本为VNC提供了一些启动参数。

#!/bin/bash
PATH="$PATH:/usr/bin/"
DISPLAY="1"
DEPTH="16"
GEOMETRY="1024x768"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"
​
case "$1" in
start)
/usr/bin/vncserver ${OPTIONS}
;;
​
stop)
/usr/bin/vncserver -kill :${DISPLAY}
;;
​
restart)
$0 stop
$0 start
;;
esac
exit 0

您可以修改脚本以更改VNC连接的颜色深度或分辨率。

如果您使用的是nano,则可以保存文件(通过 CTRL+O )并退出( CTRL+X )。

使文件可执行:

sudo chmod +x /usr/local/bin/myvncserver

我们的脚本将帮助我们轻松修改设置和启动/停止VNC服务器。

如果您愿意,可以手动调用脚本以使用所需的配置在端口5901上启动/停止VNC服务器。

sudo /usr/local/bin/myvncserver start
sudo /usr/local/bin/myvncserver stop
sudo /usr/local/bin/myvncserver restart

我们现在可以为我们的服务创建一个单元文件。单元文件用于描述服务并告诉计算机如何启动/停止或重新启动服务。

sudo nano /lib/systemd/system/myvncserver.service

将这些命令复制到服务文件。我们的服务只需使用用户 vnc 调用上面的启动脚本。

[Unit]
Description=Manage VNC Server on this 腾讯云CVM
​
[Service]
Type=forking
ExecStart=/usr/local/bin/myvncserver start
ExecStop=/usr/local/bin/myvncserver stop
ExecReload=/usr/local/bin/myvncserver restart
User=vnc
​
[Install]
WantedBy=multi-user.target

现在我们可以重新加载 systemctl 并启用我们的服务:

sudo systemctl daemon-reload
sudo systemctl enable myvncserver.service

您现在已启用新服务。使用 systemctl 命令启动,停止或重新启动服务:

sudo systemctl start myvncserver.service
sudo systemctl stop myvncserver.service
sudo systemctl restart myvncserver.service

现在,您可以在腾讯云CVM上将VNC Server作为服务运行。

步骤6 - 使用SSH隧道保护您的VNC服务器

默认情况下,VNC连接不使用加密,因此建议使用SSH隧道来保护会话。

为此,我们只允许我们的VNC服务器在 localhost上运行 。 您可以通过添加 -localhostOPTIONS 上一步中创建的启动脚本中的行来执行此操作。

首先,停止VNC服务器:

sudo systemctl stop myvncserver.service

编辑配置脚本:

sudo nano /usr/local/bin/myvncserver

改变这一行:

在/ usr / local / bin目录/ myvncserver

. . .
​
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY}"
​
. . .

替换为:

. . .
​
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} :${DISPLAY} -localhost"
​
. . .

重启VNC服务器:

sudo systemctl start myvncserver.service

现在,您无法从远程计算机直接连接到VNC服务器。

Windows:

我们将使用PuTTY创建SSH隧道,然后通过我们创建的隧道连接。

打开PuTTY。

从左侧菜单中,转到 Connection-> SSH-> Tunnels 部分。

添加新的转发端口 部分,输入 5901源端口localhost:5901目标

单击“ 添加” 按钮。

您现在可以转到左侧菜单中的“ 会话” 部分。

主机名(或IP地址) 字段中输入您的腾讯云CVM的IP地址。

单击“ 打开” 按钮进行连接。您也可以保存这些选项以供日后使用。

使用您的 vnc 用户登录。

进行VNC连接时,保持PuTTY窗口打开。

现在您可以像往常一样使用VNC查看器。只需输入 localhost :: 5901 作为地址,并在后台保持SSH连接。

OS X:

要建立SSH隧道,请在终端中使用以下行:

ssh vnc@your_server_ip -L 5901:localhost:5901

vnc 用户进行SSH 正常身份验证。然后,在屏幕共享应用程序中,使用 localhost:5901

结论

现在,您可以在Debian 8服务器上使用共享远程桌面。

使用它来配置您的服务器,或与他人共享您的屏幕。

想要了解更多关于设置VNC服务器的相关教程,请前往腾讯云+社区学习更多知识。

参考文献:《How To Set Up VNC Server on Debian 8》


以上所述就是小编给大家介绍的《如何在Debian 8上设置VNC服务器》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

精通CSS与HTML设计模式

精通CSS与HTML设计模式

Michael Bowers / 刘申 朱瑜敏 鲁奇 / 人民邮电出版社 / 2008-9 / 69.00元

本书是一部非常实用的CSS 与HTML(XHTML)解决方案手册。书中包含了350 多种可以立即使用的设计模式(涉及文本、背景、边框、图片、表格、布局等多方面),并介绍了每种模式的原理和使用。每种设计模式、示例和源代码都经过了精心设计,易于实现和使用。通过阅读此书,可大大提高读者在 Web 设计和开发中的效率和创造力。 本书结构清晰,示例丰富,实践性强,适用于所有Web 开发和设计人员......一起来看看 《精通CSS与HTML设计模式》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

SHA 加密
SHA 加密

SHA 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具