У меня небольшая проблема. 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