使用VNC实现Linux的远程管理

日期: 2013-08-15 作者:李洋 来源:TechTarget中国

1、VNC简介 在开源领域,远程遥控技术的代表就是VNC了。VNC(Virtual Network Computer,虚拟网络计算机)是一套由AT&T实验室开发的可操控远程计算机的软件。VNC软件可以分为两个部分,分别为VNC Server与VNC viewer。前者是安装在被控制端上,而后者被安装在主控端上。

VNC软件不仅是开源的,而且是跨平台的。为此有不少系统管理员,他们可能使用的是微软的操作系统,也喜欢使用这个VNC来作为远程管理Linux服务器或者客户端的工具。 VNC运行的工作流程如下: (1)VNC客户端通过浏览器或VNC Viewer连接至VNC Server。……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

1、VNC简介

在开源领域,远程遥控技术的代表就是VNC了。VNC(Virtual Network Computer,虚拟网络计算机)是一套由AT&T实验室开发的可操控远程计算机的软件。VNC软件可以分为两个部分,分别为VNC Server与VNC viewer。前者是安装在被控制端上,而后者被安装在主控端上。VNC软件不仅是开源的,而且是跨平台的。为此有不少系统管理员,他们可能使用的是微软的操作系统,也喜欢使用这个VNC来作为远程管理Linux服务器或者客户端的工具。

VNC运行的工作流程如下:

(1)VNC客户端通过浏览器或VNC Viewer连接至VNC Server。

(2)VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。

(3)在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。

(4)若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。

(5)VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。

(6)VNC Server将来由 X Server的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。

2、启动VNC服务器

利用VNC软件实现远程控制的基本原理是主控端利用VNC客户端发起连接请求,被控端同意后即可建立远程控制。此时主控端就可以远程操控被控端。为此要利用VNC软件来远程操控Linux操作系统的话,必须先在Linux操作系统上启动VNC服务器软件。否则的话,是无法建立VNC连接的。不过在大部分的Linux操作系统中,如红帽子的Linux系统,一般默认都会安装有VNC服务器的。不过其出于安全的考虑,一般都是关闭的。如果系统管理员要想利用VNC来实现远程操控的话,就需要在Linux操作系统上启动VNC服务器。

在Linux操作系统的命令行下,系统管理员可以输入vncserver命令来启动VNC服务器。在启动的过程中为了安全起见,操作系统会提示系统管理员输入VNC连接的密码。系统管理员最好能够在这里输入比较复杂的密码,如英文字符与数字结合的密码,以增加供给者破译的难度。由于建立VNC连接后,主控端可以像操作自己的电脑那样来操作被控端。所以这个密码将是将是保障其安全的最后屏障。启动成功后如图所示:

启动VNC Server示意图

密码配置完成后,Linux操作系统最后还会提示VNC连接的地址。如上面所示,最后系统管理员可以使用localhost.localdomain来远程操控Linux操作系统。以后在VNC客户端上只要输入这个网络地址,就可以连接到VNC服务器上。如果后续需要更改VNC的连接密码,需要使用vncpasswd来进行更改。注意不是passwd。这跟更改用户密码的命令不同。一般情况下,只要正常显示了其网络地址,那么这个VNC服务就是正常启动了。

另外为了安全起见,中断VNC服务器之后,最好在服务器上能够及时关闭VNC应用服务器。关闭的命令如上,只需要运行如下命令即可:#vncserver –kill :1

其中最后的1表示之前启动的窗口编号。系统管理员应该养成一个习惯,即当某个服务启动后,要及时关闭它。多启动一个服务,就多个黑客一个攻击的机会。特别是将操作系统当作服务器来使用的时候,这个习惯能够在很大程度上提高服务器系统的安全性。其实不光光是VNC服务器是如此,像其他的Telnet服务等等也要养成这个习惯。一般来说,Linux操作系统默认不启动的服务,系统管理员在启动他们之后,最后都要及时关闭。

不过如果企业的布局比较大,如从系统管理员的办公室到Linux操作系统客户端那边需要走半个小时。此时为了管理的方便,如果对方操作系统知识用来做普通的客户端的话,那么就可以让Linux操作系统在启动时自动启动VNC服务器。以方便在遇到问题时,系统管理员能够及时连接上VNC服务器进行远程故障排除或者远程协助。由于客户端的安全性要求比怎么严格,所以在管理便利上方面可以做出一定程度的妥协。但是如果操作系统是作为服务器的话,那么开机自动启动VNC服务器类似的操作,系统管理员需要谨慎。如果系统管理员确定需要开机时自动启动VNC服务器,则可以通过ntsysv服务来定义。即只需要在命令行状态下,输入命令ntsysv,然后选中vncserver条目(按空格选择),即设置了开机即启动VNC服务器。然后需要修改/etc/sysconfig/vncservers配置文件。找到这个文件中的VNCSERVER=”1:root”这个条目(如下图所示)。默认情况下操作系统是将这一行注释掉的。系统管理员只需要将前面的注释符号去掉即可。如此设置后,当操作系统在下次启动后就会自动启用VNC服务器。如此系统管理员就可以远程来控制Linux操作系统,进行软件安装、系统配置、远程协作等等操作。

3、使用VNC Viewer实现Linux远程管理

在配置好VNC Server后,可以使用VNC Viewer来实现Linux的远程登录和管理了。在Linux下面已经自带了该客户端程序,用户可以打开[应用程序]菜单,在弹出的级联菜单中选择[VNC Viewer],如图所示:

使用VNC Viewer

系统会弹出如8所示的VNC Server登录对话框,用户需要指定待登录的服务器地址:

输入VNC Server地址

 

输入地址后,VNC Viewer连接上VNC Server,Server需要对VNC客户端进行身份验证,输入之前设置的密码即可。待客户端通过服务器端的验证后,则会进入如图10所示的远程登录界面,用户就可以在图形界面下简单、方便地对远程的Linux进行访问和管理了。

作者

李洋
李洋

中国移动研究院