您的位置:首页 > 运维架构 > Linux

用vnc实现windows远程连接linux桌面

2015-08-05 17:51 851 查看
centos 7:

systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
之前的版本:
service iptables stop #停止
chkconfig iptables off #禁用


网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用程序,及使用被控端的系统资源。 
VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。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的桌面环境及输入装置。

『VNC的安装与使用』 

本人的操作环境:被控端 Redhat8.0,主控端Windows XP。 

1. 载VNC Server与VNC viewer. 

VNC Server下载地址:http://www.linuxeden.com/download/softdetail.php?softid=744 

VNC viewer下载地址:http://download.pchome.net/php/dl.php?sid=2603 

2.安装。 
rpm –Uvh vnc-3.3.6-2.i386.rpm (如果是源代码请看包里的说明) 
安装winvnc.exe 

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命令即可。) 

修改/etc/sysconfig/vncservers文件,未经修改的vncservers文件如下所示:# VNCSERVERS="2:myusername"# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"

将最后两行配置信息取消注释,添加系统账号VNCSERVERS="1:root 2:etl"VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp -nohttpd "VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp -nohttpd "VNCSERVERS 是用来设定可以使用VNC的服务器账号,可以设定多个,例如上面root、etl,但是中间要用空格隔开。使用VNCVIEWER登录时,192.168.48.128:1表示是以root账号登录,以此类推。关于参数配置说明:1:-geometry 表示桌面分辨率,默认为1024x768,所以上面的1024x768也可以不写。2:-nohttpd  表示不监听HTTP端口(58xx)。3:-nolisten tcp 表示不监听TCP端口(60xx)4:-localhost 只运行从本机访问。5:AlwaysShared 默认只允许一个VNCVIEWER连接,此参数表示同一个显示端口允许多用户同时登录.6:-depth  表示色深,参数有8,16,24,32.7: SecurityTypes None 登录不需要密码认证VncAuth默认值,要密码认证。

4.在Microsoft Windows上运行VNC Viewer 

直接运行“vncviewer.exe”,系统会出现”Connection details”对话框。 

在“Connection details”对话框中的“VNC server”文本框中输入VNC Server的IP地址(或主机名及显示装置编号,(请看3。在Linux上启动VNC server的这一行,New ‘X’ desktop is linux:1 得到此信息),例如:192.168.0.1:1(冒号后面的1是执行VNC Server生成的显示装置编号),单击“OK”按钮后,VNC Server即会开始检查所输入的信息,若是信息错误,系统会出现“Failed
to connect to server”的错误信息:若是信息正确,则会接着出现“VNC Authentication”对话框。 

若是在“VNC Authentication”对话框中输入的密码正确,就可以成功地打开Linux的桌面窗口。 

5. 从浏览器远程遥控。 

启动VNC Server 后直接打开浏览器,在地址栏中输入被控端的网址或IP地址,并在网址后加上“:5800+显示编号”的端口号即可操控该计算机。 

例如:http://192.168.01.:5801 (如果显示编号为1,一般第一次设置的显示编号都是1,就用5800+1=5801。)

6.FAQ 

A.为什么连接后,不能显示桌面,而只有一个Terminal窗口? 

试着修改/root/.vnc/xstartup,把最后一行 twm& 改成 gnome-session& or kde&(据说KDE在目前的VNC Viewer上的表现不太稳定)

B. 为什么重新启动VNC Server后,连接不上了? 

因为重新启动VNC Server时,系统会指定一个新的显示编号,需使用此新的编号,否则就无法连接。

2.以 redhat linux 8.0 下面的安装和使用为例

 Linux 下面利用 vnc 来图形界面的控制也是非常简单的。VNC 是由两部分组成:一部分是客户端的应用程序(vncviewer);另外一部分是服务器端的应用程序(vncserver)。

 一、安装 vnc 的 rpm 包

  1 安装 linux

  1.1 图形界面下的安装要是在 KDE 或者 GNOME 下,直接点击 rpm 包,系统会自动开始安装。中间还会提示你设 置密码,端口等。

  1.2 命令行下的安装。

  下面还是说说命令行下的安装,其实也是非常简单的,一个命令就可以了。

  cd /mnt/f/vnc/

  rpm -ivh vnc-3.3.6-2.i386.rpm

  2 设置 vnc server 的访问密码

  vncpasswd

  3 启动 vnc server

  vncserver

  4 linux 上的 vnc server 内定的管理环境是 twm,不好看,也不方便。

  我们来把它改成 KDE。修改 $HOME/.vnc/xstartup这个文件。把 starttwm 改成 startkde 修改后要重新启动 vnc server。

  二、远程连接

  现在你可以在各种平台下控制 linux 了。服务器端 (vncserver)还内建了 Java Web 接口,这样用户通过服务器端对其他计算机的操作就能通过浏览器(必须支持 java applet)显示出来了,这样的操作过程和显示方式非常直观方便。

VNC(Virtual Network Computing)虚拟网络计算工具,本质上来说是一个远程显示系统,管理员通过它不仅仅可以在运行程序的本地机上察看桌面环境,而且可以从Internet上的任何地方察看远程机器的运行情况,而且它具有跨平台的特性。

Linux 要使用远程桌面需要安装VNC,好在Red Hat Enterprise Linux AS 4.0 已经自带了VNC,默认也已经安装了,只要配置一下就可以了。但是Windows客户端还是要安装的。

VNCServer 配置:

1. 启动 VNC Server:

     打开终端执行:vncserver

2. 默认情况下VNC Viewer只能看到 VNC Server的命令行。

    要VNC Viewer上可以看到Linux桌面需要做如下设置:

    在VNC Viewer所在的机器上,取消/root/.vnc/xstartup文件中下面两行的注释即可:

    unset SESSION_MANAGER

    exec /etc/X11/xinit/xinitrc

3. Linux启动后自动运行VNCServer

     1) 在 系统设置>服务器设置>服务 中把 vncserver 打勾。

     2) 打开配置文件/etc/sysconfig/vncservers,去掉下面这行的注释,

         VNCSERVERS="1:root"

         VNCSERVERARGS[1]="-geometry 800x600"

        1表示VNC以桌面1运行,这样可以启动root的桌面。

4. VNC端口

     如果需要从外网控制内网的某台Linux,则需要打开防火墙相应的端口,并在路由器上进行端口映射。

     VNC给浏览器的端口是5800+N,给vncviewer的端口是5900+N,N是设置的display号

Windows 客户端 VNC Viewer 的配置:

1. 从 http://www.realvnc.com/download.html 下载 VNC Free Edition for Windows Version 4.1.2

2. 打开 VNCViewer :

    填入VNCServer 的IP:编号(1或2或...)

3. VNCViewer 切换全屏模式:F8

VNC启动模式

 vncserver -geometry 800*600

vncserver -depth 16

 

 

 

网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用程序,及使用被控端的系统资源。

   VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。VNC软件 主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执行VNC viewer控制被控端。

   VNC server与VNC viewer支持多种操作系统,如Unix系列(Unix,Linux,Solaris等),windows及MacOS,因此可将VNC server 及VNC viewer分别安装在不同的操作系统中进行控制。如果目前操作的主控端计算机没有安装VNC viewer,也可以通过一般的网页浏览器来控制被控端。

vnc的主要工作原理是在服务器端运行 vncserver服务,然后在客户端就可以远程连接服务器端桌面了。

本文介绍如何从windows连接linux远程桌面

安装和配置

首先要在linux下安装nvcserver,我的linux是fc6,安装vnc-4.1.2-9.fc6.i386.rpm,安装包在附件里。


/upimg/soft/vnc-4.1.2-9.fc6.i386.rar
在http://rpm.pbone.net/这个网站也可以搜索到相应的rpm包。
安装rpm包
root@.vnc# rpm -ivh vnc-4.1.2-9.fc6.i386.rpm
然后进入~/.vnc
root@.vnc# cd ~/.vnc
编辑文件 xstartup
屏蔽掉最后一行
#twm &
加上如下语句
gnome-session &
保存退出

【注】上面这一步是为了能够在windows上显示linxu的桌面,否则只看到一个终端窗口。

接下来设置登陆用户,如果安装成功,在/etc/sysconfig/目录下有vncservers文件。

打开vncservers文件,在最后加上
VNCSERVERS="1:root"

好了,再设置vnc远程登录密码
root@.vnc# vncpasswd

设置完密码,然后运行vncserver
root@.vnc# vncserver

New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1

Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:1.log

ok,这台linux的ip是10.0.0.107,服务会启动从5801开始递增的端口

找一台同一局域网的window机器,然后打开ie浏览器,在地址栏输入 http://10.0.0.107:5801
如果连接成功,输入密码后就可以远程控制linux桌面了。

用浏览器登录的画质不太好,可以用windows下vncview工具直接连接。

下载一个vnc-4.0-x86_win32.zip,附件里也有。


/upimg/soft/vnc-4.0-x86_win32.zip
安装后,点击菜单里的
VNC Viewer 4 -> vncviewer.exe,输入ip,如:

 



按ok进入下一步,输入密码便可成功控制linux桌面。犹如打开linux系统一样。



让我们一起学习,共同进步。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: