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 項目轉換為網域可用的使用者和群組項目。要執行的公用程式為 csmig 和 csvdmig。

若是從非網域版的 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 遷移,請務必先執行 csmig、csvdmig、cs5migrate 和 csmigrate,再嘗試設定多重網域。如需有關這些遷移公用程式的更多資訊,請參閱第 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.ugldapbasedn 和 local.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 在每個網域中都是唯一的。例如,每個網域中只可以有一個 uid 為 jdoe 的使用者。辨別名稱 (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 目錄組織,亦即所有網域均位於同一層級,而不是巢式的。對於多重網域安裝,第一層級項目 (如圖中的 varriusDomain、sestaDomain 和 siroeDomain) 在目錄組織中必須平行。這些項目不可被嵌套。

如果您要使用 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 章, 管理行事曆。

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

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

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

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