Linux远程桌面设置part1:VNCserver在Fedora上配置过程
VNCserver在Fedora上配置过程
翻译:yunqing
原作者:Thomas Chung
出处:http://fedoranews.org/tchung/vnc/
声明: 版权属原作者ThomasChung所有,转载请注明出处.
再说一句废话:强烈推荐这个网站,虽然更新比较慢,对Fedora发行版来说比较对口.
以下正文:
什么是VNC?
VNC是虚拟网络计算Virtual Network Computing的缩写.他是一个远程控制程序,允许用户在因特网的任何地方使用简单的程序来和一个特定的
计算机(服务器)进行交互.两个交互的计算机不一定非得是同一类型,所以你可以在家里的运行windows的PC上来察看办公室里运行LINUX的机器
。VNC可以自由获取并且有上百万的人在使用,他们来自工业、学术和个人应用等不同层面.
更多的信息请访问 http://www.realvnc.com/
我的系统中已经有这个软件了吗?
键入下面的命令来检查vnc客户端和服务器是否已经安装在你的系统中:
[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]$
要把vnc配置成一项系统服务,把你的用户名称加入到下面的配置文件中:
# 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 yourown). 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 ofusing VNC, see
# URL:http://www.uk.research.att.com/vnc/sshvnc.html
# VNCSERVERS="1:myusername"
VNCSERVERS="1:tchung"
注意这将同时在你的home目录下,创建一个隐藏的目录.vnc,其中有一个文件passwd保存着你的vnc口令.
Password:
Verify:
[tchung@tchung101 tchung]$ ls -d .vnc
.vnc
[tchung@tchung101 tchung]$ ls .vnc
passwd
[tchung@tchung101 tchung]$
Starting VNC server: 1:tchung [ OK ]
[tchung@tchung101 tchung]$
[tchung@tchung101 .vnc]$ ls
passwd tchung101:1.log tchung101:1.pid xstartup
[tchung@tchung101 .vnc]$
将这两行标记成红色的内容前面的注释符号去掉,否则你将只能得到一个什么都没有的灰屏。#!/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 &
因为我们已经修改了启动脚本,现在来重新启动vncserver.
Shutting down VNC server: 1:tchung [ OK ]
Starting VNC server: 1:tchung [ OK ]
[tchung@tchung101 tchung]$
[tchung@tchung101 tchung]$ vncviewer localhost:1
输入你的vnc口令,看一下结果
更新:
在使用防火墙的情况下来连接到一个远程系统,需要打开端口5901.
加入以下红色的部分,然后重启iptables服务。
[tchung@tchung101 tchung]$ sudo vi /etc/sysconfig/iptables
# Firewall configuration written byredhat-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0]
:FORWARD ACCEPT [0]
:OUTPUT ACCEPT [0]
:RH-Firewall-1-INPUT - [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 -jACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -mtcp -p tcp --dport 5901 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-withicmp-host-prohibited
COMMIT
[tchung@tchung101 tchung]$ sudo /sbin/service iptablesrestart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
[tchung@tchung101 tchung]$
Forrest Taylor 提供的TIP
让vncserver接受两个不同的用户:
持两个用户,应同时打开5901和5902.