VNC服务全面设置.doc_第1页
VNC服务全面设置.doc_第2页
VNC服务全面设置.doc_第3页
VNC服务全面设置.doc_第4页
VNC服务全面设置.doc_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VNC服务全面设置【摘要】本文详细介绍了vnc服务器的搭建,尤其是为不同用户开启不同的窗口,这样多人协作开发时不会出现相互干扰,大家可以在同一时刻操作同一Linux主机,并且相关操作具备不同的用户属性,便于区分不同的开发者。【关键词】vnc server,图形界面,远程操作在多人协作的项目中,经常需要大家共享信息,而通常这些都是放在Linux服务器上的,开发者通过nfs在本地Linux主机上可以远处操作服务器上的相关资源,但相比图形界面来说还是不友好。因此本文分析了如何可视化远程操作Linux服务器,本机甚至可以是Windows PC,这种方式最大的好处就是可以做Windows下做其他的所有工作,比如代码编辑文档阅读等,实际的编译等才需要用到Linux环境。一、VNC简介. 1二、服务器vncserver的安装及配置. 12.1.VNC Server的安装. 12.2 设置 vnc server 的访问密码. 22.3 启动vnc server 22.4 更改为kde或者gnome等图形方式登陆. 22.5 为不同的用户开启不同的窗口. 3三、客户端的设置及连接. 43.1 windows系统. 43.2 Linux系统远程控制其他Linux主机. 51 VNC简介网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用程序,及使用被控端的系统资源。 VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执行VNC viewer控制被控端。(在windows中也由一套著名的网络遥控软件Symantec公司推出的pcAnywhere。VNC server与VNC viewer支持多种操作系统,如Unix系列(Unix,Linux,Solaris等),windows及MacOS,因此可将VNC server 及VNC viewer分别安装在不同的操作系统中进行控制。如果目前操作的主控端计算机没有安装VNC viewer,也可以通过一般的网页浏览器来控制被控端。 整个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 服务器vncserver的安装及配置2.1 VNC Server的安装VNC Server下载地址 /download/softdetail.php?softid=744或者到上下载与系统对应的安装包其实也是非常简单的,一个命令就可以了。rpm -ivh vnc-3.3.6-2.i386.rpm2.2 设置 vnc server 的访问密码vncpasswd补充说明:3.3版的vnc,不会自动的建立/root/.vnc/passwd文件,需要先手工建立,再运行vncpasswd2.3 启动vnc server若未用vncpasswd设置密码,则第一次运行vncserver时,会提示设置密码,再次确定密码。drqdding drq$ vncserverYou will require a password to access your desktops.Password: * 为了不想任何人都可以任意遥控此计算机。因此当第 1次启动VNC server时,会要求设置网络遥控的密码。 Verify: * 注意: vncpasswd 可以更改这个密码,或者添加密码 New X desktop is dding:2 一定要记住这一行稍后会用到,终端编号;Creating default startup script /home/drq/.vnc/xstartupStarting applications specified in /home/drq/.vnc/xstartupLog file is /home/drq/.vnc/dding:2.log每次会启动一个server, 并有一个代号,如 :1 :2 等可以在服务里面选中vncserver,这样系统启动时可以默认启动vnc服务。否则需要手动启动。2.4 更改为kde或者gnome等图形方式登陆Linux 上的 vnc server 内定的管理环境是 twm,不好看,也不方便。第一次启动后vnc使用twm客户端(即只能显示个虚拟终端,可在终端里运行界面程序,但是任意时刻只能运行一个),如果要用完整的KDE客户端(此时可以显示终端桌面,完全跟本地登陆一样),我们来把它改成 KDE。修改 $HOME/.vnc/xstartup这个文件。把 twm 改成 startkde 修改后要重新启动 vnc server。再次进行vnc连接时将显示KDE图形界面。其实是将root/.vnc/xstartup这个文件。xstartup文件内容是:#!/bin/sh# Uncomment the following two lines for normal desktop:#unset SESSION_MANAGER#exec /etc/X11/xinit/xinitrc -x /etc/vnc/xstartup & exec /etc/vnc/xstartupn. -r $HOME/.Xresources & xrdb $HOME/.Xresourcesn. xsetroot -solid greyn.vncconfig -iconic &n.xterm -geometry 80x24+10+10 -ls -title $VNCDESKTOP Desktop &wm &有三种方法修改:a) 可以将最后一行中的twm修改成gnome或者startkde都可以,保存并重新启动vncserver服务;b) 将文件所有内容清除,写入gnome-session,保存并重新启动vncserver服务;c) 也可以写入unset SESSION_MANAGER exec /etc/X11/xinit/xinitrc 表示启动默认的图形管理器即将第2,3行的#去掉也可以,我就是这么做的。然后重新开一下服务。试一下就OK了,2.5 为不同的用户开启不同的窗口即可以管理远程登陆的用户,对权限等进行管理。建立root用户的vncserver,其对应的窗口号为 1。rootdding drq# vi /etc/sysconfig/vncservers/# The VNCSERVERS variable is a list of display:user pairs.# Uncomment the line below to start a VNC server on display :1# as my myusername (adjust this to your own). You will also# need to set a VNC password; run man vncpasswd to see how# to do that.# DO NOT RUN THIS SERVICE if your local area network is# untrusted! For a secure way of using VNC, see# . VNCSERVERS=1:root 2:drq 表示用1登陆即为root用户,2登陆为drq用户/可以通过以下命令启动或停止vnc服务:# service vncserver start/stop/restart如果启动了多个vnc显示,可以通过以下命令关闭指定显示号的vnc服务:# vncserver -kill :1(:1为指定的显示号)rootdding drq# /etc/init.d/vncserver stop关闭 VNC 服务器:1:root 2:drq 确定 rootdding drq# /etc/init.d/vncserver start启动 VNC 服务器:1:root 2:drq 确定 3 客户等的设置及连接3.1 windows系统VNC viewer下载地址/php/dl.php?sid=2603在Microsoft Windows上运行VNC Viewer 直接运行“vncviewer.exe”,系统会出现”Connection details”对话框。 在“Connection details”对话框中的“VNC server”文本框中输入VNC Server的IP地址(或主机名及显示装置编号,单击“OK”按钮后,VNC Server即会开始检查所输入的信息,若是信息错误,系统会出现“Failed to connect to server”的错误信息:若是信息正确,则会接着出现“VNC Authentication”对话框。 若是在“VNC Authentication”对话框中输入的密码正确,就可以成功地打开Linux的桌面窗口。 注意:若vncserver未启动或者秘密错误都将不能正常登陆。 下图即为从windows登陆不同显示装置号对应进入的帐户。从浏览器远程遥控。 启动VNC Server 后直接打开windwos的浏览器,在地址栏中输入被控端的网址或IP地址,并在网址后加上“:5800显示编号”的端口号即可操控该计算机。 例如:47:5801/ (如果显示编号为1,一般第一次设置的显示编号都是1,就用580015801。)另外,采用浏览器访问方式,需安装Java Runtime Environment环境。3.2 Linux系统远程控制其他Linux主机linux下使用vncviewer连接:输入以下命令:# vncviewer 39:48(注:“39”为远程服务器的IP地址,“:48”即为显示号)。按要求输入密码,即可以看到远程的桌面。如果网络速度较差,又希望通过图形界面管理,可以降低显示的颜色深度。执行以下指令:# vncviewer 1:1 -brg2331 VNC简介 VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可远程操控计算机的软件,其采用了GPL(General Public License)授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被远程操控的计算机上后,才能在主控端执行VNC viewer进行远程操控。 类似的技术为RDP(Remote Desktop Process),称为“远程桌面连接”,此外,还有一套由Symantec公司推出的pcAnywhere软件也具有类似功能。 VNC、RDP、pcAnywhere等均为远程登录Telnet的图形化界面软件,由Telnet软件发展而来。 2 工作流程 (1) 在服务器端启动VNC Serve。r (2) VNC客户端通过浏览器或VNC Viewer连接至VNC Server。 (3) VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。 (4) 在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。 (5) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。 (6) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。 (7) VNC Server将来由 X Server的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。 3 启动VNC Server VNC Server软件安装完毕后,在终端窗口执行命令vncserver即可启动VNC Server。 第一次启动VNC Server时会出现下列5行提示: You will require a password to access your desktops. New localhost:1 (root) desktop is localhost:1 Creating default startup script /root/.vnc/xstartup Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/linux:1.log 第1行表示为了不让任何人都可以远程登录此计算机,要求设置远程登录密码,例如设置密码为:123456,密码设置完成后,任何用户进行远程登录时都需要输入该密码; 第2行表示root用户建立了一个编号为1的远程登录桌面; 第3行表示建立了一个默认的VNC Server启动脚本文件; 第4行表示启动建立的脚本文件 第5行表示日志文件名及所在目录。 以后启动VNC Server时会出现下列3行提示: New localhost:1 (root) desktop is localhost:1 Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/linux:1.log 如果想要更改VNC Server的密码,只要执行vncpasswd命令即可。 4 从浏览器远程登录 4.1 远程登录 在客户端的网络浏览器中输入VNC Server的IP地址和端口号,即可实现远程登录。 例如VNC Server的IP地址为,端口号为5800加上远程登录桌面编号1,即5801,登录界面如图1所示。 图1 浏览器远程登录界面 鼠标单击图1中的“OK”按钮后,弹出输入密码窗口,如图2所示。 图2 密码验证界面 仅需输入密码,密码验证通过后,远程登录成功,如图3所示。 登录成功后显示命令窗口,用户可以通过命令远程操控VNC Server。用户通过图形界面远程操控VNC Server的介绍见后。 图3 浏览器方式远程登录成功界面 4.2 远程登录设置 进行远程登录前,鼠标单击“Options”按钮进入远程登录设置界面,如图4所示。 图4 远程登录设置 登录设置共分3部分,分别为“Encoding and Colour Level”、“Inputs”、“Misc”。 Encoding and Colour Level部分为远程控制界面的色彩设置,选择“Auto select”即可。 Inputs部分为输入设置,选中“View only(ignore mouse &keyboard)”选项表示远程登录后仅能够看到VNC Server屏幕,而不能对其操作,这种方式可用于远程教学目的,否则,用户可以通过键盘和鼠标对VNC Server进行控制;选中“Accept clipboard from server”选项表示可以接收来自VNC Server剪贴板的内容;选中“Send clipboard to server”选项表示可以发送客户端剪贴板内容到VNC Server。 Misc部分为其它功能设置。VNC Server可以接受多个连接,这些连接共享相同的操作界面,选中“Shared(dont disconnect other viewers)”选项表示本远程登录不会使其它已登录的连接断开,否则,本远程登录会使其它已登录的连接断开,仅最新的连接有效;其它两个选项设置光标和区域显示,无关紧要,使用缺省设置即可。 4.3 以图形界面远程操控VNC Server 前面介绍的远程登录仅支持命令方式的远程操控VNC Server,要实现图形界面的远程操控,需要修改VNC Server上的xstartup文件内容,在VNC Server的终端窗口输入下列命令 vi /root/.vnc/xstartup 将该文件最后一行中的“twm”替换为“gnome-session”或“startkde”,重新启动vncserver后,即可实现用图形界面方式远程操控VNC Server。 gnome-session表示启动Gnome图形界面;startkde表示启动KDE图形界面;twm表示启动文本界面,三者根据实际情况选其一,本例使用startkde选项。 4.4 开机时自动启动vnc服务 要实现开机时自动启动vnc服务,鼠标依次单击“开始/管理工具/服务”,进入到服务设置界面,找到“vncserver服务”,如图5所示。 图5 服务设置界面 鼠标左键双击“vncserver服务”,进入“服务vncserver的属性”界面,将启动类别由“手动”改为“自动”,如图6所示。 图6 设置vncserver属性界面 4.5 通过配置文件设置VNC Server 文件/etc/sysconfig/vncservers为设置VNC Server的配置文件,该文件的最后两行是对远程登录用户和远程控制屏幕进行设置,默认情况下这两行是被注释掉的。第1行VNCSERVER=”1:myusername”,表示用户myusername可以远程登录到桌面1上;第2行VNCSERVERARGS1=”-geometry 800x600”,表示用户远程登录到桌面1时,屏幕分辨率为800x600。 删除这两行前面的“”号,使设置有效,也可以将该两行修改为:VNCSERVERS=”1:root 2:phred 3:sysadmin”和 VNCSERVERARGS1=”-geometry 800600 -alwaysshared -depth 24,其中第1行含义为允许3个用户同时远程登录到不同的桌面,即root用户登录到桌面1,phred用户登录到桌面2,sysadmin用户登录到桌面3;第2行含义为桌面1分辨率为800x600,24位色彩,其余两个桌面使用缺省分辨率和色彩。 5 用VNC Viewer远程登录 在客户端运行vncviewer,输入服务器的ip地址和桌面编号,然后鼠标左键单击“Options”按钮,设置连接选项。连接选项设置与浏览器基本相同。然后鼠标左键单击“Options”按钮进行连接,如图7所示。 图7 vncviewer远程登录界面 输入连接密码,显示VNC连接界面。如图8所示。 图8vncviewer方式远程登录成功界面 vncviewer连接和浏览器连接除起始连接方式不同之外,其余操作基本相同。 Linux的VNC Server还支持windows中的VNC Viewer连接,连接方法同上。 6 关闭 VNC Server 在服务器端运行vncserver -kill :1 即可关闭1号桌面连接,同理可关闭其它桌面连接。 VNC端口修改: VNC的服务端口为5900,新增一个连接 :1 ,则该连接端口为5900+1=5901。但是在只有一个公网地址的公司网络中,可能会有多台服务器需要用到VNC则5900系列端口会不够用。VNC的服务端口没有在其配置文件中,幸好,可以在其脚本中修改。 首先找到vncserver的脚本先修改服务端rootl# grep 59 /usr/bin/vncserver -n21:# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,222:$vncPort = 5900 + $displayNumber;374:# n is taken if something is listening on the VNC server port (5900+n) or the393:# (5900+n) or the X server port (6000+n).410: if (!bind(S, pack(S n x12, $AF_INET, 5900 + $n) /可以看到该文件中只有222和410两行的5900数字是其作用的,其他均为注释rootl# vi /usr/bin/vncserver/于是将这两行的5900替换为你想要的新端口,我这里改为17050$vncPort =17050 + $displayNumber;. if (!bind(S, pack(S n x12, $AF_INET, 5900 + $n) .rootlongzw # vi /etc/sysconfig/iptables-A INPUT -p tcp -m state -state NEW -m tcp -dport 17050 -j ACCEPT-A INPUT -p tcp -m state -state NEW -m tcp -dport 17051 -j ACCEPT/开放防火墙,因为vnc用的了 :1连接所以17051也要用到。这里我已经将公网地址的1705*都映射到此服务器上/然后就是重启iptables生效rootlongzw # service iptables restartiptables:清除防火墙规则:确定iptables:将链设置为政策 ACCEPT:filter nat 确定iptables:正在卸载模块:确定iptables:应用防火墙规则:确定rootlongzw # service vncserver restart关闭 VNC 服务器:1:root 确定.确定rootlongzw # netstat -tnl | grep 17051tcp 0 0 :17051 :* LISTEN/看下17051端口已起来了此时在远端用vnc client软件(我的是vncviewer)输入ip:17051,这里 : 后面跟的是 :1 的实际端口。 如果还是无法正常连接,还需要修改vnc client软件相对于的vnc server的配置。我用的realvnc的server在开始菜单中有server 配置的选项,把“连接”中的端口都修改为17050-即服务器端VNC的服务端口,因为连接过去时会自动加1。(1)如何设置VNC使之在启动时运行GNOME或KDE?相关版本:Red Hat Enterprise Linux 3,Red Hat Enterprise Linux 4,Red Hat Enterprise Linux 5VNC xstartup程序中默认的设定值是启动twm,而不是GNOME或KDE。默认的配置文件在第一次启动vncserver之前,运行vncpasswd命令创建密码的时候生成在用户的家目录中:$HOME/.vnc/xstartup$是用户家目录。其中包含如下内容:(根据不同操作系统版本具体内容可能稍有差异)#!/bin/sh# Uncomment the following two lines for normal desktop:# unset SESSION_MANAGER# exec /etc/X11/xinit/xinitrc -x /etc/vnc/xstartup & exec /etc/vnc/xstartup -r $HOME/.Xresources & xrdb $HOME/.Xresourcesxsetroot -solid greyvncconfig -iconic &xterm -geometry 80x24+10+10 -ls -title $VNCDESKTOP Desktop &twm &为了启动GNOME或者KDE,先去掉“unset SESSION_MANAGER“和”exec /etc/X11/xinit/xinitrc“这两行的注释,然后将twm&注释掉,最后添加“gnome-session”,其设置如下:#!/bin/sh# Uncomment the following two lines for normal desktop:unset SESSION_MANAGERexec /etc/X11/xinit/xinitrc -x /etc/vnc/xstartup & exec /etc/vnc/xstartup -r $HOME/.Xresources & xrdb $HOME/.Xresourcesxsetroot -solid greyvncconfig -iconic &xterm -geometry 80x24+10+10 -ls -title $VNCDESKTOP Desktop &#twm &gnome-session &类似的,如果要启动KDE,需要修改为:#!/bin/sh# Uncomment the following two lines for normal desktop:unset SESSION_MANAGERexec /etc/X11/xinit/xinitrc -x /etc/vnc/xstartup & exec /etc/vnc/xstartup -r

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论