14.5 LDAPオブジェクトを環境設定する

eDirectoryのインストール時に、LDAPサーバオブジェクトとLDAPグループオブジェクトが作成されます。LDAPサービスのデフォルト設定は、これらの2つのオブジェクト上のディレクトリにあります。NetIQ iManagerでLDAP管理タスクを使用することで、デフォルトの設定を変更できます。

LDAPサーバオブジェクトとは、サーバ固有の設定データのことです。

LDAPグループオブジェクトには、複数のLDAPサーバ間で共有できる便利な設定情報が含まれています。このオブジェクトは、共通の設定データとLDAPサーバグループを提供します。サーバは共通データを持っています。

複数のLDAPサーバオブジェクトを、1つのLDAPグループオブジェクトと関連させることができます。関連するすべてのLDAPサーバは、サーバ固有の設定をそれぞれのLDAPサーバオブジェクトから取得しますが、共通する情報や共有情報はLDAPグループオブジェクトから取得します。

デフォルトでは、LDAPグループオブジェクトおよびLDAPサーバオブジェクトが、eDirectoryインストールプログラムによってnldap.nlmまたはnldap.dlmに対して1つずつインストールされます。その後、複数のLDAPサーバオブジェクトを、1つのLDAPグループオブジェクトに関連付けることができます。

重要:新しいバージョンのLDAPサーバオブジェクトを古いバージョンのLDAPグループオブジェクトに関連付けることもできますが、異なるバージョン間での関連付けはお勧めしていません。たとえば、eDirectory 8.7.3 SP9のLDAPグループオブジェクトとeDirectory·9.0以降のLDAPサーバオブジェクトとの関連付けは避けるようにしてください。

LDAPグループオブジェクトが保持する、共通情報の量は制限されています。属性に含まれるデータはほとんど共通しているため、LDAPは多くの属性を読み込む必要がありません。多くのLDAPサーバは同じデータを使用する必要があります。共通の、または共有グループオブジェクトがない場合は、各LDAPサーバにそのデータを複製する必要があります。

LDAPサーバオブジェクトでは、LDAPグループオブジェクトよりも多くのサーバ固有の設定オプションとデータが許可されています。

どちらのオブジェクトも、相互にポイントされたDN構文属性を持っています。

LDAPサーバがその設定データを探せるようにするには、関連付けを追加する必要があります。関連付けは、通常のeDirectory設定データを保持するNCP™サーバを通じて行われます。この関連付けは、eDirectoryインストールプログラムにより自動で行われます。

各eDirectoryサーバは、NCPサーバオブジェクトを持っています。次の図の「Lundi」というサーバには、このオブジェクトがiManager上と同じように表示されています。

NCPサーバオブジェクトのアイコンの例

このオブジェクトは、特定のホストeDirectoryサーバのLDAPサーバオブジェクトを指すLDAPサーバ属性を持っています。次の図は、この属性を示しています。

LDAPサーバ属性

通常、LDAPサーバオブジェクト、LDAPグループオブジェクト、NCPサーバオブジェクトは同じコンテナ内にあります。eDirectoryのインストールで、サーバおよび管理者コンテキストを指定するときに、このコンテナを指定します。

LDAPサーバオブジェクトを移動するときは、それを書き込み可能なレプリカに置く必要があります。

14.5.1 Linux上でLDAPサーバオブジェクトおよびLDAPグループオブジェクトを環境設定する

LDAP環境設定ユーティリティはldapconfigです。LinuxシステムでLDAPサーバオブジェクトおよびLDAPグループオブジェクトの属性を変更、表示、リフレッシュするには、ldapconfigを使用します。

Linuxシステム上でLDAP属性値を表示するときには次の構文を使用します。

ldapconfig get [...] | set attribute-value-list  [-t treename | -p hostname[:port]] [-w password] [-a user FDN] [-f]
ldapconfig [-t tree_name | -p host_name[:port]] [-w password] [-a user FDN] [-V] [-R] [-H] [-f] -v attribute,attribute2...

Linuxシステム上でLDAP属性値を変更するときには次の構文を使用します。

ldapconfig [-t tree_name | -p host_name[:port]] [-w password] [-a admin_FDN] -s attribute=value,... 

パラメータ

説明

-t treename

コンポーネントのインストール先となるeDirectoryツリーの名前。

-p hostname

ホストの名前です。DNS名またはIPアドレスを指定することもできます。

-w

管理権を持つユーザのパスワード。

-a

管理権を持つユーザの完全識別名。次に例を示します。

cn=user.o=org1

get | -V

すべてのLDAPサーバとLDAPグループの属性を表示します。

get | -v attribute list

属性リストにある属性の現在の値を表示します。

set | -s attribute-value pairs

属性を指定した値で設定します。

-v

LDAP属性値を表示します。

-s

インストールされたコンポーネントの属性値を設定します。

-R

LDAPサーバをリフレッシュします。

-V

現在のLDAP環境設定を表示します。

-H

使用方法とヘルプを表示します。

-f

フィルタ済みレプリカ上での操作を許可します。

attribute

設定可能なLDAPサーバ属性名またはグループ属性名。詳細については、LDAPサーバオブジェクトの属性およびLDAPグループオブジェクトの属性を参照してください。

例

属性リストの属性の値を表示するには、次のコマンドを入力します。

ldapconfig [-t tree_name | -p host_name[:port]] 
[-w password] [-a user_FDN] -v "Require TLS for simple binds with password","searchTimeLimit"

LDAP TCPポート番号と検索サイズの制限を1000に設定するには、次のコマンドを入力します。

ldapconfig [-t tree_name | -p host_name[:port]] 
[-w password] [-a admin_FDN] -s "LDAP TCP Port=389","searchSizeLimit=1000”

LDAPサーバオブジェクトの属性

NetIQ LDAPサーバプロパティを設定および管理するために、LDAPサーバオブジェクトを使用します。

次の表に、LDAPサーバ属性の説明を示します。

属性

説明

LDAPサーバ

eDirectoryのLDAPサーバオブジェクトの完全識別名。

LDAP Host Server

LDAPサーバの実行場所となるホストeDirectoryサーバの完全識別名。

LDAPグループ

eDirectoryの中で、このLDAPサーバがメンバーとして属するLDAPグループオブジェクト。

LDAP Server Bind Limit

LDAPサーバに同時にバインドできるクライアントの数。0を指定すると、無制限になります。

LDAP Server Idle Timeout

あるクライアントとLDAPサーバの間で、ここで指定した期間無活動状態が継続すると、このクライアントとLDAPサーバの接続が切断されます。0を指定すると、無制限になります。

LDAP Enable TCP

このオプションは廃止される予定です。ldapInterfacesから使用可能です。

詳細については、ldapInterfacesを参照してください。

LDAP Enable TLS

このオプションは廃止されました。ただし、ldapInterfacesから使用可能です。

詳細については、ldapInterfacesを参照してください。

LDAP TCP Port

このオプションは廃止されました。ただし、ldapInterfacesから使用可能です。

詳細については、ldapInterfacesを参照してください。

LDAP TLSポート

このオプションは廃止されました。ただし、ldapInterfacesから使用可能です。

詳細については、ldapInterfacesを参照してください。

keyMaterialName

このLDAPサーバに関連付けられた、SSL LDAP接続に使用するeDirectoryの証明書オブジェクトの名前。

searchSizeLimit

LDAPサーバが検索要求への応答としてLDAPクライアントに返すエントリの最大数。0を指定すると、無制限になります。

ユーザがLDAPサーバオブジェクト上で管理者権限を持っている場合、searchSizeLimit値は考慮されません。管理権はキャッシュに保存されるので、ユーザの管理権に対する変更は直ちに有効にはなりません。管理権に対する変更は、次回のLDAPサーバ更新で有効になります。デフォルトでは、LDAPサーバは30分ごとに更新されます。

searchTimeLimit

LDAPサーバによるLDAP検索がタイムアウトになるまでの最大秒数。0を指定すると、無制限になります。

ユーザがLDAPサーバオブジェクト上で管理者権限を持っている場合、searchTimeLimit値は考慮されません。管理権はキャッシュに保存されるので、ユーザの管理権に対する変更は直ちに有効にはなりません。管理権に対する変更は、次回のLDAPサーバ更新で有効になります。デフォルトでは、LDAPサーバは30分ごとに更新されます。

filteredReplicaUsage

LDAPサーバがLDAP検索のために、フィルタ処理されたレプリカを使用するかどうかを指定します。

値は1(フィルタ済みレプリカを使用)か0(フィルタ済みレプリカ不使用)です。

sslEnableMutualAuthentication

LDAPサーバにおいて、SSLベースの相互認証(証明書に基づくクライアント認証)を有効にするかどうかを指定します。

ldapTLSVerifyClientCertificate

LDAPによるTLS操作のクライアント認証の確認を有効または無効にします。

ldapNonStdAllUserAttrsMode

非標準のすべてのユーザとオペレーショナル属性を有効または無効にします。

ldapBindRestrictions

LDAPクライアント接続でLDAPバインド制限とサイファレベルを有効にします。この属性はクライアント接続の制御に使用できます。iManagerを使用して、次の7つのLDAPバインド制限のいずれかを設定できます。

  • なし: デフォルトでは、このオプションは有効になっています。このオプションは匿名単純認証と非匿名単純認証の両方を有効にします。このオプションの値は、0です。

  • 匿名単純バインドを不許可にする: 匿名単純認証を無効にするには、値を1に設定します。非匿名単純認証が有効になります。

  • 非匿名単純認証を不許可にする: 非匿名単純認証を無効にするには、値を2に設定します。

  • 匿名単純認証と非匿名単純認証を許可しない: 匿名単純認証と非匿名単純認証の両方を無効にするには、値を3に設定します。

    メモ:非匿名単純認証を無効にすると、適切な猶予ログインの制限が強制的に適用されます。

  • 非認証バインドを許可しない: パスワードを使用しない単純認証を無効にするには、値を4に設定します。

  • 匿名の非認証バインドを許可しない: 匿名単純認証と非認証バインドを無効にするには、値を5に設定します。

  • 非匿名単純認証と非認証バインドを許可しない: 非匿名単純認証と非認証バインドを無効にするには、値を6に設定します。このシナリオでは、匿名単純認証が有効になります。

  • 匿名単純認証、非匿名単純認証、および非認証バインドを許可しない: 匿名単純認証、非匿名単純認証、および非認証バインドを無効にするには、値を7に設定します。

メモ:4から7までの値は、ldapconfigユーティリティで設定できます。iManagerでは、この値を設定できません。詳細については、表 14-1を参照してください。

RSAと楕円曲線デジタル署名(ECDSA)アルゴリズムでは、eDirectoryは次の値を使用してサイファの使用を制限できます。

  • RSA: 次の値を使用します。

    • 高度暗号化(128ビットを超える): 128ビット暗号化よりも上位の暗号レベルと128ビットキーの一部の暗号スイートの使用を指定する場合には、値を48に設定します。

    • 中度暗号化: 128ビット暗号化の暗号レベルの使用を指定するには、値を32に設定します。

    • 低度暗号化: エクスポート暗号スイートを除く、64または56ビット暗号化の使用を指定する場合、値を16に設定します。

    • エクスポート: 40ビットおよび56ビット暗号化を含むサイファレベルの使用を指定します。値0。

    デフォルトは[高]で、128ビット暗号化よりも大きいサイファレベルとなります。この値が[0]に設定されている場合、eDirectory 9.1 SP4にアップグレードされた後、値が自動的に[高]に変更されます。

    メモ:TLSのFIPSモードを有効にすると、eDirectoryは暗号化設定を無視し、[高]暗号化のみを許可します。

 

Suite Bモード: 次の値を使用します。

  • Suite B Cipher(128ビット): 128ビットレベルのセキュリティを使用して、Suite Bモードの操作を有効にするには、値を64に設定します。このオプションを選択すると、eDirectoryは、ピア(任意のLDAPクライアント)による128ビットレベルと192ビットレベルの両方のセキュリティの使用を許可します。このオプションではECDSA 256またはECDSA 384のいずれかの証明書を使用できます。

  • Suite B Cipher(128ビットのみ)を使用する: 128ビットレベルのセキュリティを使用して、Suite Bモードの操作を有効にするには、値を80に設定します。このオプションを選択すると、eDirectoryは、ピア(任意のLDAPクライアント)による192ビットレベルのセキュリティの使用を許可しなくなります。このオプションではECDSA 256証明書のみを使用できます。

  • Suite B Cipher(192ビット)を使用する: 192ビットレベルのセキュリティを使用して、Suite Bモードの操作を有効にするには、値を96に設定します。このオプションを選択すると、eDirectoryは、ピア(任意のLDAPクライアント)による192ビットレベルのセキュリティの使用のみを許可します。このオプションではECDSA 384証明書のみを使用できます。

eDirectoryでは、ldapbindrestrictionsと暗号レベルの値を組み合わせて使用できます。詳細については、表 14-1を参照してください。

ldapChainSecureRequired

これはブール属性です。有効な場合、他のeDirectoryへのチェーンはセキュアなNCPで行われます。デフォルトでは、ldapChainSecureRequiredは無効です。

ldapInterfaces

LDAPサーバが(クリアテキストおよびセキュアなポートの両方を)リスンするLDAP URLを保存するために使用される複数値のSYN_CI_STRING属性。この属性は、eDirectoryサーバでそれぞれのインスタンスが特定のインタフェースについてリスンすることが必要な、複数のインスタンスを構成する際に役立ちます。これは、LDAP URL形式のIPアドレスとポート番号を使用して設定できます。LDAPサーバはこれらのIPアドレスとポートをリスンします。

IPv4とIPv6リスナの例を次に示します。

ldap://192.168.1.1:389 - To specify for IPv4 specific address on clear text port
ldaps://192.168.2.1:636 - To specify for IPv4 specific address on secure port
ldap://[2015::3]:389 - To specify for IPv6 specific address on clear text port
ldaps://[2015::3]:636 - To specify for IPv6 specific address on secure port
ldap://[::]:389 - To specify for IPv6 unspecified address on clear text port
ldaps://[::]:636 - To specify for IPv6 unspecified address on secure port

新しいサーバがeDirectory 9.1以降で設定されている場合は、LDAP Enable TCP、LDAP Enable TLS、LDAP TCP Port、およびLDAP TLS Portの属性は自動入力されません。設定中にldapおよびldapsに対して選択されたポートに対応するldapInterface属性値は自動入力されます。例: ldap://:389、ldaps://:636デフォルトでは、IPv4インタフェース値のみがldapInterfaces属性に追加されます。

アップグレード中に、eDirectoryは、LDAP Enable TCP、LDAP Enable TLS、LDAP TCP Port、LDAP TLS Port属性を削除するためにトリガされます。これらの属性に対応する値がldapInterfaceに入力されます。ldapconfig setコマンドは、コンマ区切りの値を取得して、既存のすべての値を新しい値に置き換えます。

ldapStdCompliance

eDirectory LDAPサーバはデフォルトでは、1つのレベルの検索でサブオーディネート参照を返しません。これを有効にするには、ldapStdComplianceを値1にしてオンにする必要があります。この値を設定すると、LDAPサーバは1つのレベルの検索でサブオーディネート参照を返すようになります。

ldapChainSecureRequired

これはブール属性です。有効な場合、他のeDirectoryへのチェーンはセキュアなNCPで行われます。デフォルトでは、この属性は無効です。

ldapEnablePSearch

LDAPサーバで持続的検索機能を有効にするかどうかを指定します。

Values= yes, no

ldapMaximumPSearchOperations

同時に実行できる持続的検索操作の数を制限するための整数値です。0を指定すると、検索操作は無制限になります。

ldapIgnorePSearchLimitsForEvents

持続的検索要求によって最初の結果が返された後で、サイズと時間の制限を無視するかどうかを指定します。

Values= yes, no

この属性がFALSEに設定されている場合、すべての持続的検索操作は検索制限の制約を受けます。サイズと時間のいずれかの制限に達した場合、検索操作は失敗し、該当するエラーメッセージが返されます。

ldapGeneralizedTime

時刻をYYYYMMDDHHmmSS.0Z形式で表示するために汎用タイムを有効にします。

Values= yes, no

ldapPermissiveModify

LDAP変更操作を拡張するためにPermissive Modify Controlを有効にします。存在しない属性を削除したり、属性にすでにある属性値を追加しようとすると、エラーメッセージが表示されることなく操作が完了します。

Values= yes, no

ldapSSLConfig

この属性では、LDAPサーバオブジェクトでTLSプロトコルおよび暗号を定義することができます。デフォルトの設定では、この属性は無効です。この環境設定属性は、次の優先順位に従います。

  • LDAPサーバオブジェクトのldapSSLConfig属性値

  • LDAPグループオブジェクトのldapSSLConfig属性値

この属性でプロトコルと暗号が定義されていない場合、ldapBindRestrictionsで指定されているデフォルトの構成に従います。詳細については、ldapSSLConfig属性を使用してプロトコルと暗号を構成するを参照してください。

メモ:ldapSSLConfig属性は、eDirectory 9.0 SP2以降で使用できます。

ldapGroupSSLConfig

この属性では、LDAPグループオブジェクトでTLSプロトコルおよび暗号を定義することができます。デフォルトの設定では、この属性は無効です。この環境設定属性は、次の優先順位に従います。

  • LDAPサーバオブジェクトのldapSSLConfig属性値

  • LDAPグループオブジェクトのldapSSLConfig属性値

この属性でプロトコルと暗号が定義されていない場合、ldapBindRestrictionsで指定されているデフォルトの構成に従います。詳細については、ldapSSLConfig属性を使用してプロトコルと暗号を構成するを参照してください。

メモ:この属性をldapconfig get/set コマンドで設定する場合、ldapGroupSSLConfigを使用します。ldifファイルで設定する場合には、ldapSSLConfigにLDAPグループオブジェクトDNを指定して使用します。

表 14-1 ldapbindrestrictionsとサイファレベルの組み合わせ値

ldapbindrestriction

証明書

サイファレベル

組み合わせ値

なし

RSA

エクスポート

0

RSA

高

48

RSA

中

32

RSA

低い

16

ECDSA 256/384

SUITEB128

64

ECDSA 256

SUITEB128ONLY

80

ECDSA 384

SUITEB192

96

匿名単純認証を許可しない

RSA

エクスポート

1

RSA

高

49

RSA

中

33

RSA

低い

17

ECDSA 256/384

SUITEB128

65

ECDSA 256

SUITEB128ONLY

81

ECDSA 384

SUITEB192

97

ローカルバインドを許可しない

RSA

エクスポート

2

RSA

高

50

RSA

中

34

RSA

低い

18

ECDSA 256/384

SUITEB128

66

ECDSA 256

SUITEB128ONLY

82

ECDSA 384

SUITEB192

98

匿名単純認証とバインド解除を許可しない

RSA

エクスポート

3

RSA

高

51

RSA

中

35

RSA

低い

19

ECDSA 256/384

SUITEB128

67

ECDSA 256

SUITEB128ONLY

83

ECDSA 384

SUITEB192

99

非認証バインドを許可しない

RSA

エクスポート

4

RSA

高

52

RSA

中

36

RSA

低い

20

ECDSA 256/384

SUITEB128

68

ECDSA 256

SUITEB128ONLY

84

ECDSA 384

SUITEB192

100

匿名の非認証バインドを許可しない

RSA

エクスポート

5

RSA

高

53

RSA

中

37

RSA

低い

21

ECDSA 256/384

SUITEB128

69

ECDSA 256

SUITEB128ONLY

85

ECDSA 384

SUITEB192

101

非匿名単純認証と非認証バインドを許可しない

RSA

エクスポート

6

RSA

高

54

RSA

中

38

RSA

低い

22

ECDSA 256/384

SUITEB128

70

ECDSA 256

SUITEB128ONLY

86

ECDSA 384

SUITEB192

102

匿名単純認証、非匿名単純認証、および非認証バインドを許可しない

RSA

エクスポート

7

RSA

高

55

RSA

中

39

RSA

低い

23

ECDSA 256/384

SUITEB128

71

ECDSA 256

SUITEB128ONLY

87

ECDSA 384

SUITEB192

103

LDAPグループオブジェクトの属性

LDAPクライアントのNetIQ LDAPサーバに対するアクセス方法と、サーバ上の情報の使用方法を設定および管理するには、LDAPグループオブジェクトを使用します。

単純認証にTLSが必要な場合は、「パスワードとの単純バインドにTLSを要求する」を参照してください。この属性は、LDAPサーバがLDAPクライアントからパスワードをクリアテキストで送信することを許可するかどうかを指定します。値は1(はい)または1(いいえ)です。

デフォルトの参照、referralIncludeFilter、referralExludeFilter、およびLDAPサーバによるLDAP参照の処理方法を指定するには、「参照を使用する」を参照してください。

TLSプロトコルと暗号を指定するには、ldapSSLConfig属性を使用できます。詳細については、ldapSSLConfig属性を使用してプロトコルと暗号を構成するを参照してください。

14.5.2 ldapSSLConfig属性を使用してプロトコルと暗号を構成する

eDirectoryを使用すると、LDAPサーバのTLS通信に必要な各種TLSパラメータと暗号を定義できます。

LDAPサーバオブジェクトとグループオブジェクトの両方に関して、ldapSSLConfig属性でプロトコルと暗号をJSON形式で指定できます。たとえば、以下に示されているようにJSON形式でプロトコルと暗号を定義できます。

{
    "Version": 1,
    "Info": {
        "Protocol": "+ALL-SSLv3",
        "Ciphers": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384"
    }
}

メモ:ldapSSLConfig属性で間違った情報を指定すると、ldapBindRestrictionsで指定されているデフォルト構成が使用されます。

暗号を設定する

OpenSSL暗号リスト形式を使用して、独自の暗号リストを構成できます。次の例では、LDAPサーバのTLS通信時に使用される暗号リスト形式を示します。

  • RSA証明書: !CAMELLIA:!DH:!SRP:!MD5:HIGH + aRSA

  • ECDSA証明書: HIGH+aECDSA

  • Suite B 128ビット準拠の暗号スイート(ECDSA証明書使用): ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256

  • Suite B 192ビット準拠の暗号スイート(ECDSA証明書使用): ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES-GCM-SHA

暗号リスト形式について詳しくは、OpenSSL ciphersマニュアルを参照してください。

プロトコルを設定する

eDirectoryでは、TLS通信中に必要なプロトコルのリストを柔軟に設定できます。プロトコルのリストを制御するには、ldapSSLConfig属性で必要なプロトコルをJSON形式で定義します。次のプロトコル文字列を設定できます。

  • SSLv3

  • TLSv1.0

  • TLSv1.1

  • TLSv1.2

  • ALL

各プロトコル文字列の前に「+」または「-」記号を入力する必要があります。「+」記号はプロトコル文字列がeDirectoryで許可されていることを、「-」記号はプロトコル文字列が許可されていないことを示します。次の表に、TLSプロトコル構成のいくつかを示します。

プロトコル構成

説明

+TLSv1.2

TLSv1.2のみを許可します

+ALL-TLSv1.0

TLSv1.0以外のすべてを許可します

+ALL-TLSv1.2-TLSv1.1

SSLv3とTLSv1.0を許可します

+ALL

SSLv3、TLSv1.0、TLSv1.1、TLSv1.2を許可します

メモ:+ALLを指定する場合、プロトコルの前に付けることができるのは「-」記号だけです。

例:

Suite B準拠モードでプロトコルと暗号を構成する

{
    "Version": 1,
    "Info": {
        "Protocol": "+TLSv1.2",
        "Ciphers": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384"
    }
}

上の例では、プロトコルがJSON形式で+ TLSv1.2として定義されています。Suite B準拠モードでは、TLSv1.2のみがサポート対象プロトコルです。

非Suite B準拠モードでプロトコルおよび暗号を設定する

{
    "Version": 1,
    "Info": {
        "Protocol": "+ALL-SSLv3",
        "Ciphers": "HIGH+aECDSA"
    }
}

上の例では、プロトコルがJSON形式で+ALL-SSLv3と定義されています。つまり、TLS通信時にはSSLv3以外のすべてのサポート対象プロトコルが許可されます。