RedHat Linux 5企業版開啓遠程桌面

環境:RedHat Linux 5企業版。 不同版本 修改的配置文件不同(老版本可能在/etc/X11/xdm/Xaccess 和/etc/X11/gdm/gdm.conf)

使用SSH連接遠程通過字符界面來操作Linux,但是對於經常使用圖形人來說還是用桌面比較方便。目前有兩種比較流行的方式:XDM(X display manager)方案和VNC方案, 兩者最大的區別就是XDM需要使用udp協議,也就是說一般在局域網使用,如果放到廣域網比較麻煩(好像需要映射6000-6100端口,具體忘記了),而VNC則沒有這個問題。

 

XDM解決方案:

一, 有關配置文件說明
1,/usr/share/gdm/defaults.conf GNOME桌面管理默認配置文件
2,/etc/inittab  init進程配置文件
3,/etc/gdm/custom.conf  GNOME桌面自定義配置文件
二, 修改配置 

1、需要修改/usr/share/gdm/defaults.conf文件裏面有以下幾行(默認是隻讀,修改後別忘了重新設置爲只讀):
[xdmcp]
Enable=true #開啓遠程桌面
DisplaysPerHost=10 #指連接數量還是超時時間 忘記了
Port=177 #端口

[security]
AllowRoot=true
AllowRemoteRoot=true #允許root用戶登錄 

2.修改/etc/gdm/custom.conf,找到“xdmcp”,在該段下面加入
Enable=true
Port=177

3.修改/etc/inittab,找到x:5:respawn:/etc/X11/prefdm,修改爲(最好註釋掉,然後重新寫一下,但在實際操作中發現 不修改也可以使用)
 x:5:respawn:/usr/sbin/gdm #有些是/usr/bin/gdm

 

4.檢查防火牆是否開放177端口, vi /etc/sysconfig/iptables(-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 177 -j ACCEPT)最好使用圖形配置。讓後重啓gdm(gdm -restart),但在實際操作中發現 不修改/etc/inittab文件也可以使用)

 

5.在windows下安裝Xmanager新建一個XDMCP進行遠程控制。

 


VNC解決方案:

VNCSERVER部分轉自:http://bbs.hualongxiang.com/read-htm-tid-6379080.html
一, 確認及安裝VNCSERVER。

1,首先確認你服務器是否配置了VNCSERVER,可以在命令行下敲入以下命令查看:

[root@localhost: ~]#rpm -qa |grep vnc

vnc-server-4.1.2-14.el5    #返回VNCSEVER服務器端版本說明你已經安裝了VNCSERVER。

2,如果沒有安裝VNCSEVER,那麼從光盤找到安裝包進行安裝。

首先將光盤掛載(也叫解壓)到某個目錄這裏是在/var/ftp/pub/下面建立了rhel5-64目錄

mount -o loop rhel-server-5.3-x86_64-dvd.iso /var/ftp/pub/rhel5-64/

然後在/var/ftp/pub/rhel5-64/Server目錄下找到 vnc-server-4.1.2-14.el5.x86_64.rpm安裝包,使用RPM命令直接安裝;

rpm -ivh vnc-server-4.1.2-14.el5.x86_64.rpm


二,開始配置VNCSERVER

1,啓動VNCSERVER,第一次啓動VNCSERVER會提示輸入密碼,這裏分爲管理員賬戶及普通賬戶,啓動方式略有所不同。

管理員:

[root@localhost /]# vncserver

You will require a password to access your desktops.

Password: 123456            #輸入vnc 連接密碼

Verify: 123456                 #確認vnc密碼

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 /]#su ceboy    #ceboy 是用戶名
[ceboy@localhost /]$ vncserver

You will require a password to access your desktops.

Password: 123456            #輸入vnc 連接密碼

Verify: 123456                 #確認vnc密碼

xauth: creating new authority file /home/ceboy/.Xauthority

New ‘localhost.localdomain:2 (ceboy)’ desktop is localhost.localdomain:2

Creating default startup script /home/ceboy/.vnc/xstartup
Starting applications specified in /home/ceboy/.vnc/xstartup
Log file is /home/ceboy/.vnc/localhost.localdomain:2.log


#這裏要注意:每個用戶都可以啓動自己的VNCSERVER遠程桌面,同時每個用戶可以啓動多個VNCSERVER遠程桌面,它們用ip加端口號:ip:1、ip:2、ip:3 來標識、區分,使用同一端口會使另外登錄的用戶自動退出。另,VNCSERVER的大部分配置文件及日誌文件都在用戶home目錄下.vnc目錄下。

用戶可以自定義啓動號碼如:

[ceboy@localhost /]$ vncserver :2        #注意:2前面一定要有空格。
A VNC server is already running as :2

三,相關桌面配置,RedHat Linux支持兩種圖形模式:KDE模式和gnome模式。

1,你的RH使用的什麼圖形模式這個一般只有登錄到圖形界面查看一下才能知道,或者通過ps -A命令列出所有當前運行的程序,看看有沒有KDE或者gnome字樣來判斷一下。

如果你是gnome桌面,那麼你需要修改/root/.vnc/xstartup的配置文件。

[root@localhost .vnc]# vi 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 80×24+10+10 -ls -title “$VNCDESKTOP Desktop” &

gnome-session gnome           #添加這一句是連接時使用gnome 桌面環境

twm &

設置修改完畢最好是重啓一次系統,否則設置不會生效。我採用的方法是殺死VNCSERVER進程再重運行VNCSERVER。

[root@localhost .vnc]#vncserver -kill :1      #這裏你啓動vncserver時是什麼端口號要對應上。
[root@localhost .vnc]#vncserver :1           #重啓VNCSERVER,注意:1前面一定要有空格。

2,設置用戶信息及分辨率。

[root@localhost: ~]#vi /etc/sysconfig/vncservers

# The VNCSERVERS variable is a list of display:user pairs.

#

# Uncomment the lines below to start a VNC server on display :2

# as my ‘myusername’ (adjust this to your own). You will also

# need to set a VNC password; run ‘man vncpasswd’ to see how

# to do that.

#

# DO NOT RUN THIS SERVICE if your local area network is

# untrusted! For a secure way of using VNC, see

# <URL:http://www.uk.research.att.com/archive/vnc/sshvnc.html >.

# Use “-nolisten tcp” to prevent X connections to your VNC server via TCP.

# Use “-nohttpd” to prevent web-based VNC clients connecting.

# Use “-localhost” to prevent remote VNC clients connecting except when

# doing so through a secure tunnel. See the “-via” option in the

# `man vncviewer’ manual page.

VNCSERVERS=”1:root 2:ceboy”            #此處添加用戶,一般只添加一個1:root也就行了。

VNCSERVERARGS[1]=”-geometry 800×600 -nolisten tcp -nohttpd -localhost”
VNCSERVERARGS[2]=”-geometry 1024×768 -nolisten tcp -nohttpd -localhost”


#注意:上面是分別設置的root和ceboy兩個用戶的分辨率,注意是用端口號區分的。

另外也可以通過命令行臨時修改分辨率及色深,這種方式重啓後就會丟失,這裏暫時用不到,命令如下:

[root@localhost: ~]#vncserver -geometry 800×600        #設置vncserver的分辨率   

[root@localhost: ~]#vncserver -depth 16           #設置vncserver的色深


到這裏VNCSERVER服務器端就配置完成了。

四,客戶端連接及使用。

1,訪問方式
a、在linux下,運行vncviewer命令即可,服務器地址的寫法形如192.168.1.11:1
b、在windows下,運行windows版本的vncviewer即可,用法與linux下相近。
c、用瀏覽器(平臺無關),作爲java applet來實現,以形如http://192.168.1.11:5801 的方式來啓動 (vnc 端口從5800 開始依次類推,一般會是5800,5900)

以下爲一些常識:

2,修改密碼

運行vncpasswd即可

3,停止vncserver

#vncserver -kill :1
#vncserver -kill :2

注意到vncserver只能由啓動它的用戶來關閉,即時是root也不能關閉其它用戶開啓的vncserver,只能用kill命令暴力殺死進程。

4,穩定性設置

vncserver默認在多個客戶機連接同一個vncserver的顯示端口時,vncserver端口舊連接,而爲新連接服務,可通過-dontdisconnect拒絕新連接請求而保持舊的連接。

5,同一個顯示器可以連接多個客戶機

#vncserver -alwaysshared

6,重啓服務

service vncserver restart

7,讓系統啓動時自動啓動VNCSERVER。

使用VNC連接登錄到RedHat Linux圖形界面,點擊“系統”——“管理”——“服務器設置”——“服務”,在“後臺服務”中找到VNCSERVER後勾選它,點擊保存即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章