文档章节

安装和配置VNC服务器的法则

linuxprobe
 linuxprobe
发布于 2016/09/09 12:44
字数 1623
阅读 21
收藏 3

我们都知道,作为一个系统管理员,大多数时间是通过网络管理服务器的。在管理服务器的过程中,大多数情况下我们只是用 SSH 来完成我们的管理任务。VNC 允许我们开启一个远程图形会话来连接我们的服务器,这样我们就可以通过网络远程访问服务器的图形界面了。

VNC 服务器是一个自由开源软件,它可以让用户可以远程访问服务器的桌面环境。另外连接 VNC 服务器需要使用 VNC viewer 这个客户端。

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

一些 VNC 服务器的优点:

  • 远程的图形管理方式让工作变得简单方便。
  • 剪贴板可以在 CentOS 服务器主机和 VNC 客户端机器之间共享。
  • CentOS 服务器上也可以安装图形工具,让管理能力变得更强大。
  • 只要安装了 VNC 客户端,通过任何操作系统都可以管理 CentOS 服务器了。
  • 比 ssh 图形转发和 RDP 连接更可靠。

那么,让我们开始安装 VNC 服务器之旅吧。我们需要按照下面的步骤一步一步来搭建一个可用的 VNC。

首先,我们需要一个可用的桌面环境(X-Window),如果没有的话要先安装一个。

注意:以下命令必须以 root 权限运行。要切换到 root ,请在终端下运行“sudo -s”,当然不包括双引号(“”)。

1. 安装 X-Window

首先我们需要安装X-Window,在终端中运行下面的命令,安装会花费一点时间。

# yum check-update
# yum groupinstall "X Window System"

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

#yum install gnome-classic-session gnome-terminal nautilus-open-terminal control-center liberation-mono-fonts

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

### 设置默认启动图形界面
# unlink /etc/systemd/system/default.target
# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

# reboot

在服务器重启之后,我们就有了一个工作着的 CentOS 7 桌面环境了。

现在,我们要在服务器上安装 VNC 服务器了。

2. 安装 VNC 服务器

现在要在我们的 CentOS 7 上安装 VNC 服务器了。我们需要执行下面的命令。

# yum install tigervnc-server -y

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

3. 配置 VNC

然后,我们需要在 /etc/systemd/system/目录里创建一个配置文件。我们可以将 /lib/systemd/sytem/vncserver@.service拷贝一份配置文件范例过来。

# cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

接着我们用自己最喜欢的编辑器(这儿我们用的 nano)打开/etc/systemd/system/vncserver@:1.service,找到下面这几行,用自己的用户名替换掉。举例来说,我的用户名是 linoxide 所以我用 linoxide 来替换掉 :

ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

替换成

ExecStart=/sbin/runuser -l linoxide -c "/usr/bin/vncserver %i"
PIDFile=/home/linoxide/.vnc/%H%i.pid

如果是 root 用户则

ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

好了,下面重启 systemd 。

# systemctl daemon-reload

最后还要设置一下用户的 VNC 密码。要设置某个用户的密码,必须要有能通过 sudo 切换到用户的权限,这里我用 linoxide 的权限,执行“su linoxide”就可以了。

# su linoxide
$ sudo vncpasswd

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

备注:确保你输入的密码多于6个字符

4. 开启服务

用下面的命令(永久地)开启服务:

$ sudo systemctl enable vncserver@:1.service

启动服务。

$ sudo systemctl start vncserver@:1.service

5. 防火墙设置

我们需要配置防火墙来让 VNC 服务正常工作。

$ sudo firewall-cmd --permanent --add-service vnc-server
$ sudo systemctl restart firewalld.service

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

现在就可以用 IP 和端口号(LCTT 译注:例如 192.168.1.1:1 ,这里的端口不是服务器的端口,而是视 VNC 连接数的多少从1开始排序)来连接 VNC 服务器了。

6. 用 VNC 客户端连接服务器

好了,现在已经完成了 VNC 服务器的安装了。要使用 VNC 连接服务器,我们还需要一个在本地计算机上安装的仅供连接远程计算机使用的 VNC 客户端。

安装和配置VNC服务器的法则安装和配置VNC服务器的法则

你可以用像Tightvnc viewer和 Realvnc viewer的客户端来连接到服务器。

要用更多的用户连接,需要创建配置文件和端口,请回到第3步,添加一个新的用户和端口。你需要创建 vncserver@:2.service, 并替换配置文件里的用户名和之后步骤里相应的文件名、端口号。请确保你登录 VNC 服务器用的是你之前配置 VNC 密码的时候使用的那个用户名。

VNC 服务本身使用的是5900端口。鉴于有不同的用户使用 VNC ,每个人的连接都会获得不同的端口。配置文件名里面的数字告诉 VNC 服务器把服务运行在5900的子端口上。在我们这个例子里,第一个 VNC 服务会运行在5901(5900 + 1)端口上,之后的依次增加,运行在5900 + x 号端口上。其中 x 是指之后用户的配置文件名vncserver@:x.service里面的 x 。

在建立连接之前,我们需要知道服务器的 IP 地址和端口。IP 地址是一台计算机在网络中的独特的识别号码。我的服务器的 IP 地址是96.126.120.92,VNC 用户端口是1。

执行下面的命令可以获得服务器的公网 IP 地址(LCTT 译注:如果你的服务器放在内网或使用动态地址的话,可以这样获得其公网 IP 地址)。

# curl -s checkip.dyndns.org|sed -e 's/.*Current IP Address: //' -e 's/<.*$//'

其他命令:

关闭 VNC 服务。

# systemctl top vncserver@:1.service

禁止 VNC 服务开机启动。

# systemctl disable vncserver@:1.service

关闭防火墙。

# systemctl stop firewalld.service

总结

好了,现在我们已经在运行 CentOS 7 / RHEL 7 的服务器上安装配置好了 VNC 服务器。VNC 是自由开源软件中最简单的一种能实现远程控制服务器的工具,也是一款优秀的 Teamviewer Remote Access 替代品。VNC 允许一个安装了 VNC 客户端的用户远程控制一台安装了 VNC 服务的服务器。

免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:http://www.linuxprobe.com/

本文转载自:http://www.linuxprobe.com/install-configure-vnc.html

linuxprobe
粉丝 21
博文 257
码字总数 45072
作品 0
朝阳
私信 提问
aws中Red Hat Enterprise Linux 7.3安装图形界面以及mac下的VNC连接

首先,我们需要一个可用的桌面环境(X-Window),如果没有的话要先安装一个。 注意:以下命令必须以 root 权限运行。 1. 安装 X-Window 首先我们需要安装 X-Window,在终端中运行下面的命令,...

M玺
2017/05/10
0
0
VNC(Virtual Network Computing) 的配置安装

VNC(Virtual Network Computing) 的配置安装 VNC(Virtual Network Computing)是一种Linux系统(或者BSD、Mac等)下常用的图形化远程管理工具,使用的是RFB协议 VNC跟SSH一样,也分为客户端与服...

梦在这里
2017/03/27
0
0
在Linux上开启VNC服务教程

多数情况下,我们会使用各种SSH来完成对Linux的操作。但若是想远程访问图形界面又该怎么做呢?在这里,将使用VNC完成远程访问服务器的图形界面。 准备工作: 1. Centos7的环境 2. VNC Viewe...

笑容刺眼
2017/12/14
0
0
开启CentOS 5.4下的vncserver服务

开启CentOS 5.4下的vncserver服务 安装好CentOS 5.4后,虽然我们可以通过ssh来远程登陆服务器,但是我们使用ssh 毕竟是一个字符型终端,很多图形界面下很方便的操作在字符型终端下显得非常繁...

brucema
2012/04/14
0
0
centos 5.5 vnc server配置方法

centos 5.5 vnc server配置方法 1.安装所需要的包 所需的包有vnc-server(vnc服务器软件包),vnc(客户端包)。 另外,既然想用VNC,肯定是想要看图形界面,那就还要安装"GNOME Desktop Envi...

木雨山
2011/07/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

安卓Q | 文件存储沙箱化FAQ,你想知道的这里都有!

文件存储沙箱化作为Android Q最为重要的变更之一,对应用文件存储、访问、分享等操作都带来重大的影响,被众多开发者关注和讨论。本文邀请华为技术专家对开发者提到的重点问题进行了解答,以...

安卓绿色联盟
12分钟前
0
0
可以提高程序员效率的工具!

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 本文记录一下我在平时喜欢用的一些小工具,以便以后重装系统/换电脑的时候能快速安装...

Java3y
35分钟前
3
0
将博客搬至CSDN

https://blog.csdn.net/qq_38157006

Marhal
41分钟前
1
0
unicode Java中求字符串长度length()和codePointCount()的区别

在计算字符串长度时,Java的两种方法length()和codePointCount()一度让我困惑,运行书上例子得到的长度值是相等的,那为什么要设定两个方法呢? 对于普通字符串,这两种方法得到的值是一样的...

泉天下
41分钟前
2
0
uin-app 一、学习理由

选择uni-app 理由 别人的理由 1. 5+ 有HTML5+和Native.js技术,HTML5+包含常用的跨平台的几百个API,能满足常规开发需求,而Native.js把40w原生api映 射成js对象,这样js可以直接调原生。HTM...

轻轻的往前走
43分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部