authconfig-tui
を使用して、認証にLDAPのみを使用するようにサーバーを設定しました。すべてうまくいきますが、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
インクルード(/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
@Nikhilからのnsswitch.conf
の内容:
$ egrep 'passwd|shadow' /etc/nsswitch.conf
#passwd: db files nisplus nis
#shadow: db files nisplus nis
passwd: files
shadow: files
/etc/nsswitch.conf
これは、passwd、group、shadowのマップでユーザー、グループのストアを探す場所をシステムに指示します。ローカルファイル、nis/yp、またはldapのいずれであっても、それはnsswitch.confです。この変更をサポートする構成は、後でpam構成またはnssライブラリのいずれかになります。 Linux上のpamは、さまざまな方法でUNIX認証のカスタマイズとともにtcp_wrappersもサポートするため、単純化されます。
実行して変更したら/usr/bin/authconfig
ldapを使用するには、
Authconfigは、(とりわけ)PAMファイル、特にファイル/etc/pam.d/system-authを変更します。 LDAPを使用して認証するように構成されたRedHatシステム上の一般的なsystem-authファイルは次のようになります。
次に「pam_unix」モジュールが呼び出され、ユーザーにパスワードの入力を求める作業を行います。引数「nullok」および「likeauth」は、空のパスワードがロックされたアカウントとして扱われず、モジュールが次のように呼び出された場合でも同じ値(「auth」値に「like」である値)を返すことを意味します。資格情報設定モジュール。このモジュールは「十分」であり、「必須」ではないことに注意してください。 'pam_ldap'モジュールが呼び出され、 "use_first_pass"に指示されます。つまり、ユーザーに別のパスワードの入力を求める代わりに、pam_unixモジュールによって収集されたパスワードを使用するように指示されます。このモジュールが「十分」とマークされ、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