【主機】vnc 介紹以及安裝時注意的問題

Linux下Vnc遠程桌面Server配置教程http://www.aiezu.com/Article/Linux_Vnc_Server_conf.aspx用VNC實現遠程桌面共享(支持Windows, Linux,...)http://easwy.com/blog/archives/linux-remote-desktop-by-vnc/# [?原理?]##--------------------------------------------VNC,全稱為Virtual Network Computing,使用?RFB(Remote FrameBuffer,遠程幀緩沖)協(xié)議來實現遠程控制另外一臺計算機。把鍵盤、鼠標動作發(fā)送到遠程計算機,并把遠程計算機的屏幕發(fā)回到本地VNC技術與平臺無關,VNC Viewer可以和VNC Server在不同的操作系統(tǒng)上VNC幾乎支持所有的操作系統(tǒng),也支持Java,甚至可以通過支持Java的瀏覽器來訪問VNC Server?
多個?VNC?客戶端可以同時連接到一個?VNC Server顯示編號(display number)來區(qū)分,每個vncserver服務監(jiān)聽3個端口,分別是:?
5800+顯示編號: VNC的httpd監(jiān)聽端口,如果VNC客戶端為IE,Firefox等非vncviewer時必須開放。5900+顯示編號: VNC服務端與客戶端通信的真正端口,必須無條件開放。6000+顯示編號: X監(jiān)聽端口,可選。?
首先需要配置?VNC?密碼,密碼在使用客戶端連接服務器時使用注意:VNC?密碼保存在用戶的主目錄中,每個用戶都可以設置自己的密碼因此,請使用你的用戶名(盡量不要使用root)運行下列命令:?
在啟動VNC server時,需要為?server指定一個display參數可以把display理解為一個桌面,每個用戶都可以有自己的桌面,在系統(tǒng)中,display號不能重復VNC server監(jiān)聽的端口從5801開始,display :1的監(jiān)聽5801,display :2監(jiān)聽5802,以此類推## [ /etc/sysconfig/vncservers ]# {{{#--------------------------------------------顯示編號、開放的端口分別由/etc/sysconfig/vncservers?文件中?VNCSERVERS?和?VNCSERVERARGS?控制VNCSERVERS的設置方式為VNCSERVERS="顯示編號1:用戶名1 …",如:VNCSERVERS="1:root 2:aiezu"VNCSERVERARGS?設置方式為VNCSERVERARGS[顯示編號1]="參數一 參數值一 參數二 參數值二?……"如VNCSERVERARGS[2]="-geometry 800x600 -nohttpd"?
VNCSERVERARGS的詳細參數有:-geometry ?????桌面分辨率,默認1024x768;-nohttpd ?????不監(jiān)聽HTTP端口(58xx端口);-nolisten tcp ???不監(jiān)聽X端口(60xx端口);-localhost ????只允許從本機訪問;-AlwaysShared ???默認只同時允許一個vncviewer連接,此參數允許同時連多個vncviewer;-SecurityTypes None?登錄不需要密碼認證VncAuth默認值,要密碼認證。# vi /etc/sysconfig/vncserver ?VNCSERVERS="1:root 2:oracle" ?VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp" ?VNCSERVERARGS[2]="-geometry 1024x768 -nolisten tcp"## [?設置用戶登錄密碼?/?生成用戶配置文件?]# {{{#--------------------------------------------設置VNC用戶密碼:# XXX?此步不可跳過放在后面操作,否則VNC Server將無法啟動# su - ink# vncpasswd Password:Verify:# su - root # vncpasswd Password: Verify:# [?啟動?vncserver ]#-------------------------------------------- ?# service vncserver start運行上面命令后,分別會在用戶根目錄($HOME)下的".vnc"文件夾下生成一系列文件其中passwd為vnc用戶密碼文件,由vncpasswd生成。xstartup為VNC客戶端連接時啟動的腳本啟動VNC server的命令是:vncserver <display># vncserverNew 'localhost.localdomain:1 (root)' desktop is localhost.localdomain:1Starting applications specified in /root/.vnc/xstartupLog file is /root/.vnc/localhost.localdomain:1.log#?
# [?自定義?xstartup ]##--------------------------------------------?
修改".vnc/xstartup"文件vncserver?默認使用的窗口管理器是?twm編輯這個文件:.vnc/xstartup#!/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" & --可以要可以不要#twm &# gnome-session &?
重啟?vncserver?使配置生效?
# }}}?
# [?配置防火墻?]##--------------------------------------------必須允許VNC的相關端口(58xx,59xx,60xx)vi /etc/sysconfig/iptables-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 5900:5903 -j ACCEPT允許其它機器訪問本機的5900到5903端口,這樣,display:1, display:2, display:3?用戶就可以連接到本機我的是?-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 5801:6003 -j ACCEPT安裝vnc時,要檢查一下iptables的設置,如果沒有開放vnc端口的訪問,是連接不上的,而且vnc客戶端會提示?failed connection:操作成功完成!(0)這樣的錯誤提示!#-------------------------------------------在windows下使用vncviewer+putty.exe通過ssh安全通道連接:打開putty,在左邊的"Category"中依次點"Connection"->"SSH"->"Tunnels"在"Source Port"文本框中輸入"5901","Destination"文本框中輸入"localhost:5901"點擊"Add,添加端口轉發(fā)。然后在putty左邊的"Category"下點"Session"輸入服務器的IP地址后,點"Open"按鈕,輸入密碼登陸后,既成功啟用了端口轉發(fā)接著在本機打開vncviewer輸入"127.0.0.1:5901"即可成功連接到遠程的5901端口在Linux下使用vncviewer+ssh安全通道連接:與④類似,在linux vnc客戶端shell下運行"ssh -L 5901:localhost:5901 vncserverhost"命令輸入用戶名密碼。即完成通過shh安全通道,將遠程的5901端口轉發(fā)到本機的5901端口然后在shell下運行"vncviewer 127.0.0.1:1"命令即可以連接到遠程的VNC Server#?
##--------------------------------------------查看VNC正在運行的顯示編號端口號?答:在Linux命令提示符下執(zhí)行"netstat -tlup|grep vnc",即可以查看到端口號,端口號后兩位即顯示編號如何關閉指定的顯示編號?答:vncserver -kill :number?即可以關閉指定的顯示編號和對應的端口號在通過VNC連接的圖形界面桌面啟動X應用時出現:"Error: Can't open display: :0.0"錯誤?答:請使用"echo $DISPLAY"命令查看"DISPLAY"壞境變量是否設置為":顯示編號:0",如:":1:0"如果不是此形式,啟動X應用時會出現此錯誤。此時可以通過"export DISPLAY=:1:0"設置正確的DISPLAY還有一種可能就是切換了用戶啟動X應用,當前用戶沒有權限使用X窗口,這時返回到啟用VNC的用戶運行"xhost +"允許其他用戶訪問此X窗口即可#如果配置完成后出現能夠通過鍵盤輸入數字,但是不能輸入字符的情況,就要看看你的客戶端的輸入法的設置是否和服務器端的設置是否一致。一般兩端都要是英文的!
解更多網絡知識關注:http://www.vecloud.com/