LINUX.ORG.RU

9
Всего сообщений: 85

Ejabberd + PAM + Kerberos

Добрый день, есть ejabberd сервер, на нем настроена аутентификация PAM, так же есть kerberos в связке c openldap, необходимо их как то соединить. Самым простым способом оказался PAM, но дело в том что в документации ejabberd конфиг: #%PAM-1.0 auth sufficient pam_unix.so likeauth nullok nodelay account sufficient pam_unix.so

Работает только для локальных пользователей, может кто-то поделиться конфигом PAM что бы можно было нормально работать через керберос?

 , , ,

archonr ()

Синхронизация пользователей ldap AD и openLDAP

Добрый день, уважаемые участники форума. Сразу скажу, что я новичок в linux - не судите строго. Итак суть вопроса.

Развернут ldap AD с пользователями. Развернут ldap OpenLDAP (пустой) Развернуты некоторые сервисы, которые подключены к ldap-у OpenLDAP. Права пользователям (чтение, чтение/запись) раздаются по группам ldap-а OpenLDAP в которой находятся пользователи.

Задача: необходимо сделать так, чтобы пользователь мог залогиниться под своей доменной учеткой в сервисе, при этом автоматически эта учетка должна создаваться в openldap и попадать в определенную группу openldap-а (либо чтобы создавалась учетка в openldap, а добавление учетки в группу происходило в ручную).

Соответственно необходимо, чтобы любые изменения атрибутов доменной учетной записи синхронизировались с атрибутами учетной записи openldap.

Подскажите пожалуйста реально ли это реализовать? Знаю, что существуют такие понятия как проксирование, но подозреваю, что это не мой вариант, при проксировании доменный пользователь не создается же в базе OpenLDAP или я ошибаюсь?

Смог поднять проксирование, все работает, но не понимаю куда двигаться дальше. Как заставить openldap автоматом добавлять пользователей в свою базу.

OS: CentOS7

 , , , ,

Palazur ()

Как сделать OpenLDAP SSH авторизацию юзеров через публичный ключ с PAM ?

И так сервак OpenLDAP. На него добавлена схема dn: cn=openssh-lpk,cn=schema,cn=config
objectClass: olcSchemaConfig
cn: openssh-lpk
olcAttributeTypes: ( 1.3.6.1.4.1.24552.500.1.1.1.13 NAME 'sshPublicKey'
DESC 'MANDATORY: OpenSSH Public key'
EQUALITY octetStringMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.40 )
olcObjectClasses: ( 1.3.6.1.4.1.24552.500.1.1.2.0 NAME 'ldapPublicKey' SUP top AUXILIARY
DESC 'MANDATORY: OpenSSH LPK objectclass'
MAY ( sshPublicKey $ uid )
)

ldapadd -Y EXTERNAL -H ldapi:/// -f openssh-lpk.ldif
на юзера добавлен ключ.

На клиенте: /etc/ldap.conf
--- base dc=test
uri ldap://ldap.test
ldap_version 3
rootbinddn cn=admin,dc=test
pam_password md5

### /etc/nsswitch.conf
---- passwd: ldap compat
group: ldap compat
shadow: ldap compat

hosts: files dns
networks: files

protocols: db files
services: db files
ethers: db files
rpc: db files

netgroup: nis

#### /etc/pam.d/common-session
------- session [default=1] pam_permit.so
session requisite pam_deny.so
session required pam_permit.so
session optional pam_umask.so
session required pam_unix.so
session optional pam_ldap.so
session optional pam_systemd.so
session required pam_mkhomedir.so skel=/etc/skel umask=0022


И дальше самое интересное для того что бы при авторизации клиент брал данные о ключе я довил скрипт с ldapsearch который тянет из базы ключ и в sshd добавил его вызов.

НО! В это случае с авторизацие по ключу абсолютно игнорятся все лимиты в /etc/security/access.conf


Вопрос: Как сделать так что бы и авторизация по ключу работала и лимитировать по группам вход можно было.

 , ,

mercenaris ()

взаимодействие с ldap-сервером

здравствуйте, получаю в http-ответе kerberos-зашифрованный токен... нужно по этому токену получить определенную информацию для веб-сервера от ldap-сервера(в моем случае active directory). далее чтобы, например, ldap-сервер прислал полномочия клиента приславшего этот токен, что нужно делать? не шарю в этом, подскажите хотя бы с чего начать... я так понимаю надо юзать GSSAPI, расшифровать токен хотя бы. Используемый язык c++ или си, платформа linux x86_64

 , , ,

xperious ()

Имя пользователя xmpp, отображаемое в списке контактов (из ldap)

Здравствуйте, уважаемые.

Ставлю сервер openfire, внутренная БД, подключаю к openldap.

В ldap'е есть группа cn=xmpp, и memberOf'ами идут члены группы.

Пользователь группы выглядит так:

dn: uid=user,ou=People,dc=domen,dc=ru
cn: user
description:: 0YLQstC+0YDRh9C10YHRgtCy0L4=
gidnumber: 11000
givenname:: 0JPRgNC40LPQvtGA0LjQuQ==
homedirectory: /home/user
mail: mail@yandex.ru
objectclass: inetOrgPerson
objectclass: organizationalPerson
objectclass: person
objectclass: posixAccount
sn:: 0JTQsNC90LjQu9C+0LI=
uid: user

При этом givenName - это имя на русском (условно, Иван), а sN - это фамилия (Иванов)

При установке сервера на этапе User Mapping выбираю Username Field - uid, Search fields - uid и User Filter - (&(uid={0})(memberOf=cn=xmpp,ou=Group,dc=domen,dc=ru))

В User Profiles (vCard) указываю Name - {givenName} {sN} и Email - {mail}

На следующем этапе выбираю Group Filter - (cn=xmpp)

При таких настройках, пользователь видит, что он зашел под своим именем и фамилией, а не под uid'ом. А вот других пользователей в списке контактов, он видит под uid'ами. Т.е. себя он видит как Ивана Иванова, а остальных как user1, user2 и т.д.

Где можно поменять параметр имени отображаемого в списке контактов пользователя, чтобы в списке контактов отображался Петр Петров и т.д.?

 , ,

manik207 ()

Openldap и Active Directory в одном домене

Пожалуйста подскажите:

Имеется Active Directory и openldap в одном домене, часть пользователей в AD, вторая часть в Openldap.

Вопрос - при bind пользователя, если он найден - авторизовать, не найден в openldap проксировать в AD для авторизации.

PS: пользователи разбросаны по дереву, потому я не могу прописать только определенную OU проксировать.

Буду очень благодарен за наставление

 

treeno ()

SuiteCRM и LDAP-аутентификация через группу

Есть настроенный openLDAP, пользователи вида uid=user в ou=People, группы вида cn=group в ou=Group.

Пользователи входят в группу посредством memberOf, т.е. в группе есть member'ы и они перечислены списком.

У каждого пользователя только в скрытых атрибутах (смотрю через phpldapadmin) можно найти атрибут memberOf и в нем перечислены все группы, member'ом которых он является.

Такая архитектура групповой аутентификации работает в Redmine и на других сервисах. Пароли верные, группы одинаковые. Пользователи в группах есть.

По suiteCRM.

Благодаря вот этой теме, настроила аутентификацию через LDAP.

Не могу настроить авторизацию только пользователей и разрешенной группы

Настройки работающей LDAP-аутентификации (без групп) выглядят так:

Включить LDAP-аутентификацию - Включено
Сервер: ldap.domen.ru
Порт: 389
DN пользователя: dc=domen,dc=ru
Параметры: пусто
Bind-атрибут: dn
Login-атрибут:uid
Членство в группе: Отключено
Аутентификация: Включена
Имя пользователя: uid=suitecrm,ou=System,ou=People,dc=domen,dc=ru
Пароль: пароль_от_пользователя
Автоматическое создание пользователей: Включено
С такими настройками аутентификация проходит на ура.

Когда включаю галочку Членство в группе, и заполняю поля:

DN группы: ou=Group,dc=domen,dc=ru
Название группы: cn=suitecrm,ou=Group,dc=domen,dc=ru
Атрибут пользователя: uid (пробовала dn)
Атрибут группы: member (пробовала memberOf)
Добавить DN пользователя - Включено

авторизоваться в Suite невозможно.

Подскажите, где не так что прописала

 , ,

manik207 ()

Группа в LDAP с объектным классом groupofnames и авторизация пользователей из этой группы

Есть сервер с Redmine 3.1.7, есть сервер OpenLDAP, установлен на Centos 7 из yum, версия 2.4.40.

Схема дерева

dc=ldap,dc=centos
  |
  |-ou=People
  |       |--cn=u1 (posixAccount)
  |       |--cn=u2 
  |
  |-ou=Group
  |       |--cn=it
  |       |--cn=hr
  |       |--cn=pr
  |
  |-ou=test
          |--cn=test1 (posixGroup)
                  |--cn=u3 (posixAccount)
Дерево создано по этой инструкции.

Задача: настроить ldap на авторизацию пользователей в зависимости от принадлежности к группе. В группе cn=it пользователи cn=u1 и cn=u2 числятся member'ами. Однако авторизоваться ни одним из них на стороннем сервисе (в моем случае, это редмайн) не могу. Путь до каталога указываю cn=it,ou=Group,dc=ldap,dc=centos.

Через phpldapadmin: если создать отдельный ou=test, в нем cn=test1 (posixGroup) и уже в нем создать пользователя cn=u3(posixAccount), и в настройках сервиса прописать полный путь до записи cn=test1,ou=test,dc=ldap,dc=centos, пользователь u3 создается на лету и может авторизоваться.

Вопрос: с какими атрибутами и классами (минимальная комплектация) нужно создать:

1. пользователя в ou=Peolpe,

2. группу в ou=Group, чтобы пользователь мог авторизоваться на сервисах в зависимости от нахождения в группе? Например, пользователям в группе it доступна авторизация в редмайне, пользователям в группе pr - в астериске, пользователями в группе hr - в crm и т.д., т.е. каждый пользователь находится более, чем в одной группе, и именно группе разрешен вход.

slapcat
...
dn: ou=People,dc=ldap,dc=centos
objectClass: organizationalUnit
ou: People
structuralObjectClass: organizationalUnit

dn: ou=Group,dc=ldap,dc=centos
objectClass: organizationalUnit
ou: Group
description: generic groups branch
structuralObjectClass: organizationalUnit

dn: cn=it,ou=Group,dc=ldap,dc=centos
objectClass: groupOfNames
cn: it
description: IT security group
structuralObjectClass: groupOfNames
member: cn=u1,ou=People,dc=ldap,dc=centos
member: cn=u2,ou=People,dc=ldap,dc=centos

dn: cn=u1,ou=People,dc=ldap,dc=centos
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
userPassword:: NDQ0
shadowLastChange: 15140
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1004
gidNumber: 1004
structuralObjectClass: account
cn: u1
homeDirectory: /home/u1
uid: u1

dn: cn=u2,ou=People,dc=ldap,dc=centos
objectClass: inetOrgPerson
userPassword:: NTU1
homePhone: 555-111-2222
mail: u5@example.com
ou: it
structuralObjectClass: inetOrgPerson
cn: u2
description: new u2
sn: u2
uid: u2

dn: ou=test,dc=ldap,dc=centos
objectClass: organizationalUnit
objectClass: top
ou: test

dn: cn=test1,ou=test,dc=ldap,dc=centos
cn: test1
gidNumber: 502
objectClass: posixGroup
objectClass: top
structuralObjectClass: posixGroup

dn: cn=u3,cn=test1,ou=test,dc=ldap,dc=centos
sn: u3
cn:: IHUz
uid: u3
userPassword:: MzMz
uidNumber: 1000
gidNumber: 502
homeDirectory: /home/users/u3
loginShell: /bin/sh
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
structuralObjectClass: inetOrgPerson 

 ,

manik207 ()

proftpd mod_ldap поиск по группам

Добрый день. Можете подсказать как осуществляется поиск по группам через mod_ldap.
OpenLDAP версии 2.4.44, proftpd 1.3.5, proftpd-mod_ldap 1.3.5 в конфиге proftpd записана сейчас простая конструкция, которая ищет uid в указанов контейнере выглядит это так

LDAPUsers               ou=Users,dc=local,dc=example,dc=ru (uid=%u)
А как сделать поиск, что логинеться могли пользователи только определенной группы, она обозначена так
cn=ftp_full,ou=ftp,dc=local,dc=example,dc=ru

 ,

UnderTaket ()

Добавить атрибуты в OpenLDAP

Всем привет! Мы юзали старый SUN Directory Server Enterprise Edition и потребовалось переехать на OpenLDAP, всем понятно наверное почему. Для SUN Directory у меня был ldiff с уникальными атрибутами, которые мне требуется запилить по аналогии в OpenLDAP.

dn: cn=schema
objectClass: top
objectClass: ldapSubentry
objectClass: subschema
cn: schema
aci: (target="ldap:///cn=schema")(targetattr !="aci")(version 3.0;acl "anonymo
 us, no acis"; allow (read, search, compare) userdn = "ldap:///anyone";)
modifiersName: cn=admin,cn=administrators,cn=dscc
modifyTimestamp: 20140825092336Z
attributeTypes: ( firstName-oid NAME 'firstName' DESC 'First name of a person'
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 SINGLE-VALUE X-ORIGIN 'user defined' )
attributeTypes: ( privateEmail-oid NAME 'privateEmail' DESC 'Private email of
 a person' SYNTAX 1.3.6.1.4.1.1466.115.121.1.41 X-ORIGIN 'user defined' )
attributeTypes: ( userOid-oid NAME 'userOid'  SYNTAX 1.3.6.1.4.1.1466.115.121.
 1.15 SINGLE-VALUE X-ORIGIN 'user defined' )
attributeTypes: ( isTrusted-oid NAME 'isTrusted' DESC 'Determines if user is t
 rusted' SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE X-ORIGIN 'user defi
 ned' )
objectClasses: ( myUser-oid NAME 'myUser' DESC 'user for my entity' SUP
 top STRUCTURAL MUST ( uid $ isTrusted $ nsAccountLock $ firstName ) MAY ( la
 stName $ userPassword $ privateEmail $ otpContact $ otp
 AuthnFlag $ privatePhone $ userOid ) X-ORIGIN 'user defined' )
nsSchemaCSN: 53fb0098000000000000

У OpenLDAP вот такой формат ldif для организации схемы:

olcAttributeTypes: ( 0.9.2342.19200300.100.1.25
  NAME ( 'dc' 'domainComponent' )
  DESC 'RFC1274/2247: domain component'
  EQUALITY caseIgnoreIA5Match
  SUBSTR caseIgnoreIA5SubstringsMatch
  SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
Как мне переделать мои атрибуты в файлике ldif под OpenLDAP мне в упор непонятно

  • 1. Я не понимаю какой мне OID указывать в случае с OpenLDAP типа 0.9.2342.19200300.100.1.25, когда для SUN Directory у меня указывался OID в формате userOid-oid
  • 2. Я не понимаю что такое SINGLE-VALUE X-ORIGIN и нужны ли они мне в OpenLDAP
  • 3. Для моего Sun Directory путь размещения атрибутов:
    dn: cn=schema
    objectClass: top
    objectClass: ldapSubentry
    objectClass: subschema
    cn: schema
    а какой dn и objectClass мне в ldif для OpenLDAP указать?

 

trider ()

Пользователь LDAP в нескольких группах

Яндекс не выдал результат, как добавить одного пользователя в несколько групп...

Есть пользователь: u0001

Есть несколько групп (как от корня, так и вложенные):

  • Group01
  • Group02
  • Group03
  • Group04
  • Group05

    ...

  • Group15

Мой вариант ldif-файла создания пользователя с одной группы:

 
dn: cn=u0001,ou=Group01,dc=ldap,dc=centos
uid: u0001
objectClass: top
objectClass: account
objectClass: posixAccount
objectClass: shadowAccount
objectClass: inetOrgPerson
userPassword: {SSHA}cYXBZxAKZs+lHutaP4CnMyB9N7HMF58R
shadowLastChange: 15140
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1100
gidNumber: 1100
homeDirectory: /home/u0001
Как прописать при создании пользователя через ldif-файл все группы, в которые его нужно добавить, перечислять группы через запятую, перечислять в ou и как-то еще?

 , ,

manik207 ()

кто-нибудь использует в openldap backend «monitor» ?

Доброго времени суток

Сабж. Очень хотелось бы пощупать cn=Monitor. Но и в rhel, и в debian его почему-то стыдливо прячут.

В официальной документации и в man страницах настройка бекэндов даётся для старого формата slapd.conf. Пытался добавить через .ldif и slapadd - полный облом, получилось только модуль подгрузить ( в debian. в rhel встроен ). В итоге создал старый slapd.conf с «database monitor» вручную запускал slapd с параметрами -f и -F, чтобы он дёрнул старый конфиг и взял из него настройку для monitor и залил в backend config

Вроде ок. В strace вижу, что модуль back_monitorв в debian подгружается. И после добавления в конфиг новой базы он больше не ругается в отключенный по умолчанию debug ( жёваный крот !!!! ) , что базы нет.

Но. Никакие запросы к cn=Monitor ничего не возвращают. При том что и в официальной документации, и в man 5 slapd-monitor сказано пару слов в духе «добавьте базу в конфиг и будет вам счастье»

# ldapsearch -x  -b 'cn=Monitor' -s base '(objectClass=*)' '*' '+'
# extended LDIF
#
# LDAPv3
# base <cn=Monitor> with scope baseObject
# filter: (objectClass=*)
# requesting: * + 
#

# search result
search: 2
result: 32 No such object

# numResponses: 1

кусок конфига:

[...]
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib/ldap
olcModuleLoad: {0}back_mdb
olcModuleLoad: {1}back_monitor
structuralObjectClass: olcModuleList
entryUUID: cf2490c2-841c-1036-9785-5fb5b9fdfa58
creatorsName: cn=admin,cn=config
createTimestamp: 20170210203948Z
entryCSN: 20170210203948.660616Z#000000#000#000000
modifiersName: cn=admin,cn=config
modifyTimestamp: 20170210203948Z
[...]

dn: olcDatabase={2}monitor,cn=config
objectClass: olcDatabaseConfig
olcDatabase: {2}monitor
olcAddContentAcl: FALSE
olcLastMod: TRUE
olcMaxDerefDepth: 15
olcReadOnly: FALSE
olcSyncUseSubentry: FALSE
olcMonitoring: FALSE
structuralObjectClass: olcDatabaseConfig
entryUUID: 835b535c-84d9-1036-8f09-1f44592a0b27
creatorsName: cn=config
createTimestamp: 20170211191036Z
entryCSN: 20170211191036.393317Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20170211191036Z
[...]

То ли у меня руки штопором, то ли openldap чуть в сторону от дефолта - набор кривых костылей, то ли документация openldap после глобального перехода на backend «config» ( с slapd.conf на slapd.d ) кусок бесполезного мусора

Как этот злосчастный monitor включить?

 

router ()

openldap при включенном ipv6 возвращает на все запросы «No such object (32)»

В процессе копирования ldap на новый сервер ( rhel 6 ) обнаружил, что без отключения ipv6 поиск не работает вообще - «no such object (32)»

Есть идеи, где искать причину? IPv6 мне не нужен, но после трёх часов, потраченных на дебаг, хочется понять - «что это, [censored], было?» :)

# service network restart
[...]
# ldapsearch -z 0 -x -LLL -b "dc=mydomain,dc=com" 'cn=user1'
No such object (32)
# ip a d ::1/128 dev lo
# ldapsearch -z 0 -x -LLL -b "dc=mydomain,dc=com" 'cn=user1'
[тут успешно всё находит]

В debug.log

Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 fd=11 ACCEPT from IP=[::1]:56787 (IP=[::]:389)
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 op=0 BIND dn="" method=128
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 op=0 RESULT tag=97 err=0 text=
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 op=1 SRCH base="dc=mydomain,dc=com" scope=2 deref=0 filter="(cn=user1)"
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 op=1 SEARCH RESULT tag=101 err=32 nentries=0 text=
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 op=2 UNBIND
Feb  7 22:51:05 vm-ldap slapd[31298]: conn=1006 fd=11 closed
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 fd=11 ACCEPT from IP=127.0.0.1:60252 (IP=0.0.0.0:389)
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 op=0 BIND dn="" method=128
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 op=0 RESULT tag=97 err=0 text=
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 op=1 SRCH base="dc=mydomain,dc=com" scope=2 deref=0 filter="(cn=user1)"
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 op=1 SEARCH RESULT tag=101 err=0 nentries=1 text=
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 op=2 UNBIND
Feb  7 22:51:09 vm-ldap slapd[31298]: conn=1007 fd=11 closed

В конфиге ( slapcat -n 0 > /tmp/config_0.ldif ) не вижу ни малейшего намёка на ipv6 или вообще acl'ы

update: Причины обнаружено две - баг в openldap и + косяк в /etc/hosts - localhost указывает и на 127.0.0.1, и на ::1. Отключение ipv6 через sysctl - workaround ; исправление дублирования в /etc/hosts - решение. Если будет время, проверю, повторяется ли на последней версии, и отправлю в багтрекер. Хотя сейчас времени мало :\

 ,

router ()

Проверка авторизации openLDAP через Redmine и Openfire

Уважаемые эксперты, прощу помощи.

Как проверить аутентификацию через openldap?

Первый раз настраиваю openLDAP (на Centos 7), настраивала для авторизации через openLDAP redmine и openfire. Ни в одном сервисе не получается залогиниться через ldap.

1. Проверка через redmine Проверяла настройку с другого Centos, через

getent passwd ldap1
, где ldap1 - это пользователь, созданный на сервере, мигрированный в ldap. С Centos-клиента могу авторизоваться на сервере через
 su - ldap1

Теперь, собственно, к Redmine. Стоит на другой машине в локальной сети, на самой машине прописала в

 /etc/hosts 
локальный IP сервера с openLDAP и имя локального домена local.domen

В редмине в режимах аутентификации прописываю

  • имя профиля - openLDAP
  • Компьютер - local.domen
  • Порт - 389 (на сервере открыт, на редминовский машине - тоже)
  • Учетная запись - ldap1
  • Пароль - пароль от пользователя ldap1, который был задан на сервере openLDAP перед миграцией
  • BaseDN - dc=local,dc=domen
  • Атрибут Login - sAMAccountName
  • Имя - givenName
  • Фамилия - sN
  • email - mail

После этого провожу проверку - Редмин пишет «Подключение успешно установлено». Пробую залогиниться тем же ldap1 - «Неправильное имя пользователя или пароль».

2. Проверка через авторизацию openfire.

Устанавливаю openfire, имя сервера - openfire, прописываю сервер авторизации - local.domen, Base DN - dc=local,dc=domen, логин - cn=Manager,dn=local,dc=domen, пароль от него, тест настроек успешен, администратором назначаю ldap1, проверка - успешна после ввода пароля. В админку openfire захожу под ldap1, вижу всех пользователей ldap.

А вот авторизоваться клиентом не могу - ни один логин/пароль от ldap не подходит - invalid username or password. В качестве сервера ввожу имя openfire, в hosts прописан IP openfire. Порт на openfire 5222 открыла. На сервере в

 all.log 
вот такое выводит после подключений:

2016.12.23 13:49:20 WARN  [socket_c2s-thread-3]: org.jivesoftware.openfire.nio.ConnectionHandler - Closing connection due to exception in session: (0x000000E3: nio socket, server, /192.168.1.**:3273 => /192.168.1.***:5222)
javax.net.ssl.SSLHandshakeException: SSL handshake failed.
        at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:487)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:47)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:765)
        at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:109)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:417)
        at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:410)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:710)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:664)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:653)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$600(AbstractPollingIoProcessor.java:67)
        at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:1124)
        at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
Caused by: javax.net.ssl.SSLException: Received fatal alert: certificate_unknown
        at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
        at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
        at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
        at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800)
        at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1083)
        at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
        at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
        at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
        at org.apache.mina.filter.ssl.SslHandler.unwrap(SslHandler.java:728)
        at org.apache.mina.filter.ssl.SslHandler.unwrapHandshake(SslHandler.java:666)
        at org.apache.mina.filter.ssl.SslHandler.handshake(SslHandler.java:552)
        at org.apache.mina.filter.ssl.SslHandler.messageReceived(SslHandler.java:351)
        at org.apache.mina.filter.ssl.SslFilter.messageReceived(SslFilter.java:468)
        ... 15 more

Судя по логам, подключение не прошло из-за SSL, ничего не настраивала, все из коробки, в качестве решения гугл пердложил проверить версию java и 7-ю обновить на 8,

 java -version

openjdk version "1.8.0_111"

OpenJDK Runtime Environment (build 1.8.0_111-b15)

OpenJDK 64-Bit Server VM (build 25.111-b15, mixed mode) 
Проверила на сервере ldap - пользователь есть, в ldap’е он есть, вывод команды дает следующее
 ldapsearch -x cn=ldap1 -b dc=local,dc=domen
 # extended LDIF

# ldap1, People, local.domen
dn: uid=ldap1,ou=People,dc=local,dc=domen
uid: ldap1
cn: ldap1
sn: ldap1
mail: ldap1@local.domen
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: e2NyeXB0fSQ2JHdNdWtqcm5uJC96cGJtL1FzM0FRVDJ4NHNnMC5vQ3B5WkdQUllJa3NMWFpTSWwucEZnUjJzRWwwUW5OT3VwQzdSb1RJbkpzUXZJdVJ3bXlHUi41eEZONkRwR2V4RG8v
shadowLastChange: 17154
shadowMin: 0
shadowMax: 99999
shadowWarning: 7
loginShell: /bin/bash
uidNumber: 1003
gidNumber: 1003
homeDirectory: /home/ldap1

# ldap1, Group, local.domen
dn: cn=ldap1,ou=Group,dc=local,dc=domen
objectClass: posixGroup
objectClass: top
cn: ldap1
userPassword:: e2NyeXB0fXg=
gidNumber: 1003

# search result
search: 2
result: 0 Success

# numResponses: 3 
Т.е. получается пользователь один, но в разных группах у него разные пароли? Или пользователей все-таки два? По этому параметру
 userPassword:: e2NyeXB0fXg=
нашла только http://www.openldap.org/lists/openldap-software/200304/msg00083.html, из чего поняла, что какие-то пароли хешируются и эти аккаунты работают, а пароли со значением e2NyeXB0fXg= имеют не работающие аккаунты

Итого, вопроса три:

1. Редмин не распознает пользователей ldap, как проверить, где ошибка?

2. Openfire не распознает пользователей ldap через клиент, а вот через веб-интерфейс в админ-панели управления сервером логинит и видит всех пользователей ldap. Как починить?

3. Два пользователя (ldap1) в ldap в разных группах. Это норма или мои кривые руки? Пароли разные (судя по хешам), может это влиять на работу клиентов (redmine и openfire)? Если да, то как это исправить?

P.S. Есть более простой способ проверки правильной настройки openLDAP? :)

 , , ,

manik207 ()

Wi-Fi WPA2 EAP-TTLS/PEAP + FreeRADIUS + OpenLDAP

Всем привет! Помогите с вопросом, а то уже запутался...

Задача: Есть Wi-Fi сеть на Mikrotik с использованием CAPsMANv2. Необходимо сделать авторизацию к сети Wi-Fi через логин/пароль в LDAP.

Дано:

  • Контроллер и точка доступа Mikrotik находятся на одном устройстве и все настроено корректно, вопросов не вызывает.
  • FreeRADIUS 3.0.4 и OpenLDAP 2.4.39 размещены на одном сервере Centos 7.
  • Для авторизации клиентов использую EAP-TTLS и EAP-PEAP (Windows 7).
  • OpenLDAP хранит пароли пользователей в SHA-1

На данный момент EAP-TTLS и EAP-PEAP работают если пользователь вручную прописан в /etc/raddb/users. При связке с LDAP не работает. Вот отрывок вывода c radiusd -X:

(7)  eap_ttls : Authenticate
(7)  eap_ttls : processing EAP-TLS
(7)  eap_ttls : eaptls_verify returned 7 
(7)  eap_ttls : Done initial handshake
(7)  eap_ttls : eaptls_process returned 7 
(7)  eap_ttls : Session established.  Proceeding to decode tunneled attributes
(7)  eap_ttls : Got tunneled request
	EAP-Message = 0x0202001604103540c5278845c25c90c52f3aeaecc073
(7)  eap_ttls : Sending tunneled request
(7)  server inner-tunnel {
(7)    Request:
	EAP-Message = 0x0202001604103540c5278845c25c90c52f3aeaecc073
	User-Name = 'ya220591gso'
	State = 0x4ed9fe974fdbfadc9a3e1b536f151b40
(7)  # Executing section authorize from file /etc/raddb/sites-enabled/inner-tunnel
(7)    authorize {
(7)    [mschap] = noop
(7)   suffix : Checking for suffix after "@"
(7)   suffix : No '@' in User-Name = "ya220591gso", looking up realm NULL
(7)   suffix : No such realm "NULL"
(7)    [suffix] = noop
(7)    update control {
(7)  	Proxy-To-Realm := 'LOCAL'
(7)    } # update control = noop
(7)   eap : Peer sent code Response (2) ID 2 length 22
(7)   eap : No EAP Start, assuming it's an on-going EAP conversation
(7)    [eap] = updated
(7)    [files] = noop
rlm_ldap (ldap): Reserved connection (4)
(7)   ldap : EXPAND (uid=%{%{Stripped-User-Name}:-%{User-Name}})
(7)   ldap :    --> (uid=ya220591gso)
(7)   ldap : EXPAND dc=company,dc=com
(7)   ldap :    --> dc=company,dc=com
(7)   ldap : Performing search in 'dc=company,dc=com' with filter '(uid=ya220591gso)', scope 'sub'
(7)   ldap : Waiting for search result...
(7)   ldap : User object found at DN "uid=ya220591gso,ou=employees,ou=users,dc=company,dc=com"
(7)   ldap : Processing user attributes
(7)   ldap : 	control:Password-With-Header += '{SHA}lllC0FmgiiD2WsopWYf8evs3qYo='
rlm_ldap (ldap): Released connection (4)
(7)    [ldap] = ok
(7)    [expiration] = noop
(7)    [logintime] = noop
(7)   WARNING: pap : Auth-Type already set.  Not setting to PAP
(7)    [pap] = noop
(7)   } #  authorize = updated
(7)  Found Auth-Type = EAP
(7)  # Executing group from file /etc/raddb/sites-enabled/inner-tunnel
(7)    authenticate {
(7)   eap : Expiring EAP session with state 0x4ed9fe974fdbfadc
(7)   eap : Finished EAP session with state 0x4ed9fe974fdbfadc
(7)   eap : Previous EAP request found for state 0x4ed9fe974fdbfadc, released from the list
(7)   eap : Peer sent method MD5 (4)
(7)   eap : EAP MD5 (4)
(7)   eap : Calling eap_md5 to process EAP data
(7)   eap_md5 : Cleartext-Password is required for EAP-MD5 authentication
(7)   ERROR: eap : Failed continuing EAP MD5 (4) session. EAP sub-module failed
(7)   eap : Failed in EAP select
(7)    [eap] = invalid
(7)   } #  authenticate = invalid
(7)  Failed to authenticate the user

Судя с отрывка лога то ключевой момент кроется в шифровании пароля SHA-1 у LDAP и MD5 у RADIUS. Ткните пожалуйста носом где в RADIUS сменить с MD5 на SHA-1, или в каком направлении копать... Конфиги прилагаю:

/etc/raddb/mods-available/ldap:

ldap {
        server = "127.0.0.1"
        identity = "cn=admin,dc=company,dc=com"
        password = adminLdaP2000
        base_dn = "dc=company,dc=com"
        update {
                control:Password-With-Header    += 'userPassword'
        }
        user {
                base_dn = "dc=company,dc=com"
                filter = "(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
        }
        group {
                base_dn = "${..base_dn}"
                filter = "(objectClass=posixGroup)"
        }
        profile {
        }
        client {
                base_dn = "${..base_dn}"
                filter = '(objectClass=frClient)'
                attribute {
                        identifier                      = 'radiusClientIdentifier'
                        secret                          = 'radiusClientSecret'
                }
        }
        accounting {
                reference = "%{tolower:type.%{Acct-Status-Type}}"
                type {
                        start {
                                update {
                                        description := "Online at %S"
                                }
                        }
                        interim-update {
                                update {
                                        description := "Last seen at %S"
                                }
                        }

                        stop {
                                update {
                                        description := "Offline at %S"
                                }
                        }
                }
        }
        post-auth {
                update {
                        description := "Authenticated at %S"
                }
        }
        options {
                chase_referrals = yes
                rebind = yes
                timeout = 10
                timelimit = 3
                net_timeout = 1
                idle = 60
                probes = 3
                interval = 3
                ldap_debug = 0x0028
        }
        pool {
                start = 5
                min = 4
                max = ${thread[pool].max_servers}
                spare = 3
                uses = 0
                lifetime = 0
                idle_timeout = 60
        }
}

/etc/raddb/mods-available/eap:

eap {
        default_eap_type = ttls
        timer_expire     = 60
        ignore_unknown_eap_types = no
        cisco_accounting_username_bug = no
        max_sessions = ${max_requests}
        # Supported EAP-types
        md5 { ### Пытался комментировать или менять эту строку на sha/sha1 в итоге "ломается" конфиг.
        }
tls-config tls-common {
                private_key_password = stastodd-test
                private_key_file = ${certdir}/server.pem
                certificate_file = ${certdir}/server.pem
                ca_file = ${cadir}/ca.pem
                dh_file = ${certdir}/dh
                random_file = ${certdir}/random
                check_crl = yes
                ca_path = ${cadir}
                cipher_list = "DEFAULT"
                ecdh_curve = "prime256v1"
                ecdh_curve = "secp384r1"
                cache {
                        enable = yes
                        lifetime = 24 # hours
                        max_entries = 255
                        name = "EAP-TTLS"
                        persist_dir = "${logdir}/tlscache"
                }
                verify {
                }
                ocsp {
                        enable = no
                        override_cert_url = yes
                        url = "http://127.0.0.1/ocsp/"
                }
        }

        ttls {
                tls = tls-common
###             default_eap_type = md5 ### Стандартная конфигурация
                default_eap_type = sha ### Когда ставлю sha то никак не влияет на ошибку при [root@testldap stastodd]# radiusd -X
                copy_request_to_tunnel = no
                use_tunneled_reply = no
                virtual_server = "inner-tunnel"
        }
        peap {
                tls = tls-common
                default_eap_type = mschapv2
                copy_request_to_tunnel = no
                use_tunneled_reply = no
                virtual_server = "inner-tunnel"
        }
        mschapv2 {
        }
}

/etc/raddb/sites-available/default:

server default {
listen {
        type = auth
        ipaddr = *
        port = 0
        limit {
              max_connections = 16
              lifetime = 0
              idle_timeout = 30
        }
}
listen {
        ipaddr = *
        port = 0
        type = acct
        limit {
        }
}
listen {
        type = auth
        ipv6addr = ::   # any.  ::1 == localhost
        port = 0
        limit {
              max_connections = 16
              lifetime = 0
              idle_timeout = 30
        }
}
listen {
        ipv6addr = ::
        port = 0
        type = acct
        limit {
        }
}
authorize {
        filter_username
        preprocess
        chap
        mschap
        digest
        suffix
        eap {
                ok = return
        }
        files
        -sql
        -ldap
        expiration
        logintime
        pap
}
authenticate {
        Auth-Type PAP {
                pap
        }
        Auth-Type CHAP {
                chap
        }
        Auth-Type MS-CHAP {
                mschap
        }
        digest
        eap
}
preacct {
        preprocess
        acct_unique
        suffix
        files
}
accounting {
        detail
        unix
        -sql
        exec
        attr_filter.accounting_response
}
session {
}
post-auth {
        -sql
        exec
        remove_reply_message_if_eap
        Post-Auth-Type REJECT {
                -sql
                attr_filter.access_reject
                eap
                remove_reply_message_if_eap
        }
}
pre-proxy {
}
post-proxy {
        eap
}

 , ,

StasTODD ()

OpenLdap не проходит авторизацию.

Доброго времени суток.

Ставлю OpenLdap и никак не получается выполнить

ldapadd -x -D cn=admin,dc=mail,dc=dla,dc=su -W -f /etc/ldap/slapd.d/add_content.ldif

Ввожу пароль, а в ответ:

Enter LDAP Password: 
ldap_bind: Invalid credentials (49)

Так же пробывал сменить пароль:

root@dla:/etc/ldap/slapd.d/cn=config# ldappasswd 
SASL/DIGEST-MD5 authentication started
Please enter your password: 
ldap_sasl_interactive_bind_s: Invalid credentials (49)
	additional info: SASL(-13): user not found: no secret in database

Кто может чем помочь, прошу помощи.

 , ,

kartg ()

аккаунты от ldap а пароли локально на машине

как организовать на сервере проверку/получение учетных записей пользователей через ldap, а пароли хранить и создавать локально на сервере. ldap раздает только учетные записи, без паролей. ldap организован через sss. но это уже детали.

 , , , ,

Wien_Lynx ()

Авторизация на ПК с помощью LDAP

Добрый день. Имеется парк машин работающих под управлением OS X (MAC OS). Так же есть openldap (debain) для авторизации на локальных ресурсах и ПК под управлением OS X управляющий клиентами с помощью OS X Server. Хочется чтобы клиенты на ПК авторизовались с помощью сетевых учетных записей. Но так же хочется чтобы авторизация шла через «сервер» OS X. Я к сожалению плохо знаком с openldap, но из прочитанной теории я понял, что это можно сделать тремя способами:

- теневой сервер;

- кэширующий прокси;

- прозрачный прокси;

Хотел бы получить совет, как лучше сделать в данной ситуации. Будут ли такие режимы работать на OS X «сервере»?

 ,

nspickiy ()

openldap+red hat+ LdapAdmin

Доброго всем дня. Второй месяц бьюсь с openldap. Изначально ставил на Windows, но из-за отсутствия sasl библиотек бросил это дело. Сейчас использую Linux Red Hat. Собственно по сабжу. На сервере развернут openldap, настроена аутентификация SASL/DIGEST-MD5. Через терминал команды ldapsearch/ldapmodify работают на ура, но при попытке авторизации с той же Windows 7 с помощью LdapAdmin вылазит ошибка:

неправильные учетные данные: SASL(-13): authentification failure: realm changed: authentication aborted
Собственно часть лога при попытке подключения с помощью LdapAdmin:
Jul  7 09:28:00 localhost slapd[24176]: slap_listener_activate(7): 
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 busy
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: >>> slap_listener(ldap:///)
Jul  7 09:28:00 localhost slapd[24176]: daemon: listen=7, new connection on 20
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: added 20r (active) listener=(nil)
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 fd=20 ACCEPT from IP=10.0.1.116:50547 (IP=0.0.0.0:389)
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 2 descriptors
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]:  20r
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20)
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20): got connid=1542
Jul  7 09:28:00 localhost slapd[24176]: connection_read(20): checking for input on id=1542
Jul  7 09:28:00 localhost slapd[24176]: op tag 0x63, time 1467869280
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=0 do_search
Jul  7 09:28:00 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:28:00 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:28:00 localhost slapd[24176]: SRCH "" 0 0
Jul  7 09:28:00 localhost slapd[24176]:     0 120 0
Jul  7 09:28:00 localhost slapd[24176]: begin get_filter
Jul  7 09:28:00 localhost slapd[24176]: PRESENT
Jul  7 09:28:00 localhost slapd[24176]: end get_filter 0
Jul  7 09:28:00 localhost slapd[24176]:     filter: (objectClass=*)
Jul  7 09:28:00 localhost slapd[24176]:     attrs:
Jul  7 09:28:00 localhost slapd[24176]:  supportedCapabilities
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=0 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=0 SRCH attr=supportedCapabilities
Jul  7 09:28:00 localhost slapd[24176]: => test_filter
Jul  7 09:28:00 localhost slapd[24176]:     PRESENT
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access to "" "objectClass" requested
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default search access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: <= test_filter 6
Jul  7 09:28:00 localhost slapd[24176]: => send_search_entry: conn 1542 dn=""
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access to "" "entry" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=0 ENTRY dn=""
Jul  7 09:28:00 localhost slapd[24176]: <= send_search_entry: conn 1542 exit.
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: conn=1542 op=0 p=3
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: err=0 matched="" text=""
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_response: msgid=86 tag=101 err=0
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=0 SEARCH RESULT tag=101 err=0 nentries=1 text=
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]:  20r
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20)
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20): got connid=1542
Jul  7 09:28:00 localhost slapd[24176]: connection_read(20): checking for input on id=1542
Jul  7 09:28:00 localhost slapd[24176]: op tag 0x63, time 1467869280
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=1 do_search
Jul  7 09:28:00 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:28:00 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:28:00 localhost slapd[24176]: SRCH "" 0 0
Jul  7 09:28:00 localhost slapd[24176]:     0 120 0
Jul  7 09:28:00 localhost slapd[24176]: begin get_filter
Jul  7 09:28:00 localhost slapd[24176]: PRESENT
Jul  7 09:28:00 localhost slapd[24176]: end get_filter 0
Jul  7 09:28:00 localhost slapd[24176]:     filter: (objectClass=*)
Jul  7 09:28:00 localhost slapd[24176]:     attrs:
Jul  7 09:28:00 localhost slapd[24176]:  supportedSASLMechanisms
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=1 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=1 SRCH attr=supportedSASLMechanisms
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: => test_filter
Jul  7 09:28:00 localhost slapd[24176]:     PRESENT
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access to "" "objectClass" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default search access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: <= test_filter 6
Jul  7 09:28:00 localhost slapd[24176]: => send_search_entry: conn 1542 dn=""
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access to "" "entry" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: result not in cache (supportedSASLMechanisms)
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access to "" "supportedSASLMechanisms" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: result was in cache (supportedSASLMechanisms)
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: result was in cache (supportedSASLMechanisms)
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=1 ENTRY dn=""
Jul  7 09:28:00 localhost slapd[24176]: <= send_search_entry: conn 1542 exit.
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: conn=1542 op=1 p=3
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: err=0 matched="" text=""
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_response: msgid=87 tag=101 err=0
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=1 SEARCH RESULT tag=101 err=0 nentries=1 text=
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]:  20r
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20)
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20): got connid=1542
Jul  7 09:28:00 localhost slapd[24176]: connection_read(20): checking for input on id=1542
Jul  7 09:28:00 localhost slapd[24176]: op tag 0x63, time 1467869280
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=2 do_search
Jul  7 09:28:00 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:28:00 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:28:00 localhost slapd[24176]: SRCH "" 0 0
Jul  7 09:28:00 localhost slapd[24176]:     0 120 0
Jul  7 09:28:00 localhost slapd[24176]: begin get_filter
Jul  7 09:28:00 localhost slapd[24176]: PRESENT
Jul  7 09:28:00 localhost slapd[24176]: end get_filter 0
Jul  7 09:28:00 localhost slapd[24176]:     filter: (objectClass=*)
Jul  7 09:28:00 localhost slapd[24176]:     attrs:
Jul  7 09:28:00 localhost slapd[24176]:  supportedCapabilities
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=2 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=2 SRCH attr=supportedCapabilities
Jul  7 09:28:00 localhost slapd[24176]: => test_filter
Jul  7 09:28:00 localhost slapd[24176]:     PRESENT
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access to "" "objectClass" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default search access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: <= test_filter 6
Jul  7 09:28:00 localhost slapd[24176]: => send_search_entry: conn 1542 dn=""
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access to "" "entry" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=2 ENTRY dn=""
Jul  7 09:28:00 localhost slapd[24176]: <= send_search_entry: conn 1542 exit.
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: conn=1542 op=2 p=3
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_result: err=0 matched="" text=""
Jul  7 09:28:00 localhost slapd[24176]: send_ldap_response: msgid=88 tag=101 err=0
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=2 SEARCH RESULT tag=101 err=0 nentries=1 text=
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:28:00 localhost slapd[24176]: daemon: activity on:
Jul  7 09:28:00 localhost slapd[24176]:  20r
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20)
Jul  7 09:28:00 localhost slapd[24176]: connection_get(20): got connid=1542
Jul  7 09:28:00 localhost slapd[24176]: connection_read(20): checking for input on id=1542
Jul  7 09:28:00 localhost slapd[24176]: op tag 0x63, time 1467869280
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=3 do_search
Jul  7 09:28:00 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:28:00 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:28:00 localhost slapd[24176]: SRCH "" 0 0
Jul  7 09:28:00 localhost slapd[24176]:     0 120 0
Jul  7 09:28:00 localhost slapd[24176]: begin get_filter
Jul  7 09:28:00 localhost slapd[24176]: PRESENT
Jul  7 09:28:00 localhost slapd[24176]: end get_filter 0
Jul  7 09:28:00 localhost slapd[24176]:     filter: (objectClass=*)
Jul  7 09:28:00 localhost slapd[24176]:     attrs:
Jul  7 09:28:00 localhost slapd[24176]:  supportedSASLMechanisms
Jul  7 09:28:00 localhost slapd[24176]: 
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=3 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
Jul  7 09:28:00 localhost slapd[24176]: conn=1542 op=3 SRCH attr=supportedSASLMechanisms
Jul  7 09:28:00 localhost slapd[24176]: => test_filter
Jul  7 09:28:00 localhost slapd[24176]:     PRESENT
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access to "" "objectClass" requested
Jul  7 09:28:00 localhost slapd[24176]: => slap_access_allowed: backend default search access granted to "(anonymous)"
Jul  7 09:28:00 localhost slapd[24176]: => access_allowed: search access granted by read(=rscxd)
Jul  7 09:28:00 localhost slapd[24176]: <= test_filter 6
Jul  7 09:28:00 localhost slapd[24176]: => send_search_entry: conn 1542 dn=""

Ну и логи при использовании команды ldapsearch с самого терминала сервера, где установлен openldap

Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: slap_listener_activate(8): 
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 busy
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: >>> slap_listener(ldap:///)
Jul  7 09:36:39 localhost slapd[24176]: daemon: listen=8, new connection on 20
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: added 20r (active) listener=(nil)
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 fd=20 ACCEPT from IP=[::1]:41605 (IP=[::]:389)
Jul  7 09:36:39 localhost slapd[24176]:  20r
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: connection_get(20)
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: connection_get(20): got connid=1553
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: connection_read(20): checking for input on id=1553
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: op tag 0x63, time 1467869799
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=0 do_search
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: SRCH "" 0 0
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]:     0 0 0
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: begin get_filter
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: PRESENT
Jul  7 09:36:39 localhost slapd[24176]: end get_filter 0
Jul  7 09:36:39 localhost slapd[24176]:     filter: (objectClass=*)
Jul  7 09:36:39 localhost slapd[24176]:     attrs:
Jul  7 09:36:39 localhost slapd[24176]:  supportedSASLMechanisms
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=0 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=0 SRCH attr=supportedSASLMechanisms
Jul  7 09:36:39 localhost slapd[24176]: => test_filter
Jul  7 09:36:39 localhost slapd[24176]:     PRESENT
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: search access to "" "objectClass" requested
Jul  7 09:36:39 localhost slapd[24176]: => slap_access_allowed: backend default search access granted to "(anonymous)"
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: search access granted by read(=rscxd)
Jul  7 09:36:39 localhost slapd[24176]: <= test_filter 6
Jul  7 09:36:39 localhost slapd[24176]: => send_search_entry: conn 1553 dn=""
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: read access to "" "entry" requested
Jul  7 09:36:39 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: result not in cache (supportedSASLMechanisms)
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: read access to "" "supportedSASLMechanisms" requested
Jul  7 09:36:39 localhost slapd[24176]: => slap_access_allowed: backend default read access granted to "(anonymous)"
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: read access granted by read(=rscxd)
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: result was in cache (supportedSASLMechanisms)
Jul  7 09:36:39 localhost slapd[24176]: => access_allowed: result was in cache (supportedSASLMechanisms)
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=0 ENTRY dn=""
Jul  7 09:36:39 localhost slapd[24176]: <= send_search_entry: conn 1553 exit.
Jul  7 09:36:39 localhost slapd[24176]: send_ldap_result: conn=1553 op=0 p=3
Jul  7 09:36:39 localhost slapd[24176]: send_ldap_result: err=0 matched="" text=""
Jul  7 09:36:39 localhost slapd[24176]: send_ldap_response: msgid=1 tag=101 err=0
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=0 SEARCH RESULT tag=101 err=0 nentries=1 text=
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]:  20r
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: connection_get(20)
Jul  7 09:36:39 localhost slapd[24176]: connection_get(20): got connid=1553
Jul  7 09:36:39 localhost slapd[24176]: connection_read(20): checking for input on id=1553
Jul  7 09:36:39 localhost slapd[24176]: op tag 0x60, time 1467869799
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=1 do_bind
Jul  7 09:36:39 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:36:39 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=1 BIND dn="" method=163
Jul  7 09:36:39 localhost slapd[24176]: do_bind: dn () SASL mech DIGEST-MD5
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:39 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:39 localhost slapd[24176]: ==> sasl_bind: dn="" mech=DIGEST-MD5 datalen=0
Jul  7 09:36:39 localhost slapd[24176]: SASL [conn=1553] Debug: DIGEST-MD5 server step 1
Jul  7 09:36:39 localhost slapd[24176]: send_ldap_sasl: err=14 len=182
Jul  7 09:36:39 localhost slapd[24176]: send_ldap_response: msgid=2 tag=97 err=14
Jul  7 09:36:39 localhost slapd[24176]: conn=1553 op=1 RESULT tag=97 err=14 text=SASL(0): successful result: security flags do not match required
Jul  7 09:36:39 localhost slapd[24176]: <== slap_sasl_bind: rc=14
Jul  7 09:36:39 localhost slapd[24176]: 
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:39 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:42 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:42 localhost slapd[24176]:  20r
Jul  7 09:36:42 localhost slapd[24176]: 
Jul  7 09:36:42 localhost slapd[24176]: daemon: read active on 20
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: connection_get(20)
Jul  7 09:36:42 localhost slapd[24176]: connection_get(20): got connid=1553
Jul  7 09:36:42 localhost slapd[24176]: connection_read(20): checking for input on id=1553
Jul  7 09:36:42 localhost slapd[24176]: op tag 0x60, time 1467869802
Jul  7 09:36:42 localhost slapd[24176]: conn=1553 op=2 do_bind
Jul  7 09:36:42 localhost slapd[24176]: daemon: activity on 1 descriptor
Jul  7 09:36:42 localhost slapd[24176]: daemon: activity on:
Jul  7 09:36:42 localhost slapd[24176]: 
Jul  7 09:36:42 localhost slapd[24176]: >>> dnPrettyNormal: <>
Jul  7 09:36:42 localhost slapd[24176]: <<< dnPrettyNormal: <>, <>
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=7 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: conn=1553 op=2 BIND dn="" method=163
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=8 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: do_bind: dn () SASL mech DIGEST-MD5
Jul  7 09:36:42 localhost slapd[24176]: daemon: epoll: listen=9 active_threads=0 tvp=zero
Jul  7 09:36:42 localhost slapd[24176]: ==> sasl_bind: dn="" mech=<continuing> datalen=263
Jul  7 09:36:42 localhost slapd[24176]: SASL [conn=1553] Debug: DIGEST-MD5 server step 2
Jul  7 09:36:42 localhost slapd[24176]: SASL Canonicalize [conn=1553]: authcid="ivan"
Jul  7 09:36:42 localhost slapd[24176]: slap_sasl_getdn: conn 1553 id=ivan [len=4]
Jul  7 09:36:42 localhost slapd[24176]: slap_sasl_getdn: u:id converted to uid=ivan,cn=DIGEST-MD5,cn=auth
Jul  7 09:36:42 localhost slapd[24176]: >>> dnNormalize: <uid=ivan,cn=DIGEST-MD5,cn=auth>
Jul  7 09:36:42 localhost slapd[24176]: <<< dnNormalize: <uid=ivan,cn=digest-md5,cn=auth>
Jul  7 09:36:42 localhost slapd[24176]: ==>slap_sasl2dn: converting SASL name uid=ivan,cn=digest-md5,cn=auth to a DN
Jul  7 09:36:42 localhost slapd[24176]: ==> rewrite_context_apply [depth=1] string='uid=ivan,cn=digest-md5,cn=auth'
Jul  7 09:36:42 localhost slapd[24176]: ==> rewrite_rule_apply rule='uid=([^,]+),cn=digest-md5,cn=auth' string='uid=ivan,cn=digest-md5,cn=auth' [1 pass(es)]
Jul  7 09:36:42 localhost slapd[24176]: ==> rewrite_context_apply [depth=1] res={0,'ldap:///dc=test??sub?(uid=ivan)'}
Jul  7 09:36:42 localhost slapd[24176]: [rw] authid: "uid=ivan,cn=digest-md5,cn=auth" -> "ldap:///dc=test??sub?(uid=ivan)"
Jul  7 09:36:42 localhost slapd[24176]: slap_parseURI: parsing ldap:///dc=test??sub?(uid=ivan)
Jul  7 09:36:42 localhost slapd[24176]: str2filter "(uid=ivan)"
Jul  7 09:36:42 localhost slapd[24176]: begin get_filter
Jul  7 09:36:42 localhost slapd[24176]: EQUALITY
Jul  7 09:36:42 localhost slapd[24176]: end get_filter 0
Jul  7 09:36:42 localhost slapd[24176]: >>> dnNormalize: <dc=test>
Jul  7 09:36:42 localhost slapd[24176]: <<< dnNormalize: <dc=test>
Jul  7 09:36:42 localhost slapd[24176]: slap_sasl2dn: performing internal search (base=dc=test, scope=2)
Jul  7 09:36:42 localhost slapd[24176]: => bdb_search
Jul  7 09:36:42 localhost slapd[24176]: bdb_dn2entry("dc=test")
Jul  7 09:36:42 localhost slapd[24176]: => access_allowed: auth access to "dc=test" "entry" requested
Jul  7 09:36:42 localhost slapd[24176]: => dn: [1] dc=test
Jul  7 09:36:42 localhost slapd[24176]: => acl_get: [1] matched
Jul  7 09:36:42 localhost slapd[24176]: => acl_get: [1] attr entry
Jul  7 09:36:42 localhost slapd[24176]: => acl_mask: access to entry "dc=test", attr "entry" requested
Jul  7 09:36:42 localhost slapd[24176]: => acl_mask: to all values by "", (=0) 
Jul  7 09:36:42 localhost slapd[24176]: <= check a_dn_pat: anonymous
Jul  7 09:36:42 localhost slapd[24176]: <= acl_mask: [1] applying read(=rscxd) (stop)
Jul  7 09:36:42 localhost slapd[24176]: <= acl_mask: [1] mask: read(=rscxd)
Jul  7 09:36:42 localhost slapd[24176]: => slap_access_allowed: auth access granted by read(=rscxd)
Jul  7 09:36:42 localhost slapd[24176]: => access_allowed: auth access granted by read(=rscxd)
Jul  7 09:36:42 localhost slapd[24176]: search_candidates: base="dc=test" (0x00000001) scope=2
Jul  7 09:36:42 localhost slapd[24176]: => bdb_dn2idl("dc=test")
Jul  7 09:36:42 localhost slapd[24176]: => bdb_filter_candidates
Jul  7 09:36:42 localhost slapd[24176]: #011AND
Jul  7 09:36:42 localhost slapd[24176]: => bdb_list_candidates 0xa0
Jul  7 09:36:42 localhost slapd[24176]: => bdb_filter_candidates
Jul  7 09:36:42 localhost slapd[24176]: #011OR
Jul  7 09:36:42 localhost slapd[24176]: => bdb_list_candidates 0xa1
Jul  7 09:36:42 localhost slapd[24176]: => bdb_filter_candidates
Jul  7 09:36:42 localhost slapd[24176]: #011EQUALITY
Jul  7 09:36:42 localhost slapd[24176]: => bdb_equality_candidates (objectClass)
Jul  7 09:36:42 localhost slapd[24176]: => key_read
Jul  7 09:36:42 localhost slapd[24176]: bdb_idl_fetch_key: [b49d1940]
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_index_read: failed (-30988)
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_equality_candidates: id=0, first=0, last=0
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_filter_candidates: id=0 first=0 last=0
Jul  7 09:36:42 localhost slapd[24176]: => bdb_filter_candidates
Jul  7 09:36:42 localhost slapd[24176]: #011EQUALITY
Jul  7 09:36:42 localhost slapd[24176]: => bdb_equality_candidates (uid)
Jul  7 09:36:42 localhost slapd[24176]: => key_read
Jul  7 09:36:42 localhost slapd[24176]: bdb_idl_fetch_key: [451b3b20]
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_index_read 1 candidates
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_equality_candidates: id=1, first=92, last=92
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_filter_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_list_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_filter_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_list_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: <= bdb_filter_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: bdb_search_candidates: id=1 first=92 last=92
Jul  7 09:36:42 localhost slapd[24176]: => test_filter
Jul  7 09:36:42 localhost slapd[24176]:     EQUALITY
Jul  7 09:36:42 localhost slapd[24176]: => access_allowed: auth access to "uid=ivan,ou=Users,dc=test" "uid" requested
Jul  7 09:36:42 localhost slapd[24176]: => dn: [1] dc=test
Jul  7 09:36:42 localhost slapd[24176]: => acl_get: [1] matched
Jul  7 09:36:42 localhost slapd[24176]: => acl_get: [1] attr uid
Jul  7 09:36:42 localhost slapd[24176]: => acl_mask: access to entry "uid=ivan,ou=Users,dc=test", attr "uid" requested
Jul  7 09:36:42 localhost slapd[24176]: => acl_mask: to value by "", (=0) 
Jul  7 09:36:42 localhost slapd[24176]: <= check a_dn_pat: anonymous
P.s. пароли все представлены в открытом виде. Судя по логам сетую на то, что он не подхватывает SASL-аутентификацию, не хочет использовать заданный шаблон замены. А ну еще может напортачил в конфигурационных файлах SASL. Подскажите люди добрые, какие конфигурационные файлы надо настроить и в чём может быть беда, иначе я скоро чекнусь.

 , ,

OpenClose ()

OpenLdap attrs=children

Кто нибудь объясните простым языком принцип работы attrs=children в ACL OpenLdap`а. Сколько я не пытался понять принцип его работы, не вкуриваю.

 ,

creepers ()