0.说明
安装服务的过程当中,最好是在联网环境下操作。由于涉及到远程连接的问题,系统的防火墙需要关闭,或者是做好相应的过滤策略。参考了网上很多大牛的意见和文章,结合自己的安装经历,现在总结一下。
1.下载并按照vnc-server
1.1 检查是否已经安装
默认情况下,vnc服务是没有被系统安装的,可以通过以下命令查看:
[root@master /]# rpm -qa | grep vnc #执行查询命令
tigervnc-1.1.0-18.el6.x86_64 #有内容说明已经安装了服务。我这里已经安装,所以会有结果出来。
tigervnc-server-1.1.0-18.el6.x86_64
执行查询命令,如果没有内容说明还没有安装vnc服务,需要安装。
1.2 下载和安装
其实这个步骤很简单,都交给系统去做了,执行下面yum安装命令即可完成:
[root@master /]# yum install tigervnc tigervnc-server -y
2.配置vncserver
[root@master /]# vim /etc/sysconfig/vncserver #打开配置文件
#在文件修改为下面两行代码:
VNCSERVERS="1:root"
VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp -localhost"
3.设置或修改vnc登录密码
配置当前用户的vnc登陆密码,连续输入两次即可。修改vnc的登录密码,也是和设置新密码一样的步骤。
这个密码是vnc连接的独立密码,与系统密码没有关系。
[root@master /]# vncpasswd
Password:
Verify:
[root@master /]#
4.配置防火墙规则,允许vnc远程连接
VNC server监听的端口从5900开始,display:1的监听 5901,display:2监听 5902,以此类推。CentOS 的防火墙缺省是不允许连接这些端口的,需要配置防火墙开放相关端口(root 权限):
[root@master /]# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5902 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5901 -j ACCEPT
...
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT #开放 "5901" 端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5902 -j ACCEPT #开放 "5902" 端口
...
#也可以开启一段连续的端口地址
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5901:5920 -j ACCEPT
[root@master /]# service iptables restart #重启防火墙
# 也可使用命令行进行防火墙设置
#使用命令行设置iptable
iptables -I INPUT -m state --state NEW -p tcp --destination-port 5901 -j ACCEPT
iptables -I INPUT -m state --state NEW -p tcp --destination-port 5902 -j ACCEPT
#使用命令行设置iptable开启一段连续端口地址
iptables -I INPUT -m state --state NEW -p tcp --destination-port 5901:5920 -j ACCEPT
# service iptables save
6.启动服务(开启多个远程端口)并设置开机自启动
6.1 启动方式一
让系统自动分配连接端口:
[root@master /]# vncserver #直接输入则会自动打开一个连接服务
New 'master:2 (jay)' desktop is master:2 #这里是“master:2”说明这是启动的第二个服务,已经存在有“master:1”在这之前启动
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/master:2.log
6.2 启动方式二
指定端口启动,如果指定端口的vnc服务已经启动则会提示,如果还没有启动则会重新启动特定端口的vnc服务:
[root@master /]# vncserver :1 #指定端口1(即系统的5901端口)启动服务,注意“:1”之前有一个空格
[root@master /]# vncserver :2 #指定端口2(即系统的5902端口)启动服务
6.3 开机自启动
设置开机自动启动服务:
[root@master /]# chkconfig vncserver on
查看设置是否设置成功:
[root@master /]# chkconfig --list | grep vnc
vncserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off
其他
在/etc/hosts文件中需要有host IP与host name对应的条目:192.168.0.xx <host name>
VNC配置文件中去除”-nolisten tcp -localhost”选项
Centos6配置VNC