Назад | Перейти на главную страницу

Клиент Centos аутентифицируется против zentyal DC через ldap

У меня небольшая проблема. 3 месяца назад мы развернули zentyal dc на моем рабочем месте, потому что это был хороший способ аутентификации Windows, Linux и Mac на одном сервере. Я получил аутентификацию на окнах, работающую как шарм. клиенты ubuntu я аутентифицировал через ldap, и они работали нормально, но у меня возникла проблема со следующей ОС.

на наших клиентах centos я сначала попытался реализовать те же конфигурации ldap, что и на наших клиентах ubuntu. Затем я попытался аутентифицироваться с помощью winbind и kerberos. yaii это сработало, но возникла большая проблема. Когда я запустил getent passwd, я обнаружил, что UID и GID не совпадают с zentyal DC, что означает, что когда i nfs монтирует домашнюю папку, у пользователей нет разрешения на вход в них, потому что домашние папки имеют UID и GID zentyal DC. Я выяснил, что это как-то связано с idmaps. Я пробовал разные подходы, но в конце концов сдался.

Вот почему я думаю, что мне нужно попробовать ldap еще раз, поскольку он работал на клиентах ubuntu. Итак, у меня вопрос: как мне настроить машину centos 6-7 для аутентификации против zentyal DC через ldap?

мой ldap.conf на машине ubuntu выглядит так:

base dc=mosek,dc=zentyal
uri ldap://172.16.0.5:390
ldap_version 3
binddn cn=zentyalro,dc=mosek,dc=zentyal
bindpw secretpasswd
scope sub
bind_policy soft
pam_password md5
nss_base_passwd         ou=Users,dc=mosek,dc=zentyal?one
nss_base_passwd         ou=Computers,dc=mosek,dc=zentyal?one
nss_initgroups_ignoreusers avahi,avahi-autoipd,backup,bin,colord,daemon,dnsmasq$

как мне преобразовать эту конфигурацию во что-то, что может использовать centos?

Что я сделал до сих пор:

побежал authconfig-tui и настроить его для ldap

/etc/openldap/ldap.conf и /etc/ldap.conf на клиенте centos:

TLS_CACERTDIR /etc/openldap/cacerts
SASL_NOCANON    on
URI ldap://172.16.0.5:390
BASE dc=mosek,dc=zentyal

/etc/nsswitch.conf на клиенте centos:

passwd:     files sss ldap
shadow:     files sss ldap
group:      files sss ldap

hosts:      files dns

bootparams: nisplus [NOTFOUND=return] files

ethers:     files
netmasks:   files
networks:   files
protocols:  files
rpc:        files
services:   files sss

netgroup:   files sss ldap

publickey:  nisplus

automount:  files ldap
aliases:    files nisplus

запущенная команда ldapsearch -D "uid=tomas,ou=Users,dc=mosek,dc=zentyal" -Z -LLL -W uid=tomas

вывод:

ldap_start_tls: Protocol error (2)
    additional info: unsupported extended operation
Enter LDAP Password: 
dn: uid=tomas,ou=Users,dc=mosek,dc=zentyal
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: passwordHolder
objectClass: systemQuotas
objectClass: krb5Principal
objectClass: krb5KDCEntry
objectClass: shadowAccount
objectClass: zentyalSambaLink
uid: tomas
loginShell: /bin/bash
gidNumber: 1901
homeDirectory: /home/tomas
krb5PrincipalName: tomas@MOSEK.ZENTYAL
krb5MaxLife: 86400
krb5MaxRenew: 604800
krb5KDCFlags: 126
uidNumber: 3000044
....

перезагрузил клиент, но по-прежнему нет пользователя с именем tomas при выполнении команды id tomas

РЕДАКТИРОВАТЬ:

Я отредактировал свой /etc/nslcd.conf чтобы выглядеть так:

# The user and group nslcd should run as.
uid nslcd
gid ldap

uri ldap://172.16.0.5:390

ldap_version 3

base dc=mosek,dc=zentyal

binddn cn=zentyalro,dc=mosek,dc=zentyal
bindpw secretpassword

# The distinguished name to perform password modifications by root by.
#rootpwmoddn cn=admin,dc=example,dc=com

# The default search scope.
scope sub

base   group  ou=Groups,dc=mosek,dc=zentyal?one
base   passwd ou=Users,dc=mosek,dc=zentyal?one

По-прежнему нет пользователей

РЕДАКТИРОВАТЬ:

Я попытался запустить nslcd в режиме отладки и получил следующее:

[root@centosy ~]# nslcd -d
nslcd: DEBUG: add_uri(ldap://172.16.0.5:390)
nslcd: version 0.8.13 starting
nslcd: DEBUG: unlink() of /var/run/nslcd/socket failed (ignored): No such file or directory
nslcd: DEBUG: initgroups("nslcd",55) done
nslcd: DEBUG: setgid(55) done
nslcd: DEBUG: setuid(65) done
nslcd: accepting connections

после последней строки он просто застревает, поэтому он никогда не поднимает сервер ldap