web-dev-qa-db-ja.com

ldapユーザーにパスワードの変更を強制する

私はCentOS-ds(Redhat-DSおよび389ディレクトリサーバーをベースとしています)を使用しています。

私はLDAPをセットアップしており、ユーザーの認証に取り組んでいます(そしてSudo、これは便利な機能です!)。 passwdでさえ、Ldapに保存されているパスワードを変更するためにうまく機能しています。ただし、少し問題があります。サーバーにログインした後、すべてのユーザーアカウントに新しいパスワードを作成させるにはどうすればよいですか?私がこれを行う通常の方法:

chage -d 0 username

「LDAP化」されていないようです。次の(ssh)ログイン時に人々に新しいパスワードを作成するように強制するにはどうすればよいですか?ユーザーアカウントを作成する必要がありますが、自分で設定したパスワードを他人に知られたくないのですが。

*編集-パスワードがリセットされたときにパスワードの変更を強制するようにLDAPサーバーを設定しました。しかし、これをトリガーする正しい方法でパスワードを「リセット」する方法を見つけることができないようです。 (私が見つけることができるのは、Directory Managerとしてログインしてパスワードを変更することだけです)* edit2。この部分が判明したら、多くのマシンをLDAPに移行するので、LDAP認証をセットアップするためにrootとして実行するスクリプトを作成しました。おそらく私はここで何かを逃していますか? (編集されたサーバーとbasedn。)

#!/bin/sh
#
authconfig --enableldap --enableldapauth --enablemkhomedir --ldapserver=<server1>,<server2> --ldapbasedn="<basedn>" --update
echo 'sudoers:    files ldap' >> /etc/nsswitch.conf
echo 'base <basedn>
timelimit 120
bind_policy soft
bind_timelimit 120
idle_timelimit 3600
uri ldap://<server1>/  
uri ldap://<server2>/
ssl no
tls_cacertdir /etc/openldap/cacerts 
pam_password md5
sudoers_base    ou=SUDOers,<basedn>
' > /etc/ldap.conf
7
Brian

私は解決策を見つけました:ユーザーのLDAPエントリで、setShadowLastChange = 0これにより、ユーザーはLDAPパスワードをリセットする必要があります。ただし、別のバグもあり、LDAPサーバーのアクセス許可(ACL)を変更する必要があります(デフォルトのAllow Self entry modification on OU = People)もターゲットShadownLastChangeを変更できるようにします。

それ以外の場合、ユーザーは値を変更できず、値はゼロのままなので、ログインするたびにパスワードをやり直す必要があります。

4
Brian

@Brianがshadowlastchange = 0を変更することは実際には悪い考えです。ほとんどのLDAPクライアントは、shadowlastchange値の値を変更するように設計されていません。したがって、ログインするたびにパスワードを変更する無限ループに陥ります。

一部のLDAPクライアント

nss-pam-ldapd-この機能は最近nss-pam-ldapdアップストリームプロジェクトに追加されましたログ:パスワードの変更時にユーザーのshadowLastChange属性を更新してみてください(最初に属性が存在する場合にのみ更新が試行されます)- http://lists.arthurdejong.org/nss-pam-ldapd-commits/2010/msg00302.html

sssd-
それでもRFE https://bugzilla.redhat.com/show_bug.cgi?id=739312

samba-ldap-tools-拒否されました

0
atolani

PasswordMustChange属性を試す

オンの場合、この属性では、ユーザーが最初にディレクトリにログインするとき、またはディレクトリマネージャによってパスワードがリセットされた後に、パスワードを変更する必要があります。ユーザー定義のパスワードが無効になっている場合でも、ユーザーはパスワードを変更する必要があります。この属性がオフに設定されている場合、Directory Managerによって割り当てられたパスワードは明確な規則に従わず、発見が困難になります。この属性はデフォルトでオフになっています。

参照:- http://www.centos.org/docs/5/html/CDS/ag/8.0/User_Account_Management-Managing_the_Password_Policy.html

0
atolani