远程控制工具VNC的安装使用
声明:本文章所讲内容的是针对于Red Hat Enterprise Linux 5.4,VNC 版本为自带版本。对于不同版本的Linux系统其安装配置可能会略有不同。
Linux系统的主要应用就是作为网络服务器。服务器一般都放在专门机房中,这种环境不可能让管理员进行本地管理工作,并且作为一个系统管理员直接在服务器上进行日常维护工作是落伍、错误和不可取的。因此绝大部分服务器都通过“远程管理”的方式进行维护管理工作。VNC就是一款非常适合Linux的远程管理软件。
1. VNC简介
VNC(Virtual Network Computing,虚拟网络计算机)是一种可以对远程计算机进行远程控制的软件,支持linux远程桌面管理,也适合其它操作系统。而putty、SSH等只能进行命令模式的远程管理。
VNC软件由服务器端VNC Server和客户端VNC Viewer组成,可以单独安装其中一部分。远程计算机必须安装服务器端,才能通过本地计算机的客户端进行远程管理。
2.Linux下VNC的启动和设置
在Red Hat Enterprise Linux 5.4下,系统自带了VNC软件,用如下命令查看是否已安装了VNC软件:
#[color=blue]rpm –qa|grep vnc[/color] --查看Linux系统中是否已安装了VNC
vnc-server-4.1.2-14.el5_3.1
如果系统中没有安装VNC则可以去http://www.realvnc.com/下一个装上,或者从linux安装盘上安装,这里不再多说。
VNC Server 的启动和设置
(1)启动VNC Server:
打开终端执行:vncserver 第一次启动时要求你生成口令文件
#[color=blue]vncserver[/color]
You will require a password to access your desktops.
Password: 设置远程管理密码
Verify: 确认密码
New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1 --要记住这一行稍后会用到。
Creating default startup script [color=blue]/root/.vnc/xstartup[/color]
Starting applications specified in [color=blue]/root/.vnc/xstartup[/color]
Log file is /root/.vnc/linux:1.log
我是用root用户进行远程管理的,当然这不是一个好习惯如果是用别的用户进行远程管理的,先用允许远程登陆的帐号登陆系统,再用vncpasswd命令生成口令文件,当然也可以用此命令更改密码。
(2)设置VNC Server
编辑$HOME/.vnc/xstartup文件($HOME指Linux用户目录,我这里是root超级用户目录)。
这一步要注意,如果这里没做好,那么可能用客户端登陆的时候显示出来的就是一个灰色的界面或者根本无法连接。
#[color=blue]vi /root/.vnc/xstartup[/color]
去掉以下两句的注释:
[color=red]unset SESSION_MANAGER[/color]
[color=red]exec /etc/X11/xinit/xinitrc[/color]
因为VNC自带默认的TWM窗口管理器用起来很不爽,所以把[color=red]twm &[/color]这句改为:[color=red]gnome –session &[/color],如果是用KDE桌面的,则改为 [color=red]kde-session &。[/color]以便能远程使用GNOME和KDE桌面。
重启vnc:
#[color=blue]sudo /sbin/service vncserver restart[/color]
配置防火墙
按以上的设置情况下,要服务器关闭防火墙才能使用VNC Viewer进行连接。若要在不关闭防火墙的情况下也能进行远程管理则要编辑etc/sysconfig/iptables文件
#[color=blue]vi /etc/sysconfig/iptables[/color]
增加如下一句:
[color=red]-A RH-Firewall-1-INPUT –m state –-state NEW –m –tcp –dport 5901 –j ACCEPT[/color]
还要编辑/etc/sysconfig/vncservers文件
# [color=blue]vi /etc/sysconfig/vncservers[/color]
去掉下面这行的注释:
[color=red]VNCSERVERS="1:root"[/color]
[color=red]VNCSERVERARGS[1]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]-alwaysshared代表允许多用户同时登录 -depth代为色深,参数有8,16,24,32。[/color]
1表示VNC以桌面1运行,这样可以启动root的桌面。
如果允许多个不同的用户进行远程管理的可以如下方式添加多个:
[color=red]VNCSERVERS=”1:root 2:test 3:XXXX”[/color]
[color=red]VNCSERVERARGS[1]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]VNCSERVERARGS[2]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]VNCSERVERARGS[3]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
但这样做了,[color=blue]仅仅用户1才能登陆,用户2、用户3是无法登陆的[/color]。
修改配置文件,允许多用户登陆
[color=red]#su - test
[test@localhost ~]$mkdir .vnc //*创建.vnc目录,用于保存此用户的vnc配置文件*//
[test@localhost ~]$vncpasswd //*设置test用户的vnc远程连接密码*//
[test@localhost ~]$su - root
#service vncserver restart[/color]
当然,也可以在系统的服务配置中直接设定系统每次启动时自动启动VNC Server,[color=red]应用程序—系统设置—服务器设置—服务[/color],在打开“服务配置”窗口后把“vncserver”选上即可。也可以用此窗口进行关闭、启动和重启等操作。
至此VNC服务器端的配置都完成了,如果按我上述所说的做,基本上能一次成功。
(3)VNC的启动/停止/重启
#[color=blue]service vncserver start/stop/restart[/color]
关闭具体的vncserver命令:[color=blue]vncserver -kill :1[/color]
注意“:1”,表示停止第一个vnc桌面
(4)修改vnc密码:
修改vnc密码的方法是执行 [color=blue]vncpasswd[/color],输入两次密码即可。
2. 在windows下使用VNC Viewer对远程的linux系统进行远程控制
在windows下安装VNC Viewer,运行VNC Viewer出现”Connection details”对话框,在Server对话框中输入IP地址(或主机名及显示装置编号,(请看启动VNC Server部份。在Linux上启动VNC server的这一行,New ‘X’ desktop is linux:1 得到此信息),
例如:192.168.0.1:1(冒号后面的1是执行VNC Server生成的显示装置编号),如图1。
单击“OK”按钮后,VNC Server即会开始检查所输入的信息,若是信息错误,系统会出现如图2的错误提示:
如果正确后系统会提示你输入密码,如图3
正常登陆后就可以像操控本地电脑一样控制远程服务器。VNC还可以通过浏览器进行远程控制。打开IE,在地址览中输入IP地址或主机名和端口号,VNC给浏览器的端口是5800+N,给vncviewer的端口是5900+N,N是设置的display号。后面的情况和以上所述相差不多。
如果是在Linux下用VNC Viewer,只要在shell下输入vncviewer 启动VNC Viewer,接下来操作和Windows并无两样。
这篇文章比较简单,但我认为这是作用一个linux系统管理员应该必备的技能。常有人说:我怎么看别人写得文章都好像一次成功的,但我是严格按照他们说的去做的啊,为什么就是不行呢?这是因为,多数文章都只讲了其中最重要的部分,而一些细节问题却没有写。
比如没有讲到如何设置,在打开防火墙的情况下提供VNC Servere服务,怎么总是连不上?搞了半天原来防火墙没关。也有人可能没有写如何设置成系统服务,所以当服务器重启后,发现VNC连不上了,晕要跑到机房去解决一下。这些对于一个老手来说确实不算什么,
但对于一个初学者来说,可能要花上几个小时,也有可能几天的时间来解决这种不是问题的问题,这样就事倍功半了.
声明:本文章所讲内容的是针对于Red Hat Enterprise Linux 5.4,VNC 版本为自带版本。对于不同版本的Linux系统其安装配置可能会略有不同。
Linux系统的主要应用就是作为网络服务器。服务器一般都放在专门机房中,这种环境不可能让管理员进行本地管理工作,并且作为一个系统管理员直接在服务器上进行日常维护工作是落伍、错误和不可取的。因此绝大部分服务器都通过“远程管理”的方式进行维护管理工作。VNC就是一款非常适合Linux的远程管理软件。
1. VNC简介
VNC(Virtual Network Computing,虚拟网络计算机)是一种可以对远程计算机进行远程控制的软件,支持linux远程桌面管理,也适合其它操作系统。而putty、SSH等只能进行命令模式的远程管理。
VNC软件由服务器端VNC Server和客户端VNC Viewer组成,可以单独安装其中一部分。远程计算机必须安装服务器端,才能通过本地计算机的客户端进行远程管理。
2.Linux下VNC的启动和设置
在Red Hat Enterprise Linux 5.4下,系统自带了VNC软件,用如下命令查看是否已安装了VNC软件:
#[color=blue]rpm –qa|grep vnc[/color] --查看Linux系统中是否已安装了VNC
vnc-server-4.1.2-14.el5_3.1
如果系统中没有安装VNC则可以去http://www.realvnc.com/下一个装上,或者从linux安装盘上安装,这里不再多说。
VNC Server 的启动和设置
(1)启动VNC Server:
打开终端执行:vncserver 第一次启动时要求你生成口令文件
#[color=blue]vncserver[/color]
You will require a password to access your desktops.
Password: 设置远程管理密码
Verify: 确认密码
New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1 --要记住这一行稍后会用到。
Creating default startup script [color=blue]/root/.vnc/xstartup[/color]
Starting applications specified in [color=blue]/root/.vnc/xstartup[/color]
Log file is /root/.vnc/linux:1.log
我是用root用户进行远程管理的,当然这不是一个好习惯如果是用别的用户进行远程管理的,先用允许远程登陆的帐号登陆系统,再用vncpasswd命令生成口令文件,当然也可以用此命令更改密码。
(2)设置VNC Server
编辑$HOME/.vnc/xstartup文件($HOME指Linux用户目录,我这里是root超级用户目录)。
这一步要注意,如果这里没做好,那么可能用客户端登陆的时候显示出来的就是一个灰色的界面或者根本无法连接。
#[color=blue]vi /root/.vnc/xstartup[/color]
去掉以下两句的注释:
[color=red]unset SESSION_MANAGER[/color]
[color=red]exec /etc/X11/xinit/xinitrc[/color]
因为VNC自带默认的TWM窗口管理器用起来很不爽,所以把[color=red]twm &[/color]这句改为:[color=red]gnome –session &[/color],如果是用KDE桌面的,则改为 [color=red]kde-session &。[/color]以便能远程使用GNOME和KDE桌面。
重启vnc:
#[color=blue]sudo /sbin/service vncserver restart[/color]
配置防火墙
按以上的设置情况下,要服务器关闭防火墙才能使用VNC Viewer进行连接。若要在不关闭防火墙的情况下也能进行远程管理则要编辑etc/sysconfig/iptables文件
#[color=blue]vi /etc/sysconfig/iptables[/color]
增加如下一句:
[color=red]-A RH-Firewall-1-INPUT –m state –-state NEW –m –tcp –dport 5901 –j ACCEPT[/color]
还要编辑/etc/sysconfig/vncservers文件
# [color=blue]vi /etc/sysconfig/vncservers[/color]
去掉下面这行的注释:
[color=red]VNCSERVERS="1:root"[/color]
[color=red]VNCSERVERARGS[1]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]-alwaysshared代表允许多用户同时登录 -depth代为色深,参数有8,16,24,32。[/color]
1表示VNC以桌面1运行,这样可以启动root的桌面。
如果允许多个不同的用户进行远程管理的可以如下方式添加多个:
[color=red]VNCSERVERS=”1:root 2:test 3:XXXX”[/color]
[color=red]VNCSERVERARGS[1]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]VNCSERVERARGS[2]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
[color=red]VNCSERVERARGS[3]="-geometry 1024x768 -alwaysshared -depth 24"[/color]
但这样做了,[color=blue]仅仅用户1才能登陆,用户2、用户3是无法登陆的[/color]。
修改配置文件,允许多用户登陆
[color=red]#su - test
[test@localhost ~]$mkdir .vnc //*创建.vnc目录,用于保存此用户的vnc配置文件*//
[test@localhost ~]$vncpasswd //*设置test用户的vnc远程连接密码*//
[test@localhost ~]$su - root
#service vncserver restart[/color]
当然,也可以在系统的服务配置中直接设定系统每次启动时自动启动VNC Server,[color=red]应用程序—系统设置—服务器设置—服务[/color],在打开“服务配置”窗口后把“vncserver”选上即可。也可以用此窗口进行关闭、启动和重启等操作。
至此VNC服务器端的配置都完成了,如果按我上述所说的做,基本上能一次成功。
(3)VNC的启动/停止/重启
#[color=blue]service vncserver start/stop/restart[/color]
关闭具体的vncserver命令:[color=blue]vncserver -kill :1[/color]
注意“:1”,表示停止第一个vnc桌面
(4)修改vnc密码:
修改vnc密码的方法是执行 [color=blue]vncpasswd[/color],输入两次密码即可。
2. 在windows下使用VNC Viewer对远程的linux系统进行远程控制
在windows下安装VNC Viewer,运行VNC Viewer出现”Connection details”对话框,在Server对话框中输入IP地址(或主机名及显示装置编号,(请看启动VNC Server部份。在Linux上启动VNC server的这一行,New ‘X’ desktop is linux:1 得到此信息),
例如:192.168.0.1:1(冒号后面的1是执行VNC Server生成的显示装置编号),如图1。
单击“OK”按钮后,VNC Server即会开始检查所输入的信息,若是信息错误,系统会出现如图2的错误提示:
如果正确后系统会提示你输入密码,如图3
正常登陆后就可以像操控本地电脑一样控制远程服务器。VNC还可以通过浏览器进行远程控制。打开IE,在地址览中输入IP地址或主机名和端口号,VNC给浏览器的端口是5800+N,给vncviewer的端口是5900+N,N是设置的display号。后面的情况和以上所述相差不多。
如果是在Linux下用VNC Viewer,只要在shell下输入vncviewer 启动VNC Viewer,接下来操作和Windows并无两样。
这篇文章比较简单,但我认为这是作用一个linux系统管理员应该必备的技能。常有人说:我怎么看别人写得文章都好像一次成功的,但我是严格按照他们说的去做的啊,为什么就是不行呢?这是因为,多数文章都只讲了其中最重要的部分,而一些细节问题却没有写。
比如没有讲到如何设置,在打开防火墙的情况下提供VNC Servere服务,怎么总是连不上?搞了半天原来防火墙没关。也有人可能没有写如何设置成系统服务,所以当服务器重启后,发现VNC连不上了,晕要跑到机房去解决一下。这些对于一个老手来说确实不算什么,
但对于一个初学者来说,可能要花上几个小时,也有可能几天的时间来解决这种不是问题的问题,这样就事倍功半了.