認証にLDAPのみを使用するようにサーバーを設定しましたauthconfig-tui
。すべてがうまくいきますが、実行するとpasswd
2つのパスワードプロンプトが表示されます。
[beamin@rhel6-test-server1 ~]$ passwd
Changing password for user beamin.
Changing password for beamin.
(current) UNIX password:
Enter login(LDAP) password:
なぜ両方が必要ですか?これが起こらないようにすることはできますか?
内容は次のとおりです/etc/pam.d/passwd
。
$ cat /etc/pam.d/passwd
#%PAM-1.0
auth include system-auth
account include system-auth
password substack system-auth
-password optional pam_gnome_keyring.so
include() の内容は次のとおりです/etc/pam.d/system.auth
。
$ cat /etc/pam.d/system-auth
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth sufficient pam_ldap.so use_first_pass
auth required pam_deny.so
account required pam_unix.so broken_shadow
account sufficient pam_succeed_if.so uid < 500 quiet
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3 type=
password sufficient pam_unix.so nullok try_first_pass use_authtok
password sufficient pam_ldap.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
session optional pam_ldap.so
nsswitch.conf
@Nikhilが質問した内容:
$ egrep 'passwd|shadow' /etc/nsswitch.conf
#passwd: db files nisplus nis
#shadow: db files nisplus nis
passwd: files
shadow: files
答え1
これにより/etc/nsswitch.conf
、ユーザー、グループがパスワード、グループ、およびシャドウマップに保存されている場所を見つけるようにシステムに指示します。ローカルファイルであれ、nis/ypであれ、ldapであれ、nsswitch.confです。この変更をサポートする構成は、後でpam構成またはnssライブラリに表示されます。 Linuxのpamはtcp_wrappersとUnix認証をカスタマイズするさまざまな方法もサポートしているので、非常に単純化されました。
実行して/usr/bin/authconfig
ldapを使用するように変更すると、
AuthconfigはPAMファイル(特に)、特に/etc/pam.d/system-authファイルを変更します。認証にLDAPを使用するように構成されたRed Hatシステムでは、一般的なsystem-authファイルは次のとおりです。
次に、「pam_unix」モジュールが呼び出され、ユーザーにパスワードの入力を求められます。 「nullok」および「likeauth」パラメータは、nullパスワードがアカウントをロックするとは見なされず、モジュールがaと呼ばれる場合でも同じ値(「auth」値と「類似」値)を返すことを意味します。資格情報設定モジュール。このモジュールは「必須」ではなく「十分」です。 "pam_ldap"モジュールが呼び出され、"use_first_pass"というメッセージが表示されます。つまり、ユーザーに別のパスワードを要求するのではなく、pam_unixモジュールによって収集されたパスワードを使用するように求められます。このモジュールは「sufficient」と表示され、pam_unix の後ろにあります。つまり、pam_unix がローカルでパスワードを正常に確認すると、pam_ldap はまったく呼び出されません。
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth sufficient pam_ldap.so use_first_pass
auth required pam_deny.so
account required pam_unix.so broken_shadow
account sufficient pam_succeed_if.so uid < 500 quiet
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3
password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok
password sufficient pam_ldap.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
session optional pam_ldap.so
/etc/ldap.conf には以下が必要です。
pam_lookup_policy yes
pam_password exop
/etc/ssh/sshd_configが存在し、構成変更後に再起動する必要があります。
UsePAM yes