Sun Java System Calendar Server 6.3 管理指南

第 10 章 設定多重網域 Calendar Server 6.3 環境

本章包含如何首次設定多重網域環境的簡介材料和說明。


提示 –

多重網域環境中的網域以往稱為託管網域虛擬網域。本文件會交互使用這些詞彙。


本章涵蓋以下主題:

10.1 Calendar Server 6.3 中的多重網域簡介

Calendar Server 6.3 依預設具有多重網域,做為組織使用者和群組 LDAP 項目的唯一方式。換言之,在根節點下至少必須有一個網域,且所有使用者和群組項目都必須位於網域節點下。在舊版 Calendar Server 中,使用網域來包含使用者和群組項目是選擇性的。您可以在完全不使用網域的情況下執行 Calendar Server。但這種情況不再適用 Calendar Server 6.3;您至少必須有一個 (預設) 網域。

在多重網域環境中,各個網域共用同一 Calendar Server 系統實例,該實例允許多重網域存在於單台伺服器上。每個網域定義一個名稱空間,該名稱空間內所有使用者、群組和資源都是唯一的。每個網域還擁有您特別設定的一組屬性和喜好設定。網域的所有使用者和行事曆 ID 必須完全合格。

配置程式會要求您提供必要的資訊來設定預設網域。完成配置程式且建立所有需要的網域後,在將使用者和群組 LDAP 項目複製到所要的網域前,必須準備使用者和群組項目,方法是執行遷移公用程式,將非網域的使用者和群組 LDAP 項目轉換為網域可用的使用者和群組項目。要執行的公用程式為 csmigcsvdmig

若是從非網域版的 Calendar Server 升級到 Calendar Server 6.3,您有以下幾種選擇:

如果您先設定託管 (多重) 網域再升級到目前的版本,則不需改變使用者 ID 和行事曆 ID。但必須配置一些新的 ics.conf 參數,如下節所示:10.4 Calendar Server 版本 6.3 中多重網域模式的其他必要參數


注意 – 注意 –

如果您的網站目前被配置用於單一機器上 Calendar Server 的多個實例,或您已實作有限的虛擬網域模式,請連絡您的 Sun Microsystems 銷售客戶代表,以取得對您遷移需求的評估。


10.2 首次設定 Calendar Server 6.3 的多重網域環境

若要從非網域環境或單一網域環境移到多重網域環境,您可能需要先執行下列作業再建立任何 LDAP 項目:

  1. 執行資料庫遷移公用程式。

    若是從 Calendar Server 版本 5 遷移,請務必先執行 csmigcsvdmigcs5migratecsmigrate,再嘗試設定多重網域。如需有關這些遷移公用程式的更多資訊,請參閱第 3 章, Calendar Server 6.3 的資料庫遷移公用程式

  2. 如果您尚未執行 comm_dsseetup.pl,請執行此作業。

  3. 以擁有變更配置權限的管理員身份登入。

  4. 透過發出 stop-cal 指令來停止 Calendar Server 服務。

  5. 編輯 ics.conf 檔案以啟用多重網域。

    下表列出並說明了 ics.conf 檔案中用於多重網域支援的配置參數。如果此表中列出的任何參數不在 ics.conf 檔案中,請將該參數及其關聯值增加至該檔案,然後重新啟動 Calendar Server 以使這些值生效。

    參數 

    說明 

    service.virtualdomain.support

    啟用 ("yes") 多重網域支援。預設為 "yes"


    備註 –

    請勿將此參數變更為 “no”,即使您將在單一網域中操作也如此。目前版本的 Calendar Server 需要將其設定為 “yes”


    local.schemaversion

    指定 LDAP 模式的版本:

    service.dcroot

    對於多重網域支援,此參數會取代 local.ugldapbasednlocal.authldapbasedn

    如果 local.schemaversion="1"local.schemaversion="1.5" ,請指定 DC 樹狀結構 (包含所有網域) 的根尾碼。

    例如: "o=internet"

    service.schema2root

    如果 local.schemaversion="2",請指定組織樹狀結構 (包含所有網域) 的根尾碼。

    例如: "o=sesta.com"

    service.defaultdomain

    指定該 Calendar Server 實例的預設網域。登入期間未提供網域名稱時使用。 

    例如: "red.sesta.com"

    service.loginseparator

    指定 Calendar Server 剖析 "userid[login-separator]domain" 時用於 login-separator 的分隔符號字串。Calendar Server 會依次嘗試每個分隔字元。

    預設為 "@+"

    service.siteadmin.userid

    指定網域管理員的使用者 ID。 

    例如: DomainAdmin@sesta.com

    service.virtualdomain.scope

    控制交叉網域搜尋:

    • "primary" 僅在使用者登入的網域中搜尋。

    • "select" 在任何允許進行這種搜尋的網域中搜尋。

      預設為 "select"

    local.domain.language

    指定網域語言。預設為 "en" (英文)。

  6. 建立預設網域項目。

    對於 Schema 2,預設網域由 Delegated Administrator 配置程式 (config-commda) 建立。

    對於 Schema 1,依據您的 DC 樹狀結構,在 DC 樹狀結構根尾碼下的一個或多個層級建立預設網域 (多重網域中的一個)。例如,如果根尾碼為 o=internet,則下一層節點可能是 com,如10.3.3 Calendar Server 版本 6.3 的 Sun LDAP Schema 1所示。但是,您的預設網域為低一個層級的節點,例如 sesta.com。使用 csdomain 建立 DC 樹狀結構節點,如以下範例所示︰

    csdomain -n o=com,dc=com,o=internet create comcsdomain
        -n o=sesta.com,dc=sesta,dc=com,o=internet create sesta.com
  7. 為預設網域項目啟用行事曆功能服務。

    對於 Schema 1:使用 csattribute 在 LDAP 中將 icsCalendarDomain 物件類別增加至 o=sesta.com 網域項目。

    對於 Schema 2:配置 Delegated Administrator 後,修改預設網域 (由 Delegated Administrator 配置程式建立) 以增加行事曆 (和郵件) 服務。在以下範例中,行事曆服務和郵件服務均被增加至網域:

    commadmin domain modify -D admin -w passwd -d defaultdomain -S cal,mail

  8. 在系統上依據所需數量建立網域。

    如需有關如何在 Schema 2 模式中增加網域的說明,請參閱13.2 建立新的 Calendar Server 網域

    若要建立 Schema 1 網域,請使用 csdomain create,如以下範例所示:

    csdomain -n o=red.sesta.com,dc=red,dc=sesta,dc=com 
       create red.sesta.com
  9. 為新網域增加行事曆 (及郵件,如果需要) 服務。

  10. 如果尚不存在 calmaster 網站管理員使用者,請建立該使用者。

    對於 Schema 2,使用 commadmin user create 指令建立 calmaster 使用者,如以下範例所示:

    commadmin user create -D admin -w passwd -F Calendar
        -L Administrator -l calmaster -W calmasterpasswd -d sesta.com -S cal

    備註 –

    若要使用 Delegated Administrator 主控台的 [Create New User (建立新使用者)] 精靈建立 calmaster,請參閱 Delegated Administrator 線上說明。


    對於 Schema 1,使用 csuser 在組織樹狀結構上建立 calmaster 使用者,如以下範例所示:

    csuser o=sesta.com,o=rootsuffix -d sesta.com
        -g Calendar -s Administrator -ycalmasterpasswordcreate calmaster
  11. 如果 calmaster 網站管理員使用者已存在於以前的非網域環境 (Schema 1) 中,請執行以下步驟,以將其移至預設網域︰

    1. 執行現有 calmaster LDAP 項目的 LDAP 傾印,並將其儲存至暫存檔,例如 /tmp/calmaster.ldif

    2. 使用 ldapdelete 刪除組織樹狀結構根尾碼上的現有 calmaster LDAP 項目,如下所示:

      #ldapdelete -D "cn=Directory Manager" -w password 
         uid=calmaster,ou=People,o=rootsuffix
      
    3. 修改行事曆管理員的群組項目 (更新 uniqueMember 屬性),以反映所做的變更,如以下 LDIF 範例所示:


      dn:cn=Calendar Administrators,ou=Groups,o=rootsuffix
      changetype:modifyreplace:uniqueMember 
      uniqueMember:uid=calmaster,ou=People,o=sesta.com,o=rootsuffix
      

      不需要將管理員的群組項目移至網域。

  12. 更新您擁有的所有管理程序檔,以使 WCAP 指令中的所有行事曆 ID (calid) 完全合格。亦即每個 calid 現在均必須包含網域名稱。例如:jsmith@sesta.com

10.3 Calendar Server 6.3 中的多重網域功能如何影響模式選擇

本小節包含一些概念資訊,可讓您更加瞭解多重網域的實作程序,以及多重網域與選擇模式版本的關係。

本小節包含以下主題:

10.3.1 Calendar Server 版本 6.3 的多重網域及模式選擇實作簡介

透過多重網域安裝,LDAP 目錄組織為各個不同的非交叉區段,每個區段代表網域名稱系統 (Domain Name System, DNS) 中的一個網域。使用者、群組和資源唯一 ID 在每個網域中都是唯一的。例如,每個網域中只可以有一個 uidjdoe 的使用者。辨別名稱 (distinguished name, DN) 是完全合格的網域名稱。

Calendar Server 支援以下兩個 LDAP 目錄模式版本:Schema 1 和 Schema 2。當您執行 Directory Server 設定程序檔 (comm_dssetup.pl) 時,您可以選擇 LDAP Schema 1 或 LDAP Schema 2。除非有使用 Schema 1 的特殊需要,否則請使用 Schema 2。

以下是使用 Schema 1 的兩個原因:

10.3.2 Calendar Server 版本 6.3 的 Sun LDAP Schema 2

下圖顯示了使用 Sun LDAP Schema 2 的多重網域安裝之 LDAP 目錄組織。

圖 10–1 使用 LDAP Schema 2 的 LDAP 目錄組織

此圖顯示了僅使用單一樹狀結構和組織樹狀結構,而未使用任何 DC 樹狀結構的純 Schema 2 環境的範例。

LDAP Schema 2 使用平面 LDAP 目錄組織,亦即所有網域均位於同一層級,而不是巢式的。對於多重網域安裝,第一層級項目 (如圖中的 varriusDomainsestaDomainsiroeDomain) 在目錄組織中必須平行。這些項目不可被嵌套。

如果您要使用 Access Manager 功能 (例如單次登入 (single sign-on, SSO)),或者您要使用 Delegated Administrator 佈建使用者,則需要使用 Schema 2。但是,存在一種混合變化,同時使用 DC 樹狀結構和組織樹狀結構的雙樹狀結構模式 (非常類似於 Schema 1) 會使用 Schema 2 物件類別和屬性。此為 Schema 2 相容性模式,在配置程式 (csconfigurator.sh) 中稱為 Schema 1.5。

10.3.3 Calendar Server 版本 6.3 的 Sun LDAP Schema 1

下圖顯示了使用 Sun LDAP Schema 1 的多重網域安裝之 LDAP 目錄組織範例。

該組織包含用於網域管理的兩個樹狀結構:

圖 10–2 使用 LDAP Schema 1 的 LDAP 目錄組織

此圖顯示了雙樹狀結構 (Schema 1) 的 LDAP 組織範例。

DC 樹狀結構 (節點) 類似於 DNS,可在給定網域名稱的情況下確定網域項目。inetdomainbasedn LDAP 屬性指向基底 DN,基底 DN 是 組織樹狀結構 (節點) 中網域使用者、資源和群組的根。在每個網域內,Calendar Server 使用者、資源和群組的識別碼都必須是唯一的。


備註 –

如果先前的 LDAP 配置不含 DC 樹狀結構,則若要使用 Schema 1 模式或 Schema 2 相容性模式,您必須依照10.2 首次設定 Calendar Server 6.3 的多重網域環境的說明自行建立 DC 樹狀結構節點。否則將使用 Schema 2 模式。


在使用 LDAP Schema 1 的多重網域安裝中,目錄搜尋需要以下兩個步驟來尋找項目:

  1. 在 DC 樹狀結構中,搜尋作業會找到包含指向組織樹狀結構中網域基底 DN (inetDomainBaseDN 屬性) 之 DN 值的網域項目。

  2. 在組織樹狀結構中,搜尋作業會找到網域項目,然後從該項目的基底 DN 開始搜尋,以找到該網域中的相應使用者、資源或群組。

10.4 Calendar Server 版本 6.3 中多重網域模式的其他必要參數

從 Calendar Server 6 開始,每個部署皆是針對多重網域而配置。若是從舊版 Calendar Server 升級,且未配置託管 (多重) 網域,則必須為 schema 模式增加以下參數:

10.4.1 Calendar Server 版本 6.3 增加的 Schema 1 參數

以下清單中的參數若不存在,則必須增加至配置檔 (ics.conf) 中。

service.dcroot

service.defaultdomain

service.loginseparator

service.virtualdomain.support 設為 "yes"

service.virtualdomain.scope

service.siteadmin.userid

service.siteadmin.cred

local.schemaversion 設定為 "1"

10.4.2 Calendar Server 版本 6.3 增加的 Schema 2 參數

以下清單中的參數若不存在,則必須增加至配置檔 (ics.conf) 中。

service.dcroot

service.defaultdomain

service.loginseparator

service.virtualdomain.support 設為 "yes"

service.virtualdomain.scope

service.siteadmin.userid

service.siteadmin.cred

local.schemaversion 設定為 "2"

service.schema2root

10.5 Calendar Server 6.3 登入

對於多重網域安裝,網域中的每位使用者都必須具有唯一的使用者 ID (user ID, uid)。請使用以下格式登入 Calendar Server:

userid[@domain-name]

如果省略 domain-name,則 Calendar Server 會使用由 ics.conf 檔案中 service.defaultdomain 參數指定的預設網域名稱。因此,如果使用者要登入預設網域,僅需要 userid

如果自動佈建已啟用,Calendar Server 會在使用者首次登入時為其建立一個預設行事曆。如需有關建立行事曆的資訊,請參閱第 15 章, 管理行事曆

登入權限以 icsStatusicsAllowedServiceAccess 屬性為基礎。如需更多資訊,請參閱D.9.3 LDAP 屬性和特性名稱

10.6 從非網域環境遷移至 Calendar Server 6.3

Calendar Server 版本 5.0 及更早的版本沒有網域。因此,使用者和行事曆 ID 不需要完全合格。換言之,它們不需要網域名稱是 ID (例如 jdoe@domain.com) 的組成部分。如果在安裝目前版本的 Calendar Server 之前,uidcalid 不是完全合格的,則不必變更資料。系統會將發現的任何不合格 uidcalid 視為預設網域的一部分。但若要實作多重網域,則必須遷移 LDAP 和元件資料庫以指出每個使用者所屬的網域。

此外,您可能需要以其他方式遷移資料。有數個遷移程式。請檢查第 3 章, Calendar Server 6.3 的資料庫遷移公用程式中的遷移資訊。