CentOS 6下部署VNC服務器

VNC簡介:

VNC是Linux/UNIX下優秀的遠程桌面控制軟件,由客户端(vncviewer)和服務端(vncserver)兩部分組成。

安裝軟件包:

[root@localhost ~]# yum install -y tigervnc
[root@localhost ~]# yum install -y tigervnc-server

配置前的準備工作:

正式配置VNC服務前,先添加幾個系統賬號用於測試。

[root@localhost ~]# useradd user1
[root@localhost ~]# useradd user2
[root@localhost ~]# useradd user3

可以不用設置密碼,當然,你想設置也可以。

服務配置:

編輯VNC主配置文件。

[root@localhost ~]# vim /etc/sysconfig/vncservers

在文件末尾找如下兩行。

# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

複製一份,或者直接去掉這兩行前面的註釋也可以,修改為如下形式。

VNCSERVERS="1:user1 2:user2"
VNCSERVERARGS[1]="-geometry 800x600 -nolisten tcp -localhost"
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"

其中VNCSERVERS選項用以指定允許遠程登錄的用户名及該用户的編號,VNCSERVERARGS選項後面接用户編號,其後定義的是該用户遠程登錄的參數。

VNCSERVERARGS的默認參數有如下幾個:

-geometry 桌面分辨率,默認1024x768;
-nohttpd 不監聽HTTP端口(58xx端口);
-nolisten tcp 不監聽X端口(60xx端口);
-localhost 只允許從本機訪問;
-AlwaysShared 默認只同時允許一個vncviewer連接,此參數允許同時連多個vncviewer;
-SecurityTypes None 登錄不需要密碼認證VncAuth默認值,要密碼認證。

啓動服務:

先切換到各個賬户下為他們分別配置VNC密碼,此密碼可以與用户系統賬户密碼不同。(嘗試過在root用户下為他們統一配置密碼,發現行不通。。。)

[root@localhost ~]# su user1
[user1@localhost root]$ vncpasswd
Password:              #要求輸入密碼
Verify:                #要求再次輸入密碼

user2用户也要按照上面的方法配置VNC密碼。

最後切換回root用户,在保證防火牆已關閉的情況下統一開啓VNC服務,此時VNC進程會自動生成用户的VNC服務配置文件及日誌文件到用户家目錄的.vnc/下。

[root@localhost ~]# service vncserver start
正在啓動 VNC 服務器:
1:user1
New 'localhost.localdomain:1 (user1)' desktop is localhost.localdomain:1
Starting applications specified in /home/user1/.vnc/xstartup
Log file is /home/user1/.vnc/localhost.localdomain:1.log
2:user2
New 'localhost.localdomain:2 (user2)' desktop is localhost.localdomain:2
Starting applications specified in /home/user2/.vnc/xstartup
Log file is /home/user2/.vnc/localhost.localdomain:2.log

注意第四行,其中的desktop is localhost.localdomain:1是告訴你,user1的VNC進程號是1,訪問此VNC桌面的方法就是IP:1。而user2的進程號則是2,觀察倒數第四行(算上空行~)。

如果你只想為某一用户啓用VNC進程,可以切換到該用户的身份上,執行vncserver命令。注:使用此方法啓用VNC服務後,在root用户下就不能再使用service命令來關閉VNC服務器了,必須使用kill -9暴力殺死用户的VNC服務器進程。

[root@localhost ~]# su user1
[user1@localhost root]$ vncserver
New 'localhost.localdomain:3 (user1)' desktop is localhost.localdomain:3
Starting applications specified in /home/user1/.vnc/xstartup
Log file is /home/user1/.vnc/localhost.localdomain:3.log

為用户指定默認桌面環境:

編輯user1的VNC配置文件。

[root@localhost ~]# vim /home/user1/.vnc/xstartup

轉至文件末尾,找到下面一行。

twm &                   #指定默認使用文本界面

將其修改為以下任意一種形式,根據自己的需求選擇,不要把兩個都加上,如果你那麼幹了,那我只能感慨你是個大傻瓜了。

startkde &              #指定默認使用KDE桌面環境
gnome-session &         #指定默認使用Gnome桌面環境

使用客户端連接VNC服務器:

可以使用Windows下的VNC客户端,本實驗中我在另一台安裝有Desktop的CentOS6.5上使用客户端連接VNC。

安裝VNC客户端,並連接VNC服務器,這裏我連接user2的VNC服務。

[root@localhost ~]# yum install -y vnc
[root@localhost ~]# vncviewer 192.168.1.101:2

之後會彈出一個窗口要求你輸入VNC的密碼。

輸入後按回車鍵就可以連接VNC桌面啦!

我這裏出現亂碼不是VNC配置的問題,而是因為安裝系統的時候選擇了系統語言為中文,但Desktop下卻沒有安裝中文字體。上圖中,gnmoe桌面的系統工具提醒我安裝zh-cn字體,那我就安裝一下吧!可以看到,安裝後立刻正常了~

Leave a Reply

Your email address will not be published. Required fields are marked *

Captcha Code