VNC的安裝與配置


VNC(Virtual Network Computing)虛擬網絡計算工具,它是一個桌面共享系統。它的功能類似於windows中的遠程桌面功能。VNC使用了RFB(Remote Frame Buffer,遠程幀緩沖)協議來實現遠程控制另外一台計算機。它把鍵盤、鼠標動作發送到遠程計算機,並把遠程計算機的屏幕發回到本地。下面介紹VNC的安裝與配置:

 

#Step 1 鍵入下面命令來檢查vnc客戶端和服務器是否已經安裝在你的系統中:

[tchung@tchung101 tchung]$ rpm –q vnc

如果出現下面語句,轉到#Step 4。如果沒出現,順序執行。
vnc-server
vnc-4.0-0.beta4.3.2
vnc-server-4.0-0.beta4.3.2
[tchung@tchung101 tchung]$

若機器沒有安裝圖形界面,先在線安裝!口令如下:(前提:能上網)
[root@sb1 ~]# yum groupinstall "GNOME Desktop Environment"

#Step 2: 准備VNC包

(在操作系統安裝盤的Server目錄下找到兩個這樣的包,或者去VNC官網http://www.realvnc.com/下載對應的VNC軟件版本)
准備兩個包:

vnc-4.1.2-9.el5.i386.rpm 或  vnc-4.1.2-14.el5.i386.rpm

vnc-server-4.1.2-9.el5.i386.rpm或vnc-server-4.1.2-14.el5.i386.rpm

 

#Step 3: 安裝VNC包

進root用戶,cd到這兩個包的存放路徑,執行如下操作: 

# rpm -ivh vnc-4.1.2-9.el5.i386.rpm

# rpm -ivh vnc-server-4.1.2-9.el5.i386.rpm

或者#rpm -ivh vnc-E4_4_3-x86_linux.rpm
     #rpm -Uvh vnc-E4_4_3-x86_linux.rpm

(如果服務器已經安裝過VNC,用這個命令升級安裝)
如果下載的是企業版,要正常使用需要輸入序列號。
    #vnclicense -add XXXXX-XXXXX-XXXXX-XXXXX-XXXXX    (輸入序列號)

#step 4配置文件

#vi /etc/sysconfig/vncservers  --添加以下幾行,保存並退出

設置3個用戶:root, cheny, yesd

VNCSERVERS="1:root 2:cheny 3:yesd" (以下設置分辨率 可以不加 系統默認)

VNCSERVERARGS[1]="-geometry 1024x768 –alwaysshared -depth 16"

VNCSERVERARGS[2]="-geometry 1024x768 –alwaysshared -depth 16"

VNCSERVERARGS[3]="-geometry 1024x768 –alwaysshared -depth 16"

 

其中-alwaysshared表示允許多終端同時登錄,-depth指顏色分辨率,可以是8,16,24,32。

 

#Step 5(逐個用戶運行vncserver,它將完成兩項工作:

1.為用戶創建所需.vnc 文件夾;

2.用戶設置登錄密碼 (如需要修改密碼用vncpasswd)

由於系統遠程桌面中默認的是console模式,用戶要是想使用圖像界面的話,則需激活:unset SESSION_MANAGER和exec /etc/X11/xinit/xinitrc。)

 

1、啟動VNC SERVER(root用戶)

輸入vncserver,第一次啟動會要求輸入驗證密碼,完成后VNC SERVER就啟動了。

[root@localhost ~]# vncserver

寫道:You will require a password to access your desktops
    Password:            //輸入密碼
    Verify:                  //再次輸入密碼
    xauth:  creating new authority file /root/.Xauthority
    New ‘localhost.localdomain:1 (root)’ desktop is localhost.localdomain:1
    Creating default startup script /root/.vnc/xstartup
    Starting applications specified in /root/.vnc/xstartup
    Log file is /root/.vnc/localhost.localdomain:1.log
    [root@localhost ~]#

2、編輯.vnc/xstartup

cd cd.. cd username cd .vnc vi xstartup
使用vi打開xstartup文件,如下:

激活圖像界面:

unset SESSION_MANAGER

exec /etc/X11/xinit/xinitrc

其余行注釋掉。

#!/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" &
#gnome-session &

#kdestart &
#twm &

也有不要求注釋掉exec /etc/X11/xinit/xinitrc下面一行開始所有部分。從這段shell sripts來看,僅僅是測試文件是否存在及屬性設置及后面部分是設置成twm桌面的參數。所以只要保證
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
這兩行不被注釋就可以。這樣設置后,遠程連接顯示桌面為個人Xwindows默認桌面登錄環境。比如你設置登錄環境為gnome桌面,則遠程連接為gnome桌面。如果想更換桌面環境。可以注釋掉xstartup中所有的行,在最后增加startkde & ,你就可以用kde來代替twm,速度會慢少少,但用起來方便不少,也可以用gnome-session & 來啟動gnome。


cheny和其他用戶同上

對每個需要使用遠程桌面的用戶都使用上述方法進行修改。

如何切換到其他用戶命令如下

su

su – username (su - cheny)找到username文件夾后同上。

2、重啟動VNC SERVER

關閉VNC SERVER服務(還可以設置一些高級設置)

[root@localhost ~]# vncserver -kill :1 (kill和:1之間有一個空格)

Killing Xvnc process ID 21198

[root@localhost ~]# vncserver

New ‘localhost.localdomain:1 (root)’ desktop is localhost.localdomain:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/localhost.localdomain:1.log
[root@localhost ~]#

vncserver啟動及停止相關
啟動# /sbin/service vncserver start
關閉# /sbin/service vncserver stop

 

#Step 6查看VNC的監聽端口

如下,VNC用到了三個端口:5801、5901、6001。

[root@localhost /]# netstat –nat

寫道:
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address               Foreign Address             State
    tcp        0      0 127.0.0.1:2208              0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:5801                0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:5901                0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:6001                0.0.0.0:*                   LISTEN
    tcp        0      0 0.0.0.0:724                 0.0.0.0:*                   LISTEN
    tcp        0      0 127.0.0.1:631               0.0.0.0:*                   LISTEN
    tcp        0      0 127.0.0.1:2207              0.0.0.0:*                   LISTEN
    tcp        0      0 172.200.102.3:5901          181.181.181.51:1669         ESTABLISHED
    tcp        0      0 :::6001                     :::*                        LISTEN
    tcp        0      0 :::22                       :::*                        LISTEN
    tcp        0   1364 ::ffff:172.200.102.3:22     ::ffff:181.181.181.51:1599  ESTABLISHED
    [root@localhost /]#

#Step 7:在防火牆上打開VNC用到的上面三個端口
以root權限修改/etc/sysconfig/iptables

[root@localhost /]# cd /etc/sysconfig

[root@localhost sysconfig]# vi iptables

打開后修改到與下面一樣
# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0: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 -i eth0 -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 -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5902 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5903 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5904 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5905 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5906 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5907 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5908 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5909 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5910 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5911 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5912 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

注意紅色部分為新增加的內容!

 

重啟動iptables:
[root@localhost sysconfig]# /etc/rc.d/init.d/iptables restart

寫道:

Flushing firewall rules: [  OK  ]
    Setting chains to policy ACCEPT: filter [  OK  ]
    Unloading iptables modules: [  OK  ]
    Applying iptables firewall rules: [  OK  ]
   (Loading additional iptables modules: ip_conntrack_netbios_ns ip_conntrack_ftp [  OK  ])
    [root@localhost sysconfig]#

 

#Step 8:設置開機自啟動

以root用戶輸入 ntsysv  在開機啟動項里選中vncserver(空格)按Tab鍵確定保存即可。

 

VNC Server VNC Viewer的登錄

使用VNC VIEWER連接VNC SERVER
   下載VNC VIEWER運行,然后輸入IP:端口號,輸入剛才設定的密碼,進入REDHAT桌面。

注:如果在瀏覽器中通過web方式訪問VNC則 端口為:5801,如果通過VNC客戶端(比如VNC Viewer)來訪問VNC則端口為:5901。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM