Chinaunix首页 | 论坛 | 博客
  • 博客访问: 383957
  • 博文数量: 87
  • 博客积分: 2810
  • 博客等级: 少校
  • 技术积分: 825
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 22:34
文章分类

全部博文(87)

文章存档

2010年(25)

2009年(43)

2008年(19)

分类: LINUX

2009-10-10 23:31:33

Linux VNC Server 配置心得
1.查询系统是否已经安装vnc-server
执行:
 

rpm -qa |grep vnc
如果有类似于:

vnc-server-

的值返回说明已经安装了vnc-server


2.配置vnc-server用户

首先添加用户:
adduser kevin
设置用户密码:
passwd kevin

Password:
Verify:


配置vnc-server的配置文件,位于:
/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
# URL:
                                                                                                   
# VNCSERVERS="1:myusername"
VNCSERVERS="1:tchung"----->这里的tchung是系统里存在的用户

VNCSERVERARGS[1]="-geometry 1024x768" ----->这里的意思是配置用户tchung的相关参数

这里有两点要注意:

1.VNCSERVERS=后面可以支持多用户,以空格隔开。如:

VNCSERVERS="1:myusername 15:otheruser"--->这里的1 和15是端口号,用于连接时的端口

2.VNCSERVERARGS后面的[]里面的数据要与VNCSERVERS后面对应用户的值要一致。好像不一致也没有关系

 

VNCSERVERARGS基本参数有:

-geometry 桌面大小,缺省是1024x768
-nohttpd 不监听HTTP端口
-nolisten tcp 不监听X端口
-localhost 只允许从本机访问
-AlwaysShared 默认的, 同时只能有一个vncviewer连接(跟客户端配置也有关), 一旦第2个连上去, 第1个就被断开了. 此参数允许同时连多个vncviewer
-SecurityTypes None登录不需要密码认证 VncAuth默认值,要密码认证

这里配置好了之后,我们要用vncpass来设置vnc连接时候的认证

vncpass
Password:
Verify:

注意,这里的vncpass只能在vnc本用户下面来运行

执行完了后,会在用户目录下面生成.vnc的目录,里面有一个文件叫passwd

然后我们启动vncserver

service vncserver start

如果没有出错的话,就会启动vnc服务了。

在tchung的用户目录下面的.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 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm & ---把这两行注释掉,加上

gnome-session &


重新启动vncserver

使用netstat -antpl查看可以发现有三个端口在监听。

5901 5801 6001

这三个端口:

默认的, vnc 服务监听3个TCP端口
默认端口 : 5900+显示器号
HTTP协议默认端口 : 5800+显示器号
默认端口 : 6000+显示器号
vncserver使用的显示器编号默认从1开始, 依次使用, 也可以参数指定端口号

我们只需要RFB协议就可以了,所以我们把5800 6000这两种端口关掉。

需要修改/etc/sysconfig/vncservers

在参数后面加上:

-nohttpd 不监听HTTP端口
-nolisten tcp 不监听X端口

# 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
# For a secure way of using VNC, see
# URL:http://www.uk.research.att.com/vnc/sshvnc.html
                                                                                                    
# VNCSERVERS="1:myusername"
VNCSERVERS="1:tchung"
VNCSERVERARGS[1]="-geometry 1024x768 -nohttpd -nolisten tcp"

重启vncserver

使用vncview来连接

192.168.107.109:1---->这里的:1就是端口号 指的是5900+1 这个1是在/etc/sysconfig/vncservers里面指定的,这个数字在100以下,不含100的时候可以直接用192.168.107.109:1来表示,如果在vncservers里面指定的数值大于100 包含100的时候在连接的时候就需要用到完整的端口数值。如:在vncservers里面指定的是100,那么在连接的时候就应该是这样的:192.168.107.109:6000

vnc里面默认是以5900这个端口为基础的,这个应该是可以更改的,不过得改源代码。

 


 

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