2007年10月17日 星期三

Fedora Core 7 上 Xdmcp 服務的使用方法與原理

XDMCP(X Display Manager Control Protocol) 就是負責監聽來自網路上面對於 xdm 的要求

原理:請參閱『鳥哥的私房菜』網站(http://linux.vbird.org/linux_server/0310telnetssh.php#xdmcp)。請自行參考瞭解。

但因為上述網站針對的是 CentOS 3, Red hat ELAS 3 以前的使用方式。在 FC7, RELS 5, CentOS 5 以後針對 gdm, Kdm 作了一些設定上的調整,這包含的放置目錄與檔案名稱的調整。這裡我僅針對 fc7 上的 gdm 來作說明

  1. 啟動 Xdm,修改 /etc/X11/xdm/xdm-config 這個檔案, 找到底下這一行(一般在最後一行):
    # vi /etc/X11/xdm/xdm-config


    DisplayManager.requestPort: 0
    改為
    !DisplayManager.requestPort: 0
  2. 讓 client 可以透過 X 來登入系統!與權限有關的設定

    # vi /etc/X11/xdm/Xaccess

    *
    將裡面有一行*號被註解掉的,將註解取消。表示『不論來自哪裡,我都接受X登入』
  3. 設定 gdm 參數檔

    # init 5 ( or startx) (開啟一個終端機)
    # gdmsetup

    (於登入視窗偏好設定內)
    點選『遠端』,於『風格』欄位選擇「當成本地端」
    點選『安全性』,於『安全性』項下勾選「允許遠端使用管理者權限登入」-->若不要以root登入者本項不勾選。
    按下「關閉」

    上述動作也可以透過編輯 /etc/gdm/customer.conf 這個檔案來調整設定
    # vi /etc/gdm/customer.conf

    [daemon]
    RemoteGreeter=/usr/libexec/gdmgreeter

    [security]
    AllowRemoteRoot=true
    #允許root遠端登入 DisallowTCP=false #允許使用tcp 6000連線

    [xdmcp] Enable=true #允許使用xdmcp連線 [gui]

    [greeter]

    [chooser]

    [debug] Enable=true
    #開啟錯誤記錄登入至 /var/log/Xorg.0.log 以及 /var/messages
  4. 重新啟動 gdm (只要 gdm 參數設定檔有修改調整都必須執行本作業才會生效)
    # gdm-restart

    (檢查是否有177port在聽)
    # netstat -tlunp grep 177
    ... udp 0 0 0.0.0.0:177 0.0.0.0:* 2977/gdm-binary

Red hat Enterprise Linux Advanced Server 4.4 上 Xdmcp 服務的使用方法與原理

XDMCP(X Display Manager Control Protocol) 就是負責監聽來自網路上面對於 xdm 的要求
原理:請參閱『鳥哥的私房菜』網站http://linux.vbird.org/linux_server/0310telnetssh.php#xdmcp)。請自行參考瞭解。
但因為不同的distributior以及同一distributor不同版本也會有不同,以下是針對 Red hat Enterprise Linux AS 4.4 上的設定。(一般來說僅是檔案放置路徑不同,檔案名稱應該是一致的)不論是採用 gdm, Kdm(KDE)都可以找到相對應的檔案。這裡我僅針對 gdm 來作說明

  1. 啟動 Xdm,修改 /etc/X11/xdm/xdm-config 這個檔案, 找到底下這一行(一般在最後一行):


    DisplayManager.requestPort: 0
    改為
    !DisplayManager.requestPort: 0
  2. 讓 client 可以透過 X 來登入系統!與權限有關的設定

    #vi /etc/X11/xdm/Xaccess
    *
    將裡面有一行*號被註解掉的,將註解取消。表示『不論來自哪裡,我都接受X登入』
  3. 設定 gdm 參數檔 # init 5 ( or startx)

    (開啟一個終端機)
    #gdmsetup
    (於登入視窗偏好設定內)
    點選『遠端』,於『風格』欄位選擇「當成本地端」
    點選『安全性』,於『安全性』項下勾選「允許遠端使用管理者權限登入」-->若不要以root登入者本項不勾選。
    按下「關閉」

    上述動作也可以透過編輯 /etc/X11/gdm/gdm.conf 這個檔案來調整設定

    # vi /etc/X11/gdm/gdm.conf

    以下是 /etc/X11/gdm/gdm.conf 檔案應該設定的內容

    [daemon]
    RemoteGreeter=/usr/libexec/gdmgreeter

    [security]
    AllowRemoteRoot=true #允許root遠端登入 DisallowTCP=false #允許使用tcp 6000連線

    [xdmcp] Enable=true #允許使用xdmcp連線 [gui]

    [greeter]

    [chooser]

    [debug]
    Enable=true
    #開啟錯誤記錄登入至 /var/log/Xorg.0.log 以及 /var/messages
    #若執行有錯誤才需要啟動否則可以設定為 false
  4. 重新啟動 gdm (只要 gdm 參數設定檔有修改調整都必須執行本作業才會生效)

    # gdm-restart (檢查是否有177port在聽)

    # netstat -tlunp grep 177
    ... udp 0 0 0.0.0.0:177 0.0.0.0:* 2977/gdm-binary