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

nss-pam-ldapd ldap групповая фильтрация

Я пытаюсь настроить аутентификацию через ldap для подключений OpenSSH на наших серверах FreeBSD в AWS. Фактический сервер ldap является внешним по отношению к AWS и доступен через Интернет.

У меня возникла проблема с ограничением доступа к серверам. При использовании pam_ldap и nss_ldap с клиентом OpenLDAP (версии PADL) все работает нормально с использованием соответствующего фильтра. Однако вход в систему занимал несколько минут. После некоторого чтения я переключаюсь на nslcd, и это, похоже, сильно ускорило работу, но я не могу заставить фильтры работать должным образом, чтобы ограничить доступ.

Кроме того, я заметил, что у пользователей не присутствует все свое членство в вторичных группах, поэтому я не могу решить эту проблему с помощью другого фильтра pam или функции AllowGroups в файле конфигурации sshd.

Рассматриваемый сервер ldap представляет собой огромную университетскую установку, поэтому существуют тысячи групп.

Я безуспешно пробовал фильтр, похожий на следующий.

фильтр passwd (& (objectClass = posixAccount) (memberOf = CN = customgroup, ou = User Groups, OU = groups, DC = thedomainoftheuniversity, DC = edu))

Любые предложения о том, что может быть не так с этим фильтром, или идеи о том, как отобразить все членства в группах, чтобы я мог использовать другой подход?

Обновление: я узнал, что атрибут memberOf не является частью схемы и что сервер LDAP - это eDirectory. Мне нужно найти способ фильтровать группы по пользователям. Группы действительно реализуют posixGroup и имеют заполненные атрибуты членов.

Мне по-прежнему не удается отобразить вторичные группы для пользователей, но теперь работает ограничение. Эта конфигурация ограничена двумя группами, а также фильтрацией на основе атрибутов OU в записи пользователя.

pam_authz_search (&(objectClass=posixGroup)(|(cn=wd40)(cn=dev specs))(member=$dn))

pagesize 1000
referrals off
filter passwd (&(objectClass=posixAccount)(uid=*)(|(ou=Dev Svcs & Strategic Solutions - Faculty and Staff)(ou=Campaign Planning & Services - Faculty and Staff)))
map     passwd  homeDirectory "/home/$uid"
map     passwd loginShell "/bin/tcsh"
map     passwd gidNumber "20"
filter group (&(objectClass=posixGroup)(|(gidNumber=2281499)(gidNumber=2219401))