[Comm] Авторизация из /etc/passwd и ldap одновременно: как правильно?
Eugene Prokopiev
=?iso-8859-1?q?john_=CE=C1_rmts=2Edonpac=2Eru?=
Пн Апр 19 11:08:51 MSD 2004
Здравствуйте!
Как сделать так, чтобы в системе могли авторизоваться пользователи,
прописанные как в /etc/passwd, так и в ldap?
On Saturday 17 April 2004 12:58 Denis S. Filimonov поделился своими
рабочими конфигами:
system-auth:
#%PAM-1.0
auth required /lib/security/pam_ldap.so
#auth required /lib/security/pam_tcb.so shadow fork nullok
account required /lib/security/pam_access.so
account required /lib/security/pam_ldap.so
#account required /lib/security/pam_tcb.so shadow fork
password required /lib/security/pam_ldap.so
#password required /lib/security/pam_passwdqc.so
min=disabled,24,12,8,7 max=40 passphrase=3 match=4 similar=deny
random=42 enforce=users retry=3
#password required /lib/security/pam_tcb.so use_authtok
shadow fork prefix=$2a$ count=8 write_to=tcb
#session required /lib/security/pam_tcb.so
session required /lib/security/pam_limits.so
system-auth-use_first_pass:
#%PAM-1.0
auth required /lib/security/pam_ldap.so use_first_pass
#auth required /lib/security/pam_tcb.so shadow fork
nullok use_first_pass
password required /lib/security/pam_ldap.so
#password required /lib/security/pam_tcb.so use_authtok
shadow fork prefix=$2a$ count=8 write_to=tcb
Насколько я понял, в таком варианте используется только ldap. Мне же
нужно сохранить и то, что было, добавив пользователей из ldap. Написал
следующее:
system-auth:
#%PAM-1.0
auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_tcb.so shadow fork
prefix=$2a$ count=8 nullok
account sufficient /lib/security/pam_ldap.so
account required /lib/security/pam_tcb.so shadow fork
password required /lib/security/pam_passwdqc.so
min=disabled,24,12,8,7 max=40 passphrase=3 match=4 similar=deny
random=42 enforce=users retry=3
password required /lib/security/pam_tcb.so use_authtok
shadow fork prefix=$2a$ count=8 write_to=tcb
session required /lib/security/pam_tcb.so
session required /lib/security/pam_limits.so
system-auth-use_first_pass:
#%PAM-1.0
auth sufficient /lib/security/pam_ldap.so
auth required /lib/security/pam_tcb.so shadow fork
prefix=$2a$ count=8 nullok use_first_pass
password required /lib/security/pam_tcb.so use_authtok
shadow fork prefix=$2a$ count=8 write_to=tcb
Т.е. просто для методов авторизации auth и account добавил sufficient
/lib/security/pam_ldap.so
После этого получилось следующее:
1. По ssh все равно пускают только пользователей из /etc/passwd,
пользователей из ldap посылают подальше со следующими словами:
Apr 19 10:51:09 john-ws pam_tcb[2060]: sshd: Authentication failed for
vasya from (uid=0)
Apr 19 10:51:11 john-ws sshd[2061]: Failed password for vasya from
192.168.46.2 port 4631
2. su - могут использовать как ldap, так и /etc/passwd-пользователи, но
для su - ldap-user пароль надо вводить один раз, а для su - passwd-user
необходимо вводить пароль дважды:
[john на john-ws john]$ su - john
Password:
Password:
[john на john-ws john]$ su - vasya
Password:
-bash-2.05b$
sshd выглядит так:
#%PAM-1.0
auth required /lib/security/pam_userpass.so
auth required /lib/security/pam_stack.so
service=system-auth-use_first_pass
auth required /lib/security/pam_nologin.so
account required /lib/security/pam_stack.so service=system-auth
password required /lib/security/pam_stack.so
service=system-auth
session required /lib/security/pam_stack.so service=system-auth
su выглядит так:
#%PAM-1.0
auth sufficient /lib/security/pam_rootok.so
# Uncomment the following line to implicitly trust users in the "wheel"
group.
#auth sufficient /lib/security/pam_wheel.so debug use_uid
group=wheel trust
# Uncomment the following line to require a user to be in the "wheel" group.
#auth required /lib/security/pam_wheel.so debug use_uid group=wheel
# Uncomment the following line to implicitly trust users with same user id.
#auth sufficient /lib/security/pam_sameuid.so debug
auth required /lib/security/pam_stack.so service=system-auth
account required /lib/security/pam_stack.so service=system-auth
password required /lib/security/pam_deny.so
session required /lib/security/pam_stack.so service=system-auth
session optional /lib/security/pam_xauth.so
я их не правил.
Что я сделал неправильно и как сделать правильно?
--
С уважением, Прокопьев Евгений
Подробная информация о списке рассылки community