The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"EXIM + SMTP авторизация по LDAP"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"EXIM + SMTP авторизация по LDAP"  
Сообщение от siegerstein (??) on 15-Мрт-07, 18:08 
Проблема такая:

Есть exim, ldap.
Надо чтобы пользователи отправляли почту через авторизацию:

LDAPCFG = user=cn=root,dc=firma,dc=com pass=xxx connect=5

plain:
driver = plaintext
public_name = PLAIN
server_prompts = :
server_condition = ${if ldapauth \
{user=${lookup ldapdn \
{LDAPCFG ldap:///ou=Mail_Users,dc=firma,dc=com?dn?sub?(uid=$2)}} \
pass=$3 connect=5 ldap:///} {true} {fail}}
server_set_id = $2

Это кусок канает, НО:

Пароли в этом случае должны храниться в LDAP в открытом виде (clear), что не хорошо.

Задача: как написать этот кусок кода, чтобы он сверял пароль в LDAP который зашифрованый к примеру по ssha хешу?

К примеру если пароль в LDAP храниться в виде 123 то все канает, если в виде хеша
{SSHA}k/sDi92JshICtX8EXhHb8f0vecEV5YQ8
то не прокатит.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "EXIM + SMTP авторизация по LDAP"  
Сообщение от stas_v (ok) on 15-Мрт-07, 19:17 
Судя по документации, да и по опыту, ldapauth просто биндится с указанным DN и указанным паролем к серверу и возвращает true или false в зависимости от результата (т.е. удалась авторизация или нет).

Если для любого из клиентских DN проходит биндинг из, скажем, командной строки (см. утилитку ldapwhoami, например), то и из exim всё должно быть отлично. Пароль может храниться в любой поддерживаемой ldap сервером схеме (SSHA, MD5 и т.д.), на результат это не влияет: пароль проверяет не exim а slapd (в случае OpenLDAP).

Вот другое дело, если вы захотите использовать всякие CRAM да DIGEST с NTLM'ом - тогда вам действительно придётся хранить пароли открытым текстом. (Но лучше всего тогда использовать SSL/TLS)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "EXIM + SMTP авторизация по LDAP"  
Сообщение от siegerstein (??) on 16-Мрт-07, 19:02 
>Судя по документации, да и по опыту, ldapauth просто биндится с указанным
>DN и указанным паролем к серверу и возвращает true или false
>в зависимости от результата (т.е. удалась авторизация или нет).
>
>Если для любого из клиентских DN проходит биндинг из, скажем, командной строки
>(см. утилитку ldapwhoami, например), то и из exim всё должно быть
>отлично. Пароль может храниться в любой поддерживаемой ldap сервером схеме (SSHA,
>MD5 и т.д.), на результат это не влияет: пароль проверяет не
>exim а slapd (в случае OpenLDAP).
>
>Вот другое дело, если вы захотите использовать всякие CRAM да DIGEST с
>NTLM'ом - тогда вам действительно придётся хранить пароли открытым текстом. (Но
>лучше всего тогда использовать SSL/TLS)

Чорт! Действительно выходит с SSHA. Куда я смотрел?

Спасибо друг!


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "EXIM + SMTP авторизация по LDAP"  
Сообщение от Nikolay email(??) on 05-Апр-07, 15:24 
>Судя по документации, да и по опыту, ldapauth просто биндится с указанным
>DN и указанным паролем к серверу и возвращает true или false
>в зависимости от результата (т.е. удалась авторизация или нет).
>
>Если для любого из клиентских DN проходит биндинг из, скажем, командной строки
>(см. утилитку ldapwhoami, например), то и из exim всё должно быть
>отлично. Пароль может храниться в любой поддерживаемой ldap сервером схеме (SSHA,
>MD5 и т.д.), на результат это не влияет: пароль проверяет не
>exim а slapd (в случае OpenLDAP).
>
>Вот другое дело, если вы захотите использовать всякие CRAM да DIGEST с
>NTLM'ом - тогда вам действительно придётся хранить пароли открытым текстом. (Но
>лучше всего тогда использовать SSL/TLS)

А если неизвестен dn пользователя, а известен только uid? Т.е. dn = cn=Дядя Вася, ou=Администрация, ou=Организация, ou=ru


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "EXIM + SMTP авторизация по LDAP"  
Сообщение от stas_v (ok) on 06-Апр-07, 11:00 

>А если неизвестен dn пользователя, а известен только uid? Т.е. dn =
>cn=Дядя Вася, ou=Администрация, ou=Организация, ou=ru

А в этом примере так и есть:

server_condition = ${if ldapauth \
{user=${lookup ldapdn {LDAPCFG ldap:///ou=Mail_Users,dc=firma,dc=com?dn?sub?(uid=$2)}} \
pass=$3 connect=5 ldap:///} \
{true} {fail}}

Мы вначале ищем DN пользователя ниже базового, а потом этим найденным DN'ом биндимся.

А можно попробовать SASL. Там пользователь указывается только именем.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру