`
cxh61207
  • 浏览: 190936 次
  • 性别: Icon_minigender_1
  • 来自: 昆明
社区版块
存档分类
最新评论

Linux下VNC远程控制的使用方法

阅读更多

VNC简介』
网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用程序,及使用被控端的系统资源。
VNC
Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC serverVNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执行VNC viewer控制被控端。
(在windows中也由一套著名的网络遥控软件――Symantec公司推出的pcAnywhere
VNC server
VNC viewer支持多种操作系统,如Unix系列(UnixLinuxSolaris等),windowsMacOS,因此可将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的桌面环境及输入装置。

VNC的安装与使用』
本人的操作环境:被控端 Redhat9.0,主控端Windows XP
1
 VNC Server
VNC Server
下载地址:http://gwbn.onlinedown.net/soft/1271.htm

2.安装。
vnc-3.3.7-x86_linux.tar.gz (
如果是源代码请看包里的说明)当下载了VNCLinux版本后,可以解压文件到一个文件夹中,例如/home/vnc,然后复制文件vncserver vncpasswdXvnc/usr/bin目录中。假如想要能够通过VNC服务器的整合Java界面远程控制Linux电脑,也得需去建立一个子目录/usr/local/vnc/classes。在建立此子目录之后,复制VNCJava.class文件到此目录中。(一般redhat 9.0自带以上文件,所以直接用终端执行就可以)。
3.
Linux上启动VNC Server
执行vncserver命令:
[root@linux root]# vncserver
You will require a password to access your desktops.
Password: —-
为了不想任何人都可以任意遥控此计算机。因此当第
Verify: —1
次启动VNC server时,会要求设置网络遥控的密码。
New ‘X’ desktop is linux:1 —-
一定要记住这一行稍后会用到。
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/linux:1.log
(经上述步骤后,便已启动了VNC Server。如果你想要更改VNC Server的密码,只要执行vncpasswd命令即可。)

5. 从浏览器远程遥控。
启动VNC Server 后直接打开浏览器,在地址栏中输入被控端的网址或IP地址,并在网址后加上5800+显示编号的端口号即可操控该计算机。
例如:http://192.168.01.:5801 (如果显示编号为1,一般第一次设置的显示编号都是1,就用580015801)

如果看到窗口,就说明你成功,在密码框输入密码,就能远程控制了。

6FAQ

A. 如何以图形界面登录被控端?

编辑~/.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/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
gnome-session &
startkde &
twm &

gnome-session是启动Gnome图形界面;startkde是启动KDE图形界面;twm是启动文本界面。三者选其一。

A. 如何开机时自动启动vnc服务

打开“系统设置”–>”服务器设置”–>”服务”,勾选上vncserver,“保存”。

修改 /etc/sysconfig/vncservers

VNCSERVERS=”1:root 2:phred 3:sysadmin” 1代表“桌面1”,root代表用户名;可同时启动多个用户桌面
VNCSERVERARGS[1]=”-geometry 800×600 -alwaysshared -depth 24″

-alwaysshared代表允许多用户同时登录 -depth代为色深,参数有8,16,24,32。


A
.为什么连接后,不能显示桌面,而只有一个Terminal窗口?
试着修改/root/.vnc/xstartup,把最后一行 twm& 改成 gnome-session& or kde&(据说KDE在目前的VNC Viewer上的表现不太稳定)

B 为什么重新启动VNC Server后,连接不上了?
因为重新启动VNC Server时,系统会指定一个新的显示编号,需使用此新的编号,否则就无法连接

——————————————————————————————————————————–

查看vnc已启用的桌面号及监听进程

[root@linux /]# netstat -tlnp |grep vnc

vncserver 命令带有一些很有用的参数,用vncserver –help 查看。
简单解释一下:
vncserver [:] [-name ] [-geometry x] [-depth ]
[-pixelformat format]
vncserver -kill :display

:
vnc服务的display号,可以自行指定,尽量不要使用系统默认的以保证安全,必须为非0的正整数
vncserver :99
使用时必须输入正确的display号才能连接;用浏览器要在端口号加上display号,默认端口5800,远程连接输入 XXX.XXX.XXX.XXX:5899

-name 指定vncserver桌面名字
比如要让名字显示为 “红帽”
vncserver -name 红帽

-geometry x指定显示桌面的分辨率,默认为1024×768
vncserver -geometry 800×600
这个命令实际中很有用,例如本地分辨率为1024×768 如果不设定远程vnc服务分辨率就会造成桌面显示不全的问题。

-depth 指定显示颜色,设定范围8~32
vncserver -depth 16
用16bits颜色显示

-pixelformat 指定色素格式 与-depth大致相同,只是表示方法不一样
vncserver -pixelformat RGB888
用24bits颜色显示

vncserver -kill :display
结束vnc服务及远程桌面
vncserver -kill :1
其它更详细的使用请用man查看。

vnc内定的窗口管理器是twm与大家使用的可能不同,通过修改vnc的配置文件可以更换为自己喜欢的,方法如下:
修改用户目录下的 .vnc/xstartup 文件
#!/bin/sh
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &
twm &
将#!/bin/sh后面的内容全部注释掉,改成
~/.Xclients
保存文件
现在可以测试修改是否成功,先kill vncserver服务
vncserver -kill :

pa aux|grep Xvnc
kill PID
重新启动vncserver ,用vncviewer连接远程桌面是不是已经变成自己喜欢的类型了。

在前面有vnc server 设置的文章(http: //bbs.chinaunix.net/forum/viewtopic.php?t=368552&highlight=yunqing) 里, 我们已经可以在一个linux的服务器上运行vncserver来进行远程访问了,但需要注意的是,如果直接使用vncviewer来进行访问,有 两点不利因素:
1. 口令传输是明文,很容易被侦听到.
2. 防火墙需要打开59xx端口,这在通常的单位里是不可能的.
幸运的是,我们有ssh这个强大的工具,象X11 Forwarding(另文论述),我们可以使用ssh隧道来保护通讯过程,下面就进行简单介绍.

假设vncserver运行在服务器 myserver (ip地址为:192.168.x.x)的屏幕1,也就是侦听 192.168.x.x:5901, 用户名为foo

情形一: vnc客户端为linux
这种情形很简单,一般的linux发行版本里面都默认安装了ssh套件.
1. 用ssh登录到服务器

ssh -L 5901:localhost:5901 -l foo myserver

或者直接用ip地址

ssh -L 5901:localhost:5901 -l foo 192.168.x.x

2. 在本机的另外开的终端上,运行vncviewer (或其它的类似工具)
vncviewer localhost:1

情形二: vnc客户端为windows
1. 下载一个ssh客户端,个人推荐putty,只有一个程序,不需要安装,简单而功能齐全. 到这里下载http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
下载putty.exe到桌面上直接运行即可。
2. 运行putty,输入服务器的ip地址,输入一个名字,这里myserver作为session的名字,按save保存。见附图一
3. 单击对话框左边的tunnels来选择相关设置,在source port里输入5901,在Destination里输入localhost:5901,按Add添加,如附图二
4. 单击左边session,回到session设置,按save重新保存。按open即可登录到服务器。
5. 运行vnc-viewer (如果没有,到这里下载http://www.realvnc.com/download.html,只要一个 exe的文件就行),在Server里输入localhost:1,见附图三, 输入口令后一个linux的桌面就会出现在windows里,并且是非常 安全的

分享到:
评论

相关推荐

    基于Linux平台下的VNC远程控制实现方法.pdf

    【基于Linux平台下的VNC远程控制实现方法】 在IT领域,远程控制技术是网络管理员进行服务器管理和维护的重要工具。在Windows环境下,通常采用终端服务来实现远程控制,而在Linux环境中,VNC(Virtual Network ...

    linux VNC下载 用于linux下的远程控制和操作, 也可以用于linux操作演示.

    Linux VNC(Virtual Network Computing)是一种远程桌面协议,它允许用户通过网络远程访问和控制另一台计算机的图形界面。...了解和掌握VNC的使用方法,对于日常的系统管理以及教学演示都有极大的帮助。

    VNC远程控制软件

    VNC(Virtual Network Computing,虚拟网络计算)最早是一套由英国剑桥大学AT&T实验室在2002年开发的轻量型的远程控制计算机软件,其采用了 GPL 授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:...

    VNC远程控制工具软件

    VNC 是在基于 UNIX 和 Linux 操作系统的免费的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows 和 MAC 中的任何远程控制软件媲美。 在 Linux 中,VNC 包括以下四个命令:vncserver,vncviewer,...

    vnc远程控制linux,windows方法.pdf

    VNC远程控制Linux、Windows方法 VNC(Virtual Network Computing)是一种桌面共享系统,允许用户通过网络远程控制另一台计算机。VNC使用RFB(Remote FrameBuffer)协议来实现远程控制,通过发送键盘、鼠标动作和...

    VNC远程工具 支持linux和windows

    综上所述,VNC作为一个跨平台的远程桌面工具,为Linux和Windows用户提供了一种便捷的远程访问和控制方式。了解和熟练使用VNC可以极大地提高IT专业人士的工作效率,尤其是在多平台环境下的系统管理和维护。

    使用VNC远程控制SUSE Linux.pdf

    使用VNC远程控制SUSE Linux.pdf

    VNC远程控制客户端汉化版

    在这个“VNC远程控制客户端汉化版”中,我们聚焦的是专为Linux系统设计的VNC客户端,且已经进行了中文语言本地化处理,以适应中国用户的使用习惯。 VNC技术的核心是它使用了VNC协议,这是一种轻量级的、跨平台的...

    Linux操作系统下搭建VNC远程控制软件详尽教程.doc

    Linux操作系统下的VNC远程控制软件搭建教程 VNC(Virtual Network Computing)是一种强大的远程控制工具,它允许用户从一台计算机(主控端)远程操控另一台计算机(被控端),就像亲自坐在那台计算机前操作一样。...

    Linux下的远程控制——VNC.pdf

    总的来说,Linux下的VNC远程控制提供了灵活、高效且跨平台的远程桌面访问方案,对于系统管理员和远程工作的用户来说是一个强大的工具。同时,了解并掌握相关的安全措施和系统管理工具,是保证远程工作顺畅和数据安全...

    windows下实现对Linux远程桌面工具VNC客户端

    VNC是在基于UNIX和Linux操作系统的免费的开放源码软件,远程控制能力强大,高效实用,其性能可以和Windows和MAC中的任何远程控制软件媲美。 在Linux中,VNC包括以下四各命令:vncserver,vncviewer,vncpasswd,和...

    vnc远程控制linux,windows方法归纳.pdf

    在Linux和Windows系统中设置VNC远程控制涉及以下步骤: 1. **设置VNC密码**: 首先,你需要在服务器端配置VNC密码。这一步通常在用户主目录下完成,每个用户都可以独立设置自己的密码。运行`vncpasswd`命令,按照...

    Linux操作系统下搭建VNC远程控制软件详尽教程.doc.docx

    "Linux操作系统下搭建VNC远程控制软件详尽教程" 本文将详细介绍如何在 Linux 操作系统下搭建 VNC 远程控制软件,并详细讲解 VNC 的工作流程、安装与使用方法。 一、VNC 概述 VNC(Virtual Network Computing)是...

    vnc远程控制系统源代码

    以下是对VNC远程控制系统的详细解释: 1. **VNC Server**:这是在被控端计算机上运行的部分,负责接收和处理来自VNC Viewer的远程控制请求。VNC Server通常会捕获被控端的屏幕显示,并将其编码成数据流发送给VNC ...

    Vnc安装远程控制工具

    Vnc安装远程控制工具是一种广泛使用的远程桌面连接技术,它允许用户通过网络访问并控制另一台计算机的桌面环境。在本文中,我们将深入探讨VNC(Virtual Network Computing)的安装过程,以及如何利用这一工具进行...

    经典的远程控制软件VNC(Virtual Net Computer)源代码

    VNC(Virtual Network Computing)是一种基于远程帧缓冲协议的远程控制软件,允许用户通过网络从一台计算机(客户端)远程访问并控制另一台计算机(服务器端)。这个协议最初由AT&T的英国研究实验室开发,现在已经...

    Linux系统更换ROOT及VNC远程密码.docx

    在Linux系统管理中,安全性和访问控制是至关重要的。本文将详细介绍如何在Linux环境中更改ROOT用户的密码以及VNC远程连接的密码。以下是具体步骤: **一、更换ROOT密码** 1. **通过命令行更改ROOT密码** 在Linux...

    LINUX 经典远程控制工具VNC

    LINUX 经典远程控制工具,操作linux跟本地一样

    vnc远程控制软件密文传输

    总的来说,VNC远程控制软件以其小巧、安全的特点深受用户喜爱,其中密文传输技术是保证数据安全的关键。了解并正确使用VNC的加密功能,可以有效保护远程控制过程中的隐私和敏感信息,使其在各种业务环境中都能安全...

Global site tag (gtag.js) - Google Analytics