Go to main content
Oracle® Solaris 11.3 ディレクトリサービスとネームサービスでの作業: LDAP

印刷ビューの終了

更新: 2016 年 11 月
 
 

ディレクトリサーバーを構成してアカウント管理を有効にする

pam_ldap および pam_unix_* モジュールを使用するクライアントにアカウント管理を実装できます。


Caution

注意  -  同じ LDAP ネームドメイン内で pam_ldappam_unix_* モジュールの両方を使用しないでください。すべてのクライアントが pam_ldap を使用するか、またはすべてのクライアントが pam_unix_* モジュールを使用するかのどちらかです。この制限は、各モジュールを使用するために専用の LDAP サーバーが必要であることを示す場合があります。


pam_ldap モジュールを使用するクライアントのアカウント管理の有効化

pam_ldap が正しく動作するには、サーバー上でパスワードとアカウントのロックアウトポリシーを正しく構成する必要があります。ディレクトリサーバーコンソール、または ldapmodify コマンドを使用して、LDAP ディレクトリのアカウント管理ポリシーを構成できます。手順と詳細については、Oracle Directory Server Enterprise Edition の管理ガイド (http://docs.oracle.com/cd/E29127_01/doc.111170/e28972/toc.htm)を参照してください。


注 -  ディレクトリサーバーでの制御は 1.3.6.1.4.1.42.2.27.9.5.8 です。この制御は、デフォルトで有効になっています。デフォルトの制御構成を変更するには、ディレクトリサーバー上で ACI を追加します。例:
dn: oid=1.3.6.1.4.1.42.2.27.9.5.8,cn=features,cn=config
objectClass: top
objectClass: directoryServerFeature
oid:1.3.6.1.4.1.42.2.27.9.5.8
cn:Password Policy Account Usable Request Control
aci: (targetattr != "aci")(version 3.0; acl "Account Usable";
allow (read, search, compare, proxy)
(groupdn = "ldap:///cn=Administrators,cn=config");)
creatorsName: cn=server,cn=plugins,cn=config
modifiersName: cn=server,cn=plugins,cn=config

プロキシユーザーのパスワードが期限切れになっていないことを確認する必要があります。proxy パスワードが期限切れになった場合、 proxy 資格レベルを使用するクライアントはサーバーからネームサービス情報を取り出すことができません。proxy ユーザーのパスワードの期限が切れないことを保証するために、次のスクリプトを記述して proxy アカウントを変更します。

# ldapmodify -h ldapserver -D administrator-DN \
-w administrator-password <<EOF
dn: proxy-user-DN
DNchangetype: modify
replace: passwordexpirationtime
passwordexpirationtime: 20380119031407Z
EOF

pam_ldap アカウント管理は、Oracle Directory Server Enterprise Edition に依存してユーザーのパスワード有効期限およびアカウント期限切れ情報を保守し、ユーザーに提供します。ディレクトリサーバーは、シャドウエントリの対応するデータを解釈してユーザーアカウントを検証することはしません。ただし、pam_unix_* モジュールはシャドウデータを検査して、アカウントがロックされているかどうか、またはパスワードの有効期限を判定します。シャドウデータが LDAP ネームサービスやディレクトリサーバーによって最新の状態に保持されるわけではないため、これらのモジュールは、シャドウデータに基づいてアクセスを許可するべきではありません。シャドウデータは、proxy 識別情報を使用して取得されます。そのため、proxy ユーザーに userPassword 属性への読み取りアクセスを許可しないでください。proxy ユーザーの userPassword への読み取りアクセス権を拒否することにより、PAM サービスが無効なアカウントの検証を行うことはなくなります。

pam_unix_* モジュールを使用するクライアントのアカウント管理の有効化

LDAP クライアントがアカウント管理に pam_unix_* モジュールを使用することを許可するには、シャドウデータの更新を有効にするようにサーバーを設定する必要があります。pam_ldap のアカウント管理とは異なり、pam_unix_* モジュールには追加の構成手順が必要ありません。idsconfig コマンドを使用して、pam_unix_* モジュールを構成できます。

使用例 4  既存のクライアントプロファイルの使用

次の例は、既存のクライアントプロファイルを使用した idsconfig コマンドの出力を示します。

# /usr/lib/ldap/idsconfig

It is strongly recommended that you BACKUP the directory server
before running idsconfig.

Hit Ctrl-C at any time before the final confirmation to exit.

Do you wish to continue with server setup (y/n/h)? [n] y
Enter the JES Directory Server's  hostname to setup: myserver
Enter the port number for DSEE (h=help): [389]
Enter the directory manager DN: [cn=Directory Manager]
Enter passwd for cn=Directory Manager :
Enter the domainname to be served (h=help): [west.example.com]
Enter LDAP Base DN (h=help): [dc=west,dc=example,dc=com]
Checking LDAP Base DN ...
Validating LDAP Base DN and Suffix ...
sasl/GSSAPI is not supported by this LDAP server

Enter the profile name (h=help): [default] WestUserProfile

Profile 'WestUserProfile' already exists, it is possible to enable
shadow update now. idsconfig will exit after shadow update
is enabled. You can also continue to overwrite the profile
or create a new one and be given the chance to enable
shadow update later.
Just enable shadow update (y/n/h)? [n] y
Add the administrator identity (y/n/h)? [y]
Enter DN for the administrator: [cn=admin,ou=profile,dc=west,dc=example,dc=com]
Enter passwd for the administrator:
Re-enter passwd:
ADDED: Administrator identity cn=admin,ou=profile,dc=west,dc=example,dc=com.
Proxy ACI LDAP_Naming_Services_proxy_password_read does not
exist for dc=west,dc=example,dc=com.
ACI SET: Give cn=admin,ou=profile,dc=west,dc=example,dc=com read/write access
to shadow data.
ACI SET: Non-Admin access to shadow data denied.

Shadow update has been enabled.
使用例 5  新しいプロファイルの作成

次の例は、あとから使用するために新しいプロファイルを作成する idsconfig コマンドの出力を示します。関連する出力のみが表示されます。

# /usr/lib/ldap/idsconfig

It is strongly recommended that you BACKUP the directory server
before running idsconfig.

Hit Ctrl-C at any time before the final confirmation to exit.

Do you wish to continue with server setup (y/n/h)? [n] y
Enter the JES Directory Server's  hostname to setup: myserver
Enter the port number for DSEE (h=help): [389]
Enter the directory manager DN: [cn=Directory Manager]
Enter passwd for cn=Directory Manager :
Enter the domainname to be served (h=help): [west.example.com]
Enter LDAP Base DN (h=help): [dc=west,dc=example,dc=com]
Checking LDAP Base DN ...
Validating LDAP Base DN and Suffix ...
sasl/GSSAPI is not supported by this LDAP server

Enter the profile name (h=help): [default] WestUserProfile-new
Default server list (h=help): [192.168.0.1]
.
.
.
Do you want to enable shadow update (y/n/h)? [n] y
              Summary of Configuration

1  Domain to serve               : west.example.com
2  Base DN to setup              : dc=west,dc=example,dc=com
Suffix to create          : dc=west,dc=example,dc=com
3  Profile name to create        : WestUserProfile-new
.
.
.
19  Enable shadow update          : TRUE
.
.
.
Enter DN for the administrator: [cn=admin,ou=profile,dc=west,dc=example,dc=com]
Enter passwd for the administrator:
Re-enter passwd:


WARNING: About to start committing changes. (y=continue, n=EXIT) y

1. Changed timelimit to -1 in cn=config.
2. Changed sizelimit to -1 in cn=config.
.
.
.
11. ACI for dc=test1,dc=mpklab,dc=sfbay,dc=sun,dc=com modified to
disable self modify.
.
.
.
15. Give cn=admin,ou=profile,dc=west,dc=example,dc=com write permission for shadow.
...