Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1759722
  • 博文数量: 1493
  • 博客积分: 38
  • 博客等级: 民兵
  • 技术积分: 5834
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-19 17:28
文章分类

全部博文(1493)

文章存档

2016年(11)

2015年(38)

2014年(137)

2013年(253)

2012年(1054)

2011年(1)

分类:

2012-09-26 14:44:12

原文地址:vnc远程连接linux 作者:

简介;
VNC,全称为Virtual NetworkComputing,它是一个桌面共享系统。它的功能,类似于中 的远程桌面功能。VNC使用了 RFB(RemoteFrameBuffer,远程帧缓冲)协议来实现远程控制另外一台计算机。它把键盘、鼠标动作发送到远程计算机,并把远程计算机的屏 幕发回到本地。VNC技术与平台无关,VNC Viewer可以和VNCServer在不同的操作系统上。VNC几乎支持所有的操作系统,也支持Java,甚至可以通过支持Java的来访问 VNCServer。多个VNC客户端可以同时连接到一个VNC Server上。VNC最初由AT&T开发的,它的源代码是开源的。
平台 CentOS 5.5
1.安装
检查linux是否安装有vnc

点击(此处)折叠或打开

  1. [root@localhost .vnc]# rpm -qa |grep vnc
  2. vnc-4.1.2-14.el5_6.6
  3. vnc-server-4.1.2-14.el5_6.6
  4. [root@localhost .vnc]# rpm -q vnc
  5. vnc-4.1.2-14.el5_6.6
  6. [root@localhost .vnc]# rpm -q vnc-server
  7. vnc-server-4.1.2-14.el5_6.6
若没有,则安装他们

点击(此处)折叠或打开

  1. [root@localhost ~]# yum install vnc vnc-server
2.需要在每个用户下启动vncserver,生成该用户远程桌面连接时的配置文件以及访问密码,方法就是切换到每个用户,执行 vncserver。

为root用户创建

点击(此处)折叠或打开

  1. [root@localhost .vnc]# vncserver
  2. You will require a password to access your desktops.
  3. enter password: #首次运行会让你设置密码,密码要求6位以上
  4. verify password: #确认密码
  5. New 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1
  6. Starting applications specified in /root/.vnc/xstartup
  7. Log file is /root/.vnc/localhost.localdomain:1.log
为binhoul用户创建

点击(此处)折叠或打开

  1. [root@localhost .vnc]# su - binhoul
  2. [binhoul@localhost ~]$ vncserver

  3. You will require a password to access your desktops.

  4. Password:
  5. Verify:
  6. Passwords don't match - try again
  7. Password:
  8. Verify:
  9. xauth: creating new authority file /home/binhoul/.Xauthority

  10. New 'localhost.localdomain:3 (binhoul)' desktop is localhost.localdomain:3

  11. Creating default startup script /home/binhoul/.vnc/xstartup
  12. Starting applications specified in /home/binhoul/.vnc/xstartup
  13. Log file is /home/binhoul/.vnc/localhost.localdomain:3.log

  14. [binhoul@localhost ~]$ exit


3.编辑配置脚本文件

点击(此处)折叠或打开

  1. [root@localhost .vnc]# cat xstartup
  2. #!/bin/sh

  3. # Uncomment the following two lines for normal desktop:
  4. # unset SESSION_MANAGER
  5. # exec /etc/X11/xinit/xinitrc

  6. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
  7. [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
  8. xsetroot -solid grey
  9. vncconfig -iconic &
  10. xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
  11. twm &
其中第13行代表文字模式,若将twm 替换为gnome-session 将会出现图像界面。

4.修改vnc配置文件

点击(此处)折叠或打开

  1. [root@localhost sysconfig]# cat vncservers
  2. # The VNCSERVERS variable is a list of display:user pairs.
  3. #
  4. # Uncomment the lines below to start a VNC server on display :2
  5. # as my 'myusername' (adjust this to your own). You will also
  6. # need to set a VNC password; run 'man vncpasswd' to see how
  7. # to do that.
  8. #
  9. # DO NOT RUN THIS SERVICE if your local area network is
  10. # untrusted! For a secure way of using VNC, see
  11. #

  12. # Use "-nolisten tcp" to prevent X connections to your VNC server via TCP.

  13. # Use "-nohttpd" to prevent web-based VNC clients connecting.

  14. # Use "-localhost" to prevent remote VNC clients connecting except when
  15. # doing so through a secure tunnel. See the "-via" option in the
  16. # `man vncviewer' manual page.

  17. # VNCSERVERS="2:myusername"
  18. # VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"
  19. VNCSERVERS="1:root 2:binhoul"
  20. VNCSERVERARGS[1]="-geometry 1024x768"
  21. VNCSERVERARGS[2]="-geometry 1024x768"
其中第23行代表开机启动几个vnc server,实例是两个
设置完成后就可以启动vncserver服务了。
启动失败的原因有:
                      1./etc/sysconfig/vncservers文件参数不对
                      2.没有为vncservers提到的用户生成各自的配置文件
                      3.在生成配置文件后,没有使用命令vncserver -kill :1 将那个进程杀死

5.配置防火墙
VNC客户端通过浏览器或VNC Viewer连接至VNC Server。 其监听端口分别从5800和5900开始,display1 为5801和5901
vi /etc/sysconfig/iptables 
vi /etc/sysconfig/iptables 找到下面的语句:
-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited
在此行之前,加上下面的内容:

点击(此处)折叠或打开

  1. -A RH-Firewall-1-INPUT -m state –-state NEW -m tcp -p tcp –-dport 5901 -j ACCEPT

这句话的含义是,允许其它机器访问本机的5901端口,这样,display:1的用户就可以连接到本机。

或者直接将iptables关闭





阅读(341) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~