刚研究Linux,选的是CentOS6.3的系统,为了弄这个VNC远程连接,网上找了很多资料,好多都有点含糊不清的,昨天通宵才搞定,为了让跟我一样的新手少走一点弯路,所以特地整理了我昨天的过程,发出来跟大家共享下。

好了,废话不多说了,直接入正题吧。

首先需要检查一下服务器是否已经安装了VNC服务,检查服务器的是否安装VNC的命令如下:

rpm -qa | grep vnc

使用了上面的命令我这边返回的信息是下面的(如果没有任何显示,则说明系统没有安装vnc包)

tigervnc-1.1.0-5.el6.i686

tigervnc-server-1.1.0-5.el6.i686

如果没有安装vnc可以使用下面命令进行安装:

yum install tigervnc tigervnc-server

接下来就是安装之后的配置问题了。

使用下面的命令编辑配置文件:

vi /etc/sysconfig/vncservers

使用上面命令的时候,可能您服务器上面已经存在这个配置文件,也可能您服务器上面不存在这个配置文件,将下面的内容添加到配置文件内:

VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 800x600"

下面这段是上面所讲配置文件注解,做参考之用:
#这个是配置远程桌面登录的用户名,如果两个用户,则使用VNCSERVERS="1:user12:user2",,
依次类推,默认情况下,1:user1对应5901,2:user2对应5902(VNC的默认监听端口是5900,监听端口规则为590+usernumber),如下
VNCSERVERS="usernumber:myusername"
#下面这项配置为登录桌面配置,其中的“1”为用户序号,800x600为分辨率,-nolisten tcp为阻止tcp包,-localhost代表只监听本地,
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -localhost"
如果想阻止http包,可以使用如下配置
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -nohttpd-localhost"

使用下面的命令为vnc设置密码(需要使用su切换到要设置vnc密码的用户上,比如:su user1,其中user1就是在上面配置文件内写的帐号)

vncpasswd

设置好密码之后,就是启动VNC服务了,启动VNC服务的时候也需要用su user1(user1就是在上面配置文件内写的帐号)切换到要启动服务的帐号上(很多朋友在使用DirectSpace默认的桌面VNC的时候,遇到无法连接“10061错误”,即可在ssh下输入下面命令解决!)

vncserver

其他命令,比如重启VNC服务就用下面的命令:

service vncserver restart

设置VNC服务开机启动用下面的命令:

chkconfig vncserver on

在一些minimal系统里,即使英文也会出现方框乱码,请使用本处命令修正:yum -y installfontforge

其它说明:

设置完毕后使用servers vncserver start(如果不能启动,检查软件是否安装正常,检查/etc/rc.d/init.d目录是否存在vncserver控制脚本),

启动完毕后使用netstat -nat查看监听端口(默认为5901,5902,5903等),如果开启了防火墙,则需要配置规则允许对应端口tcp包通过。

参考配置:iptables-I INPUT 1 -p tcp --dport 5901 -j ACCEPT(其中-I INPUT 1代表插入一条规则,这条规则的位置是1,详情请查阅iptables相关配置)

Linux VPS,VPS hosting

为了工作上、或网络管理的方便,有时候我们会配置vncserver服务器,大部分情况下linux都是携带vnc viewer客户端的,也安装了vncserver服务器,我们只需要在setup里系统服务里将vncserver服务启动即可,然后在终端运行命令:vncserver,会提示输入vnc操作密码,然后vnc就正确启动了,但是有时候直接使用vnc viewer连接时会出现一个黑屏/,即无法正常显示linux桌面,这是默认vnc配置文件的问题,运行vim /root/.vnc/xstartup将里面配置内容全部删除,并将以下配置内容输入,或直接保存成xstartup然后替换即可(不要忘记给xstartup赋予可执行权限chmod +xxstartup)

 

#****************************vncserver新配置文件内容**********************
#!/bin/sh 
# Uncomment the following two lines for normaldesktop: (去掉以下两行的#就可以允许使用桌面了) 
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 & 
gnome-session &

 

配置文件修改后,先杀死已运行的服务,vncserver -kill :1 然后再重新启动vnc服务 service vncserver restart,再运行vncserver即可,vncserver端口由系统自动分配,运行vncserver可以看到提示,连接时输入IP地址:端口号即可,输入密码后可以操作,如下面启动vncserver分配的端口号是6,root用户

[root@localhost .vnc]# vncserver
 
New 'localhost.localdomain:6 (root)' desktop is localhost.localdomain:6
 
Starting applications specified in/root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:6.log
 
#!/bin/sh
# Uncomment the following two lines fornormal 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 &
 #startkde &  #启动KDE桌面
gnome-session &  #启动gnome桌面