LDAP Linux Auth Client: различия между версиями
Sirmax (обсуждение | вклад) |
Sirmax (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии этого же участника) | |||
Строка 71: | Строка 71: | ||
tls_cacertfile /etc/ssl/certs/rootca.crt |
tls_cacertfile /etc/ssl/certs/rootca.crt |
||
</PRE> |
</PRE> |
||
+ | |||
− | Аналогично |
||
+ | |||
+ | Если есть желание что бы getent shadow показывал хеши паролей - то нужно добавить опцию |
||
+ | <PRE> |
||
+ | map shadow userPassword userPassword |
||
+ | </PRE> |
||
+ | |||
+ | |||
+ | |||
+ | Аналогично предыдущему варианту настройки: |
||
/etc/nsswitch.conf |
/etc/nsswitch.conf |
||
<PRE> |
<PRE> |
||
Строка 80: | Строка 89: | ||
+ | |||
− | Если используется |
||
+ | Для PAM нужен /etc/ldap.conf и /etc/ldap.secret (с паролем) |
||
+ | <PRE> |
||
+ | uri ldaps://ldap-srv.example.com |
||
+ | base dc=fuel_domain |
||
+ | ldap_version 3 |
||
+ | rootbinddn uid=nssproxy-node3,ou=service_users,dc=customer_organization,dc=fuel_domain |
||
+ | tls_cacertfile /etc/ssl/certs/rootca.crt |
||
+ | </PRE> |
||
+ | |||
+ | После окончания настройки - рестартовать оба сервиса, <B>nscd</B> и <B>nslcd</B> |
||
+ | <PRE> |
||
+ | /etc/init.d/nslcd restart |
||
+ | * Restarting LDAP connection daemon nslcd |
||
+ | </PRE> |
||
+ | <PRE> |
||
+ | root@node-2:/etc# /etc/init.d/nscd start |
||
+ | * Starting Name Service Cache Daemon nscd |
||
+ | |||
+ | </PRE> |
||
==Автосоздание домашних директорий== |
==Автосоздание домашних директорий== |
||
Строка 95: | Строка 123: | ||
* https://bugs.launchpad.net/ubuntu/+source/libnss-ldap/+bug/1024475 |
* https://bugs.launchpad.net/ubuntu/+source/libnss-ldap/+bug/1024475 |
||
* https://blog.shichao.io/2015/05/21/setup_nss_ldapd_on_ubuntu_14_04.html |
* https://blog.shichao.io/2015/05/21/setup_nss_ldapd_on_ubuntu_14_04.html |
||
+ | * https://wiki.debian.org/LDAP/NSS#Configuring_LDAP_Authentication |
Текущая версия на 15:17, 20 мая 2016
Клиентская часть - линуксбокс который будет авторизоваться в LDAP
Есть 2 варианта - простой и плохо работающий и второй который вроде-бы работает лучше
Простой но проблемный
Настройка описанным ниже способом хорошо работает но в случае потери связи с сервером LDAP залогиниться не смогут даже локальные пользователи из-за таймаутов. Кроме того, попытка перезагрузить систему приведет к тому, что загрузка займет очень много времени. После дебага я выяснил, что при исполнении каждой комманды производиться проверка принадлежности пользователя к группе, что при неработающем LDAP занимает много времени. В результате это выглядит как очень очень медленная загрузка системы (часы!)
DEBIAN_FRONTEND=noninteractive apt-get install libnss-ldap
Sudosh2
dpkg -i /root/sudosh2_2.0.1-1_amd64.deb
/etc/shells
/usr/bin/sudosh
/etc/nsswitch.conf
#passwd: compat #group: compat #shadow: compat passwd: ldap files group: ldap files shadow: ldap files
/etc/ldap.conf
udi ldap://:10.20.0.3/ base dc=fuel_domain ldap_version 3 pam_password md5
/etc/ssh/sshd_conf
PasswordAuthentication yes
Альтернативный вариант настройки
- libnss-ldapd - замена libnss-ldap
- nscd - кеширующий процесс и на время дебага его лучше отключать.
export DEBIAN_FRONTEND=noninteractive apt-get -y install libpam-ldap nscd ldap-utils libnss-ldapd
Конфигурация - /etc/nslcd.conf
uid nslcd gid nslcd uri ldaps://ldap-srv.example.com base dc=fuel_domain ldap_version 3 binddn uid=nssproxy-node3,ou=service_users,dc=customer_organization,dc=fuel_domain bindpw node3 tls_reqcert never nss_initgroups_ignoreusers ALLLOCAL bind_timelimit 3 timelimit 3
Если используется TLS то нужен сертификат (подробнее в секции про TLS)
tls_cacertfile /etc/ssl/certs/rootca.crt
Если есть желание что бы getent shadow показывал хеши паролей - то нужно добавить опцию
map shadow userPassword userPassword
Аналогично предыдущему варианту настройки: /etc/nsswitch.conf
passwd: ldap files group: ldap files shadow: ldap files
Для PAM нужен /etc/ldap.conf и /etc/ldap.secret (с паролем)
uri ldaps://ldap-srv.example.com base dc=fuel_domain ldap_version 3 rootbinddn uid=nssproxy-node3,ou=service_users,dc=customer_organization,dc=fuel_domain tls_cacertfile /etc/ssl/certs/rootca.crt
После окончания настройки - рестартовать оба сервиса, nscd и nslcd
/etc/init.d/nslcd restart * Restarting LDAP connection daemon nslcd
root@node-2:/etc# /etc/init.d/nscd start * Starting Name Service Cache Daemon nscd
Автосоздание домашних директорий
Нужно в любом случае
/etc/pam.d/common-account:
session required pam_mkhomedir.so skel=/etc/skel/ umask=0022