TShopping

 找回密碼
 註冊
搜索
查看: 2563|回復: 3

[教學] CentOS 下建置 VNCSERVER

[複製鏈接]
發表於 2012-5-2 23:57:14 | 顯示全部樓層 |閱讀模式
 
Push to Facebook
VNC 是用來顯示在另一台電腦上運行的 X 視窗工作階段。有異於一個遠端的 X 連線,xserver 是在遠端的電腦上運行,而不是在本地的工作台上。你的工作台(Linux 或 Windows)只是顯示遠端機器所顯示(真實或虛擬)的東西。

設定一個 vnc 伺服器有數個不同方法。這份教學文檔示範如何利用 CentOS 所提供的 vncserver 服務來設定 VNC。

1. 安裝所需的套件
伺服器的套件名叫 vnc-server。請執行 rpm -q vnc-server 這個指令。

它的輸出應該是 package vnc-server is not installed 或類似 vnc-server-4.0-11.el4

假如伺服器未被安裝,請用這個指令來安裝它:yum install vnc-server

客戶端的程式是 vnc。假若 rpm -q vnc 表示它未被安裝,你可以用 yum install vnc 這個指令來安裝它。

請安裝一個視窗管理員來取得一個正常的圖像式桌面。舉個例說,你可以用 yum groupinstall "GNOME Desktop Environment" 這個指令來安裝 Gnome 桌面及所需的套件。其它受歡迎的桌面環境包括 KDE 及 XFCE-4.4。XFCE 比 Gnome 及 KDE 更為輕型,而且已收錄在 extras 軟件庫內。


如果你採用 CentOS 6,該指令是 yum groupinstall Desktop

如果你採用 CentOS 5,yum groupinstall "GNOME Desktop Environment" 可能會投訴 libgaim.so.0 被遺漏了。這是一個已知的錯誤。詳情請參閱 CentOS-5 常見問題集

如果你採用 CentOS 6,伺服器的名稱是 tigervnc-server 而不是 vnc-server

2. 設定未加密的 VNC
我們會設置 VNC 給 3 位用戶。他們分別是 larry、moe 及 curly。

你須要執行下列步驟來設定你的 VNC 伺服器:





  • 建立你的 VNC 用戶。
  • 設定用戶的 VNC 密碼。
  • 編輯伺服器的設定。
  • 建立及自訂 xstartup 腳本。
  • 啟動 VNC 服務。
  • 測試每位 VNC 用戶。
  • 設置 VNC 服務在開機時自動啟用。
  • 加入選擇性的改動。
2.1. 建立你的 VNC 用戶
root 的身份:


  1. $ su -
  2. # useradd larry
  3. # useradd moe
  4. # useradd curly
  5. # passwd larry
  6. # passwd moe
  7. # passwd curly
複製代碼


2.2. 設定用戶的 VNC 密碼
登入每個戶口,並執行 vncserver並設定密碼。這樣做會建立一個 .vnc 目錄。


  1. [~]$ cd .vnc
  2. [.vnc]$ ls
  3. passwd
複製代碼


2.3. 編輯伺服器的設定
編輯 /etc/sysconfig/vncservers,並在檔案底部加入以下內容。


  1. VNCSERVERS="1:larry 2:moe 3:curly"
  2. VNCSERVERARGS[1]="-geometry 640x480"
  3. VNCSERVERARGS[2]="-geometry 640x480"
  4. VNCSERVERARGS[3]="-geometry 800x600"
複製代碼

Larry 及 Moe 將會有 640 乘 480 的畫面。Curly 將會有 800 乘 600 的畫面。

2.4. 建立 xstartup 腳本(在 CentOS 6 略過此步驟)
我們會透過以 root 的身份啟動及停止 vncserver 來建立 xstartup 腳本。


  1. # /sbin/service vncserver start
  2. # /sbin/service vncserver stop
複製代碼

登入每個戶口並編輯 xstartup 腳本。就以 Larry 為例,首先登入成為 larry。


  1. [~]$ cd .vnc
  2. [.vnc] ls
  3. mymachine.localnet:1.log  passwd  xstartup
複製代碼

編輯 xstartup。原有的應該看似:

  1. #!/bin/sh

  2. # Uncomment the following two lines for normal desktop:
  3. # unset SESSION_MANAGER
  4. # exec /etc/X11/xinit/xinitrc

  5. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
  6. [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
  7. xsetroot -solid grey
  8. vncconfig -iconic &
  9. xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
  10. twm &
複製代碼


這加入下面這行來確定 xterm 會經常存在。假若你希望在 VNC 內執行用戶的正常視窗管理員,請按指示除去兩行的註釋符號。請注意,在一個解像度及色彩深度都可能被降低的 VNC 視窗內,整個桌面將會頗狹窄,及看起來怪怪的。如果你不除去那兩行的註釋,你的 VNC 視窗將會有班點底色。


  1. #!/bin/sh
  2. # 加入下面這行來確定 xterm 會經常存在。
  3. ( while true ; do xterm ; done ) &
  4. # Uncomment the following two lines for normal desktop:
  5. unset SESSION_MANAGER
  6. exec /etc/X11/xinit/xinitrc
  7. [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
  8. [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
  9. xsetroot -solid grey
  10. vncconfig -iconic &
  11. xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
  12. twm &
複製代碼


2.5. 啟動 VNC 伺服器
以 root 身份啟動 vncserver。


  1. # service vncserver start
複製代碼


2.6. 測試每位 VNC 用戶
2.6.1. 以支援 java 的瀏覽器進行測試
讓我們假設我們機器擁有 192.168.0.10 這個 IP 位址。連線到每個戶口的 URL 將會是:


  1. Larry 是 http://192.168.0.10:5801
  2. Moe   是 http://192.168.0.10:5802
  3. Curly 是 http://192.168.0.10:5803
複製代碼

連線到 http://192.168.0.10:5801 。一個 java 程式的視窗將會彈出,表示你要連線到機器的 1 號埠。擊按 [ok] 按鈕。輸入 larry 的 VNC 密碼,然後一個 640x480 視窗將會透過 larry 預設的視窗管理員被開啟出來。iptables 防火牆必須開放以上這些連接埠 5801、5802 及 5803 給客戶端的 IP 位址或子網絡。

2.6.2. 以 vnc 用戶端進行測試

  1. Larry 用: vncviewer 192.168.0.10:1
  2.   Moe 用: vncviewer 192.168.0.10:2
  3. Curly 用: vncviewer 192.168.0.10:3
複製代碼

要以 vncviewer 測試 larry,執行 vncviewer 192.168.0.10:1。輸入 larry 的 VNC 密碼,然後一個採用 larry 的預設視窗管理員的 640x480 視窗將會打開。vncviewer 這個客戶端會連線到 590X 這個埠,當中 X 值等於 1、2、3 分別對應 larry、moe 及 curly,因此防火牆必須開放這些連接埠給客戶端的 IP 位址或子網絡。

2.6.3. 開機時啟動 vncserver
要在開機時啟動 vncserver,請輸入 /sbin/chkconfig vncserver on 這個指令。

VNC 的基本設定現在已經完成。以下部份是選擇性的改善方法來增強安全性及功能。


 

臉書網友討論
發表於 2013-11-10 00:57:28 | 顯示全部樓層
初來乍到,請多多關照。。。  

版主招募中

發表於 2013-11-10 00:57:28 | 顯示全部樓層
知道了 不錯~~~  


*滑块验证:
您需要登錄後才可以回帖 登錄 | 註冊 |

本版積分規則



Archiver|手機版|小黑屋|免責聲明|TShopping

GMT+8, 2024-4-18 22:07 , Processed in 0.068724 second(s), 19 queries .

本論壇言論純屬發表者個人意見,與 TShopping綜合論壇 立場無關 如有意見侵犯了您的權益 請寫信聯絡我們。

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表