Solaris のシステム管理 (ネーミングとディレクトリサービス : DNS、NIS、LDAP 編)

データ生成の計画

LDAP ネームサービスデータを使用して、LDAP サーバーを生成する場合、適切な DIT およびスキーマを使用して LDAP サーバーを構成した後、新規 ldapaddent ツールを使用するのが最善です。このツールは、対応する /etc ファイルから LDAP コンテナ内にエントリを作成します。このツールを使用して、次のデータタイプ用のコンテナ内にデータを生成することができます。

aliasesauto_*bootparamsethersgrouphosts (IPv6 アドレスを含む)、netgroupnetmasksnetworkspasswdshadowprotocolspublickeyrpc、および services

デフォルトでは、ldapaddent は標準入力からこのデータを読み取って、コマンド行で指定されたデータベースに関連付けられた LDAP コンテナに追加します。ただし、データを読み取る入力ファイルは、-f オプションを使用して指定できます。

エントリはクライアントの構成に基づき、ディレクトリ内に格納されます。このため、LDAP ネームサービスを使用するようにクライアントを構成する必要があります。

パフォーマンスを向上させるために推奨されているデータベースのロード順序を次に示します。

  1. passwd データベースの次に shadow データベース

  2. networks データベースの次に netmasks データベース

  3. bootparams データベースの次に ethers データベース

オートマウントエントリを追加する場合、データベース名は auto_* (たとえば auto_home) の形式で指定します。

別のホストの /etc ファイルを LDAP サーバーに追加する場合、それらすべてを 1 つの /etc ファイルにマージして、1 台のホスト上で ldapaddent を使用して追加できます。あるいは、別のホストすべてが LDAP クライアントとして構成済みであることを想定して各ホストで ldapaddent を実行することもできます。

使用するネームサービスデータが NIS サーバー上にすでに存在し、データを LDAP ネームサービス用の LDAP サーバーに移動する場合、 ypcat (または niscat) コマンドを使用して NIS マップをファイル内にダンプし、これらのファイルに対して ldapaddent を実行してデータを LDAP サーバーに追加します。

たとえば、ホスト情報を LDAP サーバーに追加する場合、以下を実行します。


例 14-1 NIS 情報を LDAP サーバーに追加する方法

  1. スーパーユーザーになります。

  2. ldapaddent を実行します。

    # ldapaddent -h ldap_server_name -D directory manager -f hosts.data ¥ hosts


上の例では、simple 認証を使用する場合、directory_manager パスワードは平文で格納されます。

rpc.nisd 内の適切な設定を使用して、NIS+ データを保持するディレクトリサーバーを生成できます。詳細については、『Solaris のシステム管理 (ネーミングとディレクトリサービス : FNS、NIS+ 編) 』の付録の「NIS+ から LDAP への移行」を参照してください。