NIS 到 LDAP 轉換服務(N2L 服務)使用 NIS 到 LDAP 轉換守護進程來替換 NIS 主伺服器上現有的 NIS 守護進程。N2L 服務還在該伺服器上建立一個 NIS 到 LDAP 的轉換對應檔。該對應檔指定 NIS 對應項和 LDAP 中目錄資訊樹 (Directory Information Tree, DIT) 等效項之間的映射。已經進行這種轉換的 NIS 主伺服器稱為 N2L 伺服器。從屬伺服器上沒有 NISLDAPmapping 檔案,因此它們繼續以通常的方式工作。從屬伺服器定期從 N2L 伺服器更新其資料,就好像 N2L 伺服器是常規的 NIS 主伺服器一樣。
N2L 服務的行為由 ypserv 和 NISLDAPmapping 設定檔控制。指令碼 inityp2l 可協助對這些設定檔進行初始設定。一旦建立了 N2L 伺服器,就可以通過直接編輯這些設定檔來維護 N2L。
N2L 服務支援以下功能:
在任何名稱系統中,僅有一個資訊源可以是權威來源。在傳統的 NIS 中,NIS 源是權威資訊。在使用 N2L 服務時,權威資料來源自 LDAP 目錄。如第 9 章,LDAP 的基本組件和概念(概述)中所述,該目錄是通過使用目錄管理工具進行管理的。
NIS 源僅保留用於緊急備份或卸載。在使用 N2L 服務之後,可以逐步淘汰 NIS 客戶機。最終,所有的 NIS 客戶機都會被 Solaris LDAP 名稱服務客戶機所取代。
以下各小節中提供了其他概述資訊:
NIS 到 LDAP 轉換的目標使用者
不應使用 NIS 到 LDAP 轉換服務的情況
NIS 到 LDAP 轉換服務對使用者造成的影響
NIS 到 LDAP 轉換術語
NIS 到 LDAP 轉換命令、檔案和映射
支援的標準映射
NIS 到 LDAP 轉換工具和服務管理工具
NIS 和 LDAP 服務由服務管理工具管理。 可以使用 svcadm 命令對這些服務執行啟用、禁用或重新啟動等管理操作。使用 svcs 命令可以查詢服務的狀態。有關使用 SMF 對 LDAP 和 NIS 進行管理的更多資訊,請參見LDAP 和服務管理工具和NIS 和服務管理工具。有關 SMF 的概述,請參閱System Administration Guide: Basic Administration中的“ Managing Services (Overview)”。另請參閱 svcadm(1M) 和 svcs(1) 手冊頁以瞭解更多詳細資料。
NIS 到 LDAP 轉換的目標使用者
您需要熟悉 NIS 和 LDAP 概念、術語和 ID 才能執行本章中的過程。有關 NIS 和 LDAP 名稱服務的更多資訊,請參見本書中的以下兩章:
第 4 章,網路資訊服務 (Network Information Service, NIS)(概述)(提供 NIS 的概述)
第 8 章,LDAP 名稱服務介紹(概述/參考)(提供 LDAP 的概述)
不應使用 NIS 到 LDAP 轉換服務的情況
請勿在以下情況下使用 N2L 服務:
不打算在 NIS 客戶機和 LDAP 名稱服務客戶機之間共用資料。
在這種情況下,N2L 伺服器將充當極其複雜的 NIS 主伺服器。
NIS 對應由修改 NIS 源檔案的工具(而非 yppasswd)來管理。
從 DIT 映射重建 NIS 源是一項不精確的任務,該任務需要手動檢查產生的映射。一旦使用了 N2L 服務,提供的 NIS 源的重建功能就僅用於卸載 NIS 或恢複為 NIS。
沒有 NIS 客戶機
在這種情況下,可以使用 Solaris LDAP 名稱服務客戶機及其相應工具。
NIS 到 LDAP 轉換服務對使用者造成的影響
僅安裝與 N2L 服務相關的檔案不會更改 Server for NIS的預設行為。在安裝時,管理員將會看到 NIS 手冊頁發生了一些變化,而且伺服器上增加了 N2L 協助指令碼 inityp2l 和 ypmap2src。但是,只要在 Server for NIS上沒有運行inityp2l 或沒有手動建立 N2L 設定檔,NIS 組件就會繼續在傳統的 NIS 模式下啟動並像通常那樣工作。
運行 inityp2l 之後,使用者會看到伺服器和客戶機行為發生了一些變化。以下是 NIS 和 LDAP 使用者類型的列表,其中說明了在部署 N2L 服務之後每種類型的使用者應當注意到的情況。
使用者類型 |
N2L 服務的影響 |
NIS 主伺服器管理員 |
NIS 主伺服器轉換為 N2L 伺服器。NISLDAPmapping 和 ypserv 設定檔將會安裝在 N2L 伺服器上。建立 N2L 伺服器之後,可以使用 LDAP 命令來管理名稱資訊。 |
NIS 從屬伺服器管理員 |
進行 N2L 轉換之後,NIS 從屬伺服器繼續以通常的方式運行 NIS。當 ypmake 調用 yppush 時,N2L 伺服器會將已更新的 NIS 對應推送到從屬伺服器。請參見 ypmake(1M) 手冊頁。 |
NIS 客戶機 |
NIS 讀取操作與傳統的 NIS 沒有區別。當 Solaris LDAP 名稱服務客戶機更改 DIT 中的資訊時,這些資訊會複製到 NIS 對應中。複製操作是在可配置的逾時時間到期之後完成的。這類行為與串連到 NIS 從屬伺服器的常規 NIS 客戶機的行為相似。 如果 N2L 伺服器無法綁定到 LDAP 伺服器進行讀取,則 N2L 伺服器將從其自身的快取複本中返回資訊。或者,N2L 伺服器還可能會返回內部伺服器錯誤。可以將 N2L 伺服器配置為按照上述任一方式響應。有關更多詳細資料,請參見 ypserv(1M) 手冊頁。 |
所有使用者 |
當 NIS 客戶機請求更改口令時,所做的更改將立即顯示在 N2L 主伺服器和本地 LDAP 客戶機上。 如果嘗試在 NIS 客戶機上更改口令,而且 LDAP 伺服器不可用,則更改將被拒絕,N2L 伺服器將返回內部伺服器錯誤。此行為可防止將不正確的資訊寫入快取中。 |
NIS 到 LDAP 轉換術語
以下是與實現 N2L 服務相關的術語。
表 15–1 與 N2L 轉換相關的術語
術語 |
說明 |
N2L configuration file(N2L 設定檔) |
ypserv 守護進程用來在 N2L 模式下啟動主伺服器的/var/yp/NISLDAPmapping 檔案和 /var/yp/ypserv 檔案。有關詳細訊息,請參見 NISLDAPmapping(4) 和 ypserv(4) 手冊頁。 |
map(映射) |
在 N2L 服務的上下文中,術語“映射”的用法有兩種:
|
mapping(映射) |
NIS 項與 LDAP DIT 項之間的相互轉換過程。 |
mapping file(對應檔) |
用來指定如何映射 NIS 檔案和 LDAP 檔案之間各項的 NISLDAPmapping 檔案。 |
standard map(標準映射) |
無需手動修改對應檔即可由 N2L 服務支援的常用 NIS 對應。支援的標準映射中提供了支援的標準映射的列表。 |
nonstandard map(非標準映射) |
自訂為使用 NIS 和 LDAP DIT 之間映射(RFC 2307 或其後續版本中標識的映射除外)的標準 NIS 對應。 |
custom map(自訂映射) |
不是標準映射的任何映射,從 NIS 轉換至 LDAP 時,需要手動修改對應檔。 |
LDAP client(LDAP 客戶機) |
對任何 LDAP 伺服器執行讀寫操作的任何傳統的 LDAP 客戶機。傳統的 LDAP 客戶機是對任何 LDAP 伺服器執行讀寫操作的系統。Solaris LDAP 名稱服務客戶機可處理部分自訂的名稱資訊。 |
LDAP naming services client(LDAP 名稱服務客戶機) |
用來處理部分自訂名稱資訊的 Solaris LDAP 客戶機。 |
N2L server(N2L 伺服器) |
已使用 N2L 服務重新設定為 N2L 伺服器的 NIS 主伺服器。重新設定過程包括替換 NIS 守護進程和添加新設定檔。 |
NIS 到 LDAP 轉換命令、檔案和映射
共有兩個公用程式、兩個設定檔和一個映射與 N2L 轉換相關聯。
表 15–2 N2L 命令、檔案和映射的說明
命令/檔案/映射 |
說明 |
/usr/lib/netsvc/yp/inityp2l |
協助建立 NISLDAPmapping 和 ypserv 設定檔的公用程式。此公用程式不是用來管理這些檔案的通用工具。進階使用者可通過使用文字編輯器檢查和自訂 inityp2l 輸出來維護 N2L 設定檔或建立自訂映射。請參見 inityp2l(1M) 手冊頁。 |
/usr/lib/netsvc/yp/ypmap2src |
用來將標準 NIS 對應轉換為近似等效的 NIS 源檔案的公用程式。ypmap2src 主要用於將 N2L 轉換伺服器轉換為傳統的 NIS。請參見 ypmap2src(1M) 手冊頁。 |
/var/yp/NISLDAPmapping |
用來指定 NIS 對應項和 LDAP 中目錄資訊樹 (Directory Information Tree, DIT) 等效項之間映射的設定檔。請參見NISLDAPmapping(4) 手冊頁。 |
/var/yp/ypserv |
用來為 NIS 到 LDAP 轉換守護進程指定配置資訊的檔案。請參見ypserv(4) 手冊頁。 |
ageing.byname |
yppasswdd 使用的一種映射,在實現 NIS 到 LDAP 轉換時,用於在 DIT 中讀寫口令生命期資訊。 |
支援的標準映射
預設情況下,N2L 服務支援以下列出的映射與 RFC 2307 或其後續版本中 LDAP 各項之間的映射。這些標準映射不需要手動修改對應檔。系統上任何未列在以下列表中的映射都被視為自訂映射,需要手動進行修改。
N2L 服務還支援對 auto.* 映射進行自動對應。但是,由於大多數 auto.* 檔案名稱和內容都特定於各自的網路設定,因此該列表並未指定這些檔案,但作為標準映射支援的 auto.home 和 auto.master 映射除外。
audit_userauth_attrauto.homeauto.masterbootparamsethers.byaddr ethers.bynameexec_attrgroup.bygid group.byname group.adjunct.bynamehosts.byaddr hosts.bynameipnodes.byaddr ipnodes.bynamemail.byaddr mail.aliasesnetgroup netgroup.byprojid netgroup.byuser netgroup.byhostnetid.bynamenetmasks.byaddrnetworks.byaddr networks.bynamepasswd.byname passwd.byuid passwd.adjunct.bynameprinters.conf.bynameprof_attrproject.byname project.byprojectidprotocols.byname protocols.bynumberpublickey.bynamerpc.bynumberservices.byname services.byservicenametimezone.bynameuser_attr |
在 NIS 到 LDAP 轉換過程中,yppasswdd 守護進程使用 N2L 特定的映射 ageing.byname 在 DIT 中讀寫口令生命期資訊。如果沒有使用口令生命期,則會忽略 ageing.byname 映射。