LDAP の設定と構成

第 3 章 iPlanet Directory Server の設定

この章では、Solaris LDAP クライアントが名前情報を検索できるように、iPlanet Directory Server を設定する方法について説明します。この章の説明は、iPlanet Directory Server バージョン 4.11 に基づいています。

iPlanet Directory Server を使用する場合は、iPlanet に関する次のマニュアルを照してください。

この章の内容は次のとおりです。

構成ディレクトリへのオブジェクトクラス定義の追加

環境を準備する
  1. ディレクトリサーバーを停止します。

slapd.oc.conf ファイルを変更する
  1. ipNetwork オブジェクトクラスを変更し、cn を必須ではなくしますが、メンバーのままにしておきます。

    変更前の ipNetwork は次のとおりです。


    objectclass ipNetwork
        oid
             1.3.6.1.1.1.2.7
        requires
             objectClass,
             ipNetworkNumber,
             cn
        allows
             ipNetmaskNumber,
             manager,
             l,
             description

    cn 行を requires から削除し、allows に追加します。変更後の ipNetwork は次のようになります。


    objectclass ipNetwork
        oid
             1.3.6.1.1.1.2.7
        requires
             objectClass,
             ipNetworkNumber
        allows
             cn,
             ipNetmaskNumber,
             manager,
             l,
             description
オブジェクトクラス定義を slapd.user_oc.conf に追加する
  1. NisKeyObject オブジェクトクラスを追加します。


    # NIS publickey objectclass
    objectclass NisKeyObject
            oid 1.3.6.1.1.1.2.14
            superior top
            requires
                    cn,
                    nisPublickey,
                    nisSecretkey
            allows
                    uidNumber,
                    description
  2. nisDomainObject オブジェクトクラスを追加します。


    # NIS domain objectclass
    objectclass nisDomainObject
            oid 1.3.1.6.1.1.1.2.15
            superior top
            requires
                    nisDomain
  3. SolarisNamingProfile オブジェクトクラスを追加します。


    # LDAP client profile objectclass
    objectclass SolarisNamingProfile
            oid 1.3.6.1.4.1.42.2.27.5.2.7
            superior top
            requires
                    cn,
                    SolarisLDAPservers,
                    SolarisSearchBaseDN
            allows
                    SolarisBindDN,
                    SolarisBindPassword,
                    SolarisAuthMethod,
                    SolarisTransportSecurity,
                    SolarisCertificatePath,
                    SolarisDataSearchDN,
                    SolarisSearchScope,
                    SolarisSearchTimelimit,
                    SolarisPreferredServer,
                    SolarisPreferredServerOnly,
                    SolarisCacheTTL,
                    SolarisSearchReferral
  4. mailGroup オブジェクトクラスを追加します。


    # mailGroup objectclass
    objectclass mailGroup
            oid 2.16.840.1.113730.3.2.4
            superior top
            requires
                    mail
            allows
                    cn,
                    mgrpRFC822MailMember
  5. nisMailAlias オブジェクトクラスを追加します。


    # nisMailAlias objectclass
    objectClass nisMailAlias
            oid 1.3.6.1.4.1.42.2.27.1.2.5
            superior top
            requires
                    cn
            allows
                    rfc822mailMember
  6. nisNetId オブジェクトクラスを追加します。


    # nisNetId objectclass
    objectClass nisNetId
            oid 1.3.6.1.4.1.42.2.27.1.2.6
            superior top
            requires
                    cn
            allows
                    nisNetIdUser,
                    nisNetIdGroup,
                    nisNetIdHost
  7. SolarisAuditUser オブジェクトクラスを追加します。


    # User auditing objectclass
    objectclass SolarisAuditUser
            oid 1.3.6.1.4.1.42.2.27.5.2.2
            superior top
            allows
                    SolarisAuditAlways,
                    SolarisAuditNever
  8. SolarisUserAttr オブジェクトクラスを追加します。


    # RBAC User attributes objectclass
    objectclass SolarisUserAttr
            oid 1.3.6.1.4.1.42.2.27.5.2.3
            superior top
            allows
                    SolarisUserQualifier,
                    SolarisAttrReserved1,
                    SolarisAttrReserved2,
                    SolarisAttrKeyValue
  9. SolarisAuthAttr オブジェクトクラスを追加します。


    # RBAC Authorizations Objectclass
    objectclass SolarisAuthAttr
            oid 1.3.6.1.4.1.42.2.27.5.2.4
            superior top
            requires
                    cn
            allows
                    SolarisAttrReserved1,
                    SolarisAttrReserved2,
                    SolarisAttrShortDesc,
                    SolarisAttrLongDesc,
                    SolarisAttrKeyValue
  10. SolarisProfAttr オブジェクトクラスを追加します。


    # RBAC Profile objectclass
    objectClass SolarisProfAttr
            oid 1.3.6.1.4.1.42.2.27.5.2.5
            superior top
            requires
                    cn
            allows
                    SolarisAttrReserved1,
                    SolarisAttrReserved2,
                    SolarisAttrLongDesc,
                    SolarisAttrKeyValue
  11. SolarisExecAttr オブジェクトクラスを追加します。


    # RBAC Execution objectlcass
    objectClass SolarisExecAttr
            oid 1.3.6.1.4.1.42.2.27.5.2.6
            superior top
            allows
                    SolarisKernelSecurityPolicy,
                    SolarisProfileType,
                    SolarisAttrReserved1,
                    SolarisAttrReserved2,
                    SolarisProfileID,
                    SolarisAttrKeyValue
  12. nisKeyObject オブジェクトクラスを追加します。


    # Publickey objectclass
    objectClass nisKeyObject
            oid 1.3.6.1.1.1.2.14
            superior top
            requires
                    cn,
                    nisPublicKey,
                    nisSecretKey
            allows
                    uidNumber,
                    description
  13. SolarisProject オブジェクトクラスを追加します。


    # Project Accounting objectclass
    objectclass SolarisProject
            oid 1.3.6.1.4.1.42.2.27.5.2.1
            superior top
            requires
                    SolarisProjectID,
                    SolarisProjectName
            allows
                    memberUid,
                    memberGid,
                    description,
                    SolarisProjectAttr
slapd.user_at.conf ファイルに属性定義を追加する
  1. nisMapEntry 属性を追加します。


    # Sun nisMapEntry attributes
    attribute nisDomain      1.3.6.1.1.1.1.30   cis
  2. LDAP クライアントプロファイル属性を追加します。


    # attributes for LDAP client profile
    attribute SolarisLDAPServers     1.3.6.1.4.1.42.2.27.5.1.15   cis
    attribute SolarisSearchBaseDN    1.3.6.1.4.1.42.2.27.5.1.16   dn single
    attribute SolarisCacheTTL        1.3.6.1.4.1.42.2.27.5.1.17   cis  single
    attribute SolarisBindDN          1.3.6.1.4.1.42.2.27.5.1.18   dn single
    attribute SolarisBindPassword    1.3.6.1.4.1.42.2.27.5.1.19   ces  single
    attribute SolarisAuthMethod      1.3.6.1.4.1.42.2.27.5.1.20   cis
    attribute SolarisTransportSecurity  1.3.6.1.4.1.42.2.27.5.1.21   cis
    attribute SolarisCertificatePath 1.3.6.1.4.1.42.2.27.5.1.22   ces single
    attribute SolarisDataSearchDN    1.3.6.1.4.1.42.2.27.5.1.24   cis
    attribute SolarisSearchScope     1.3.6.1.4.1.42.2.27.5.1.25   cis single
    attribute SolarisSearchTimeLimit 1.3.6.1.4.1.42.2.27.5.1.26   int single
    attribute SolarisPreferredServer 1.3.6.1.4.1.42.2.27.5.1.27   cis
    attribute SolarisPreferredServerOnly 1.3.6.1.4.1.42.2.27.5.1.28 cis single
    attribute SolarisSearchReferral  1.3.6.1.4.1.42.2.27.5.1.29   cis single
  3. mailGroup 属性を追加します。


    # Sun additional attributes to RFC2307 attributes (NIS)
    attribute mgrpRFC822MailMember   2.16.840.1.113730.3.1.30     cis
    attribute rfc822MailMember                                    ces
  4. nisKeyObject 属性を追加します。


    # Sun nisKeyObject attributes
    attribute nisPublickey    1.3.6.1.1.1.1.28    cis
    attribute nisSecretkey    1.3.6.1.1.1.1.29    cis
  5. nisNetId 属性を追加します。


    # Sun nisNetId attributes
    attribute nisNetIdUser    1.3.6.1.4.1.42.2.27.1.1.12    ces
    attribute nisNetIdGroup   1.3.6.1.4.1.42.2.27.1.1.13    ces
    attribute nisNetIdHost    1.3.6.1.4.1.42.2.27.1.1.14    ces
  6. 監査属性を追加します。


    # attributes for auditing
    attribute SolarisAuditAlways   1.3.6.1.4.1.42.2.27.5.1.5   cis single
    attribute SolarisAuditNever    1.3.6.1.4.1.42.2.27.5.1.6   cis single
  7. RBAC 属性を追加します。


    # attributes for RBAC
    attribute SolarisAttrKeyValue   1.3.6.1.4.1.42.2.27.5.1.4   cis single
    attribute SolarisAttrShortDesc  1.3.6.1.4.1.42.2.27.5.1.7   cis single
    attribute SolarisAttrLongDesc   1.3.6.1.4.1.42.2.27.5.1.8   cis single
    attribute SolarisKernelSecurityPolicy  1.3.6.1.4.1.42.2.27.5.1.9
       cis single
    attribute SolarisProfileType    1.3.6.1.4.1.42.2.27.5.1.10  cis single
    attribute SolarisProfileId      1.3.6.1.4.1.42.2.27.5.1.11  ces single
    attribute SolarisUserQualifier  1.3.6.1.4.1.42.2.27.5.1.12  cis single
    attribute SolarisAttrReserved1  1.3.6.1.4.1.42.2.27.5.1.13  cis single
    attribute SolarisAttrReserved2  1.3.6.1.4.1.42.2.27.5.1.14  cis single
  8. nisKeyObject 属性を追加します。


    # attributes for nisKeyObject
    attribute nisPublicKey    1.3.6.1.1.1.1.28    cis
    attribute nisSecretKey    1.3.6.1.1.1.1.29    cis
  9. プロジェクトアカウント属性を追加します。


    # attributes for Project Accounting
    attribute SolarisProjectID     1.3.6.1.4.1.42.2.27.5.1.1    int single
    attribute SolarisProjectName   1.3.6.1.4.1.42.2.27.5.1.2    ces single
    attribute SolarisProjectAttr   1.3.6.1.4.1.42.2.27.5.1.3    ces
    attribute memberGid            1.3.6.1.4.1.42.2.27.5.1.30   ces

ディレクトリサーバーへのデータの読み込み

ディレクトリサーバーに Unix Crypt 形式でパスワードを格納していない場合、ディレクトリサーバーを構成してパスワードを格納します。Unix Crypt 形式のパスワードの設定方法についての詳細は、iPlanet のマニュアルを参照してください。

ACI を設定する
  1. ツリーのトップエントリの ACI (アクセス制御情報) を設定します。この ACI は所有者が自分のエントリを変更する権限を制御します。たとえば、デフォルトの ACI ではユーザーが自分のホームディレクトリを変更できますが、次の例のように変更した ACI では自分のホームディレクトリを変更できません。各自の環境に合わせて ACI を設定してください。

    次に示すようなツリーのトップエントリである「Allow self entry modification」ACI を、


    aci=(targetattr = "*")(version 3.0; acl "Allow self entry modification";
    allow (write)userdn = "ldap:///self";)

    次のように変更します。


    aci=(targetattr!="cn || uid || uidNumber || gidNumber || homeDirectory
    || shadowLastChange || shadowMin || shadowMax || shadowWarning ||
    shadowInactive || shadowExpire || shadowFlag || memberUid")
    (version 3.0; acl "Allow self entry modification"; allow
    (write) userdn = "ldap:///self"; )

    注 –

    ユーザーが変更すべきでない属性 (uid など) の変更許可を与えないでください。それを許可すると、uid を 0 に設定することによって、ユーザーがスーパーユーザーになることができるようになってしまいます。


ネームコンテナのエントリを追加する

ネームコンテナの一覧は、ディレクトリ情報ツリーを参照してください。


注 –

次のコンテナエントリは、NIS ドメインで使用した nisDomain の例に基づいています。実際に使用するときは、これらのコンテナエントリを各自の環境に合わせて変更してください。


  1. ドメインエントリを追加します。


    dn: dc=mkt,dc=mainstore,dc=com
    dc: mkt
    associatedDomain: mkt.mainstore.com
    objectClass: top
    objectClass: domain
    objectClass: domainRelatedObject
    objectclass: nisDomainObject
    nisdomain: mkt.mainstore.com
  2. ネームコンテナのエントリを追加します。


    dn: ou=people,dc=mkt,dc=mainstore,dc=com
    ou: people
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=Group,dc=mkt,dc=mainstore,dc=com
    ou: Group
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=rpc,dc=mkt,dc=mainstore,dc=com
    ou: rpc
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=protocols,dc=mkt,dc=mainstore,dc=com
    ou: protocols
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=networks,dc=mkt,dc=mainstore,dc=com
    ou: networks
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=netgroup,dc=mkt,dc=mainstore,dc=com
    ou: netgroup
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=aliases,dc=mkt,dc=mainstore,dc=com
    ou: aliases
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=Hosts,dc=mkt,dc=mainstore,dc=com
    ou: Hosts
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=services,dc=mkt,dc=mainstore,dc=com
    ou: services
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=Ethers,dc=mkt,dc=mainstore,dc=com
    ou: Ethers
    objectClass: top
    objectClass: organizationalUnit
    
    dn: ou=profile,dc=mkt,dc=mainstore,dc=com
    ou: profile
    objectClass: top
    objectClass: organizationalUnit
    
    dn: nismapname=auto_home,dc=mkt,dc=mainstore,dc=com
    nismapname: auto_home
    objectClass: top
    objectClass: nisMap
    
    dn: nismapname=auto_direct,dc=mkt,dc=mainstore,dc=com
    nismapname: auto_direct
    objectClass: top
    objectClass: nisMap
    
    dn: nismapname=auto_master,dc=mkt,dc=mainstore,dc=com
    nismapname: auto_master
    objectClass: top
    objectClass: nisMap
    
    dn: nismapname=auto_shared,dc=mkt,dc=mainstore,dc=com
    nismapname: auto_shared
    objectClass: top
    objectClass: nisMap
パフォーマンスと上限に関するパラメータを設定する

これらのパラメータの値は、読み込むデータ量、データの使用パターン、使用するハードウェアなどによってサーバーごとに異なります。

  1. キャッシュの最大エントリ数、キャッシュの最大サイズ (バイト) を設定し、上限値を確認します。

    システムで使用できるメモリーおよびディスク容量に合わせて、キャッシュパラメータを変更してください。

  2. サイズおよび時間の上限パラメータを、環境に合わせて設定します。

    sizelimit および timelimit-1 に指定すると、取り得る上限値として設定されます。各自のシステムに合わせて値を選択してください。

プロキシエージェントにパスワードの読み取り権を与える

注 –

次のプロキシエージェント ACI (アクセス制御情報) は、NIS ドメインで使用した nisDomain の例に基づいています。実際に使用するときは、これらのプロキシエージェント ACI を各自の環境に合わせて変更してください。


  1. すべてのクライアントで認証に pam_unix を使用する場合は、ldapmodify を使用して検索起点識別名に読み取り ACI を設定することによって、プロキシエージェントにパスワードの読み取り権を与えます。


    #ldapmodify -D "cn=Directory Manager" -w nssecret -f aci.ldif

    aci.ldif の内容は次のとおりです。


    dn: dc=mkt,dc=mainstore,dc=com
    changetype: modify
    add: aci
    aci: (target="ldap:///dc=mkt,dc=mainstore,dc=com")
     (targetattr="userPassword")(version 3.0; acl "password read";
     allow (compare,read,search) userdn = "ldap:///cn=proxyagent,
     ou=profile,dc=mkt,dc=mainstore,dc=com"; )
  2. ldapsearch を使用して新しい ACI 設定を確認します。

    ldapsearch は変更された ACI を表示します。


    #ldapsearch -L -h <servername> -b "dc=mkt,dc=mainstore,dc=com" \
      -s base "objectclass=*"

    ldapsearch によって返される変更後の ACI は、次のようになります。


    dn: dc=mkt,dc=mainstore,dc=com
    dc: mkt
    associateddomain: mkt.mainstore.com
    objectclass: top
    objectclass: domain
    objectclass: domainRelatedObject
    objectclass: nisDomainObject
    nisdomain: mkt.mainstore.com
    aci: (target="ldap:///dc=mkt,dc=mainstore,dc=com")
     (targetattr="userPassword")(version 3.0; acl "password read";
     allow (compare,read,search) userdn = "ldap:///cn=proxyagent,
     ou=profile,dc=mkt,dc=mainstore,dc=com"; )

    pam_ldap 認証はサーバー側で実行されるため、プロキシエージェントにパスワード属性の読み取り権を与える必要はありません。pam_ldap についての詳細は、PAMを参照してください。

NIS データを LDIF 書式に変換する

NIS(YP) 環境から LDAP 環境に移行するには、dsimport を使用して NIS データを LDIF 書式に変換します。dsimport は NIS 拡張の一部で、iPlanet Advantage Software CD vol.1 に収録されています。マニュアルは、次の Web サイトで参照できます。http://docs.iplanet.com/docs/manuals/directory.html

  1. NIS パスワードを LDIF 書式に変換します。


    # cat passwd.nis | dsimport -n -m nis.mapping -t passwd \
    	-M SIMPLE -D "" -w "" >passwd.ldif

    passwd.ldif ファイルを LDAP サーバーに読み込みます。

  2. NIS グループデータを LDIF 書式に変換します。


    # cat group.nis | dsimport -n -m nis.mapping -t group \
    -M SIMPLE -D "" -w "" > group.ldif

    group.ldif を LDAP サーバーに読み込みます。

  3. 上記の手順を繰り返して、すべてのネームコンテナファイルを変換します。

  4. ns-slapd の ldif2db コマンドまたは ldapadd コマンドを使用して、LDIF 書式ファイルをディレクトリデータベースにインポートします。

    ns-slapd ldif2db コマンドについての詳細は、『Directory Server Administrator's Guide』の「Managing Directory Server Databases」を参照してください。ldapadd については、ldapadd(1) のマニュアルページを参照してください。


    注 –

    ファイルデータを LDIF 書式に変換するために、dsimport は、エントリの格納方法を定義するマップファイルを変更する必要があります。


インデックスを作成して検索パフォーマンスを向上させる

注 –

インデックスの作成方法については、『iPlanet Directory Server Administrator's Guide』の「Managing Indexes」を参照してください。


  1. 次の Solaris クライアント属性にインデックスを付けます。


    membernisnetgroup    pres,eq,sub
    nisnetgrouptriple    pres,eq,sub
    memberuid            pres,eq
    macAddress           pres,eq
    uid                  pres,eq
    uidNumber            pres,eq
    gidNumber            pres,eq
    ipHostNumber         pres,eq
    ipNetworkNumber      pres,eq
    ipProtocolNumber     pres,eq
    oncRpcNumber         pres,eq
    ipServiceProtocol    pres,eq
    ipServicePort        pres,eq
    nisDomain            pres,eq
    nisMapName           pres,eq
    mail                 pres,eq
  2. ldapsearch を使用して、VLV 制御タイプが 1.2.840.113556.1.4.473、VLV 制御値が 2.16.840.1.113730.3.4.9 の OID によって特定される仮想リスト表示 (VLV) を、ディレクトリがサポートしているかどうかを確認します。


    # ldapsearch -b "" -s base objectclass=\*

    ldapsearch は次の検索結果を返します。


    objectclass=top
    namingcontexts=dc=sun,dc=com
    namingcontexts=o=NetscapeRoot
    subschemasubentry=cn=schema
    supportedcontrol=2.16.840.1.113730.3.4.2
    supportedcontrol=2.16.840.1.113730.3.4.3
    supportedcontrol=2.16.840.1.113730.3.4.4
    supportedcontrol=2.16.840.1.113730.3.4.5
    supportedcontrol=1.2.840.113556.1.4.473
    supportedcontrol=2.16.840.1.113730.3.4.9
    supportedcontrol=2.16.840.1.113730.3.4.12
    supportedsaslmechanisms=EXTERNAL
    supportedldapversion=2
    supportedldapversion=3
    dataversion=atitrain2.east.sun.com:389 020000605172910 
    netscapemdsuffix=cn=ldap://:389,dc=atitrain2,dc=east,dc=sun,dc=com
  3. 次の VLV 属性にインデックスを付けます。


    getpwent:      vlvFilter: (objectclass=posixAccount),     vlvScope: 1
    getspent:      vlvFilter: (objectclass=posixAccount),     vlvScope: 1
    getgrent:      vlvFilter: (objectclass=posixGroup),       vlvScope: 1
    gethostent:    vlvFilter: (objectclass=ipHost),           vlvScope: 1
    getnetent:     vlvFilter: (objectclass=ipNetwork),        vlvScope: 1
    getprotoent:   vlvFilter: (objectclass=ipProtocol),       vlvScope: 1
    getrpcent:     vlvFilter: (objectclass=oncRpc),           vlvScope: 1
    getaliasent:   vlvFilter: (objectclass=rfc822MailGroup),  vlvScope: 1
    getserviceent: vlvFilter: (objectclass=ipService),        vlvScope: 1

    ツリー内の ou のうち、多数のオブジェクトを含むかアクセス頻度の高いものに、これらのインデックスを作成します。

  4. パスワードエントリ (getpwent) については、ディレクトリに次のエントリを追加します。


    dn: cn=getpwent,cn=config,cn=ldbm
    objectclass: top
    objectclass: vlvSearch
    cn: getpwent
    vlvBase: ou=people,dc=eng,dc=sun,dc=com
    vlvScope: 1
    vlvFilter: (objectclass=posixAccount)
    aci: (target="ldap:///cn=getpwent,cn=config,cn=ldbm")(targetattr="*")
     (version 3.0; acl "Config";allow(read,search,compare)userdn="ldap:///anyone";)
    
    dn: cn=getpwent,cn=getpwent,cn=config,cn=ldbm
    cn: getpwent
    vlvSort: cn uid
    objectclass: top
    objectclass: vlvIndex
  5. getpwent の VLV インデックスを作成します。


    # cd /usr/netscape/server4/slapd*
    # ./vlvindex getpwent
    OK# ./vlvindex getgrent
    OK# ./vlvindex gethostent
    OK# ./vlvindex getspent
    OK# 
    # ./vlvindex
    [05/Jun/2000:15:34:31 -0400] - ldbm2index: Unknown VLV Index named ''
    [05/Jun/2000:15:34:31 -0400] - ldbm2index: Known VLV Indexes are: 'getgrent', 
    'gethostent', 'getnetent', 'getpwent', 'getspent', 
  6. 残りの VLV 属性について、手順 4 と 5 を繰り返します。

すべてのユーザーに VLV 要求制御の読み取り権/検索権/比較権を与える
  1. ldapsearch を使用して、VLV 制御 ACI を表示します。


    #ldapsearch -D "cn=Directory Manager" -w nssecret -b cn=features, \
    cn=config objectclass=\*

    検索結果は次のとおりです。


    cn=features,cn=config
    objectclass=top
    cn=features
    
    cn=options,cn=features,cn=config
    objectclass=top
    cn=options
    
    oid=2.16.840.1.113730.3.4.9,cn=features,cn=config
    objectclass=top
    objectclass=directoryServerFeature
    oid=2.16.840.1.113730.3.4.9
    cn=VLV Request Control
    aci=(targetattr != "aci")(version 3.0; acl "VLV Request \
     Control"; allow( read, 
    search, compare ) userdn = "ldap:///all";)
  2. ldapmodify を使用して、すべてのユーザーに、VLV 機能の読み取り/検索/比較の権限を与えます。これにより、anonymous (匿名) による検索で VLV 制御を使用しても失敗しなくなります。


    #ldapmodify -D "cn=Directory Manager" -w nssecret -f vlvcntrl.ldif

    vlvcntrl.ldif の内容は次のとおりです。


    dn: oid=2.16.840.1.113730.3.4.9,cn=features,cn=config
    changetype: modify
    replace: aci
    aci: (targetattr !="aci")(version 3.0; acl "VLV Request Control"; 
     allow (compare,read,search) userdn = "ldap:///anyone"; )
  3. ldapsearch を使用して、変更された VLV 制御 ACI を表示します。


    #ldapsearch -L -b "cn=features,cn=config" -s one \
    oid=2.16.840.1.113730.3.4.9

    ldapsearch が返す ACI は次のようになります。


    dn: oid=2.16.840.1.113730.3.4.9,cn=features,cn=config
    objectclass: top
    objectclass: directoryServerFeature
    oid: 2.16.840.1.113730.3.4.9
    cn: VLV Request Control
    aci: (targetattr !="aci")(version 3.0; acl "VLV Request Control"; 
     allow (compare,read,search) userdn = "ldap:///anyone"; )
LDAP サーバーに proxyagent エントリを追加する

注 –

この手順は、proxyagent エントリを使用する場合だけ必要になります。


  1. proxyagent エントリを LDAP サーバーに追加します。


    #ldapadd -D "cn=Directory Manager" -w nssecret -f proxyagent.ldif

    proxyagent.ldif の内容は次のとおりです。


    dn: cn=proxyagent,ou=profile,dc=mkt,dc=mainstore,dc=com
    cn: proxyagent
    sn: proxyagent
    objectclass: top
    objectclass: person
    userpassword: proxy_agent_password

    注 –

    ou は、ou=profile または ou=person に設定できます。


クライアントプロファイルを生成する
  1. クライアントプロファイルを生成し、それを LDAP サーバーに追加します。


    ldap_gen_profile -P profile -b baseDN -D bindDN \
      -w bindDNpasswd ldapServer_IP_address(es)[:port#]

    bindDN はプロキシエージェントのバインド DN です。障害発生時に他の LDAP サーバーで処理を継続することを可能にする場合は、2 つ以上の LDAP サーバーの IP アドレスを指定します。上のコマンドの実行結果を、profile.ldif などの名前のファイルに格納します。

    典型的なコマンド行を示します。


    ldap_gen_profile -P myProfile -b "dc=mkt,dc=mainstore,dc=com" \
    -D "cn=proxyagent,ou=profile,dc=mkt,dc=mainstore,dc=com" \
    -w proxy_agent_pswd -a simple 100.100.100.100 > profile.ldif
  2. このクライアントプロファイルを LDAP サーバーに追加して、クライアントがダウンロードできるようにします。