LDAP Linux Auth Client: различия между версиями

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску
Строка 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>
   
 
==Автосоздание домашних директорий==
 
==Автосоздание домашних директорий==

Версия 15:12, 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

Автосоздание домашних директорий

Нужно в любом случае

/etc/pam.d/common-account:

session    required   pam_mkhomedir.so skel=/etc/skel/ umask=0022


Ссылки