Chinaunix首页 | 论坛 | 博客
  • 博客访问: 400984
  • 博文数量: 147
  • 博客积分: 5400
  • 博客等级: 大校
  • 技术积分: 1380
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-12 20:29
文章分类

全部博文(147)

文章存档

2013年(1)

2012年(44)

2011年(5)

2010年(4)

2009年(22)

2008年(71)

分类: LINUX

2009-11-05 12:04:04

VNC是Virtual Network Computing的简称,可以跨平台实现远程桌面连接,比如windows系统连接linux桌面。

1、检查是否安装了vnc server

[tchung@tchung101 tchung]$ rpm -q vnc vnc-server
vnc-4.0-0.beta4.3.2
vnc-server-4.0-0.beta4.3.2
[tchung@tchung101 tchung]$

2、在配置文件中添加上用户名
[tchung@tchung101 tchung]$ sudo 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
# URL:

# VNCSERVERS="1:myusername"
VNCSERVERS="1:tchung"

3、设置密码

在启动vnc服务之前,先用vncpasswd命令建一个密码。将有一个隐藏的.vnc文件夹在/home下,文件名为passwd,这个文件内有你设置的密码。

[tchung@tchung101 tchung]$ vncpasswd

                          Password:

                          Verify:

[tchung@tchung101 tchung]$ ls -d .vnc .vnc                           [tchung@tchung101 tchung]$ ls .vnc passwd

4、启动vnc service

[tchung@tchung101 tchung]$ sudo /sbin/service vncserver start
Starting VNC server: 1:tchung                              [  OK  ]
[tchung@tchung101 tchung]$

现在查看一下 .vnc 文件夹,是否有以下内容

[tchung@tchung101 tchung]$ cd .vnc
[tchung@tchung101 .vnc]$ ls
passwd  tchung101:1.log  tchung101:1.pid  xstartup
[tchung@tchung101 .vnc]$

如果你编辑了xstartup, 注意下面的红字.
Uncomment those two lines in red as shown below!!! Otherwise, you will get nothing but grey screen.

#!/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 &

5、连接

编辑vnc startup script之后,得重启vncserver.

[tchung@tchung101 tchung]$ sudo /sbin/service vncserver restart Shutting down VNC server: 1:tchung [ OK ]

Starting VNC server: 1:tchung [ OK ]

[tchung@tchung101 tchung]$ So how do I connect to vncserver? Use vncviewer command in vnc client as following.

[tchung@tchung101 tchung]$ vncviewer localhost:1

Enter your vnc password and here is the result:


UPDATE:
要连接一个有防火墙的服务器,必须打开端口5901。
Add following line in red to open port 5901 and restart iptables service.

[tchung@tchung101 tchung]$ sudo vi /etc/sysconfig/iptables

# Firewall configuration written by redhat-config-securitylevel

# Manual customization of this file is not recommended.

*filter

:INPUT ACCEPT [0:0]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [0:0]

:RH-Firewall-1-INPUT – [0:0]

-A INPUT -j RH-Firewall-1-INPUT

-A FORWARD -j RH-Firewall-1-INPUT

-A RH-Firewall-1-INPUT -i lo -j ACCEPT

-A RH-Firewall-1-INPUT -p icmp –icmp-type any -j ACCEPT

-A RH-Firewall-1-INPUT -p 50 -j ACCEPT

-A RH-Firewall-1-INPUT -p 51 -j ACCEPT

-A RH-Firewall-1-INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

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

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

-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited

COMMIT

[tchung@tchung101 tchung]$ sudo /sbin/service iptables restart

Flushing firewall rules: [ OK ]

Setting chains to policy ACCEPT: filter [ OK ]

Unloading iptables modules: [ OK ]

Applying iptables firewall rules: [ OK ]


建立两个用户连接的方法

VNCSERVERS=”1:tchung 2:thomasc” You will, of course have to run vncpasswd for both users. Also in your firewall update, you may want to clarify that VNC uses port 5901 for connection 1. If you had both users above, you would have to have ports 5901 and 5902 open.

[注: 1:tchung 对应的端口号是5901,2:thomasc对应的端口号是2902]

 

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