The OpenNET Project / Index page

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

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

"SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(ok) on 18-Дек-07, 10:51 
Имею почтовый сервер: FC6, Postfix-2.4.6, MySQL-5.0, Cyrus-SASL-2.1.22 (из rpm: -sql, -plain, -md5, -lib, -devel), PostfixAdmin-2.1.0.
Всё настроил, работает нормально. Проблема возникла, когда захотел дать доступ к почтовику "мобильным" пользователям, т.е. извне.
Я так понял, что для этого нужно настроить авторизацию SMTP.

На данном этапе проблема в том, что данная авторизация работает только, если в MySQL базе пароль внесен "как есть", т.е. в чистом виде. Но вся остальная связка использует криптованный (md5crypt) пароль.

Подскажите, пожалуйста, как мне поступить -- создать дополнительное поле с clear password (тогда вопрос, как его получить для уже существующих пользователей), или можно как-то "уговорить" Cyrus-SASL понимать то, что я уже имею, или любое другое приемлемое решение...

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

 Оглавление

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


1. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от enforcer (ok) on 18-Дек-07, 13:22 
>[оверквотинг удален]
>Я так понял, что для этого нужно настроить авторизацию SMTP.
>
>На данном этапе проблема в том, что данная авторизация работает только, если
>в MySQL базе пароль внесен "как есть", т.е. в чистом виде.
>Но вся остальная связка использует криптованный (md5crypt) пароль.
>
>Подскажите, пожалуйста, как мне поступить -- создать дополнительное поле с clear password
>(тогда вопрос, как его получить для уже существующих пользователей), или можно
>как-то "уговорить" Cyrus-SASL понимать то, что я уже имею, или любое
>другое приемлемое решение...

Настройте PAM. Он содержит модули для работы SASL с MySQL. Шифрованный пароль или не шифрованный - значения не имеет, ведь шифрование/дешифрацию производит движок MySQL при обращении к этому полю на запись/чтение соответственно. Смысл шифрации - закрыть от просмотра пароли при select-запросе сторонних пользователей.

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

2. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(ok) on 18-Дек-07, 13:36 
>Настройте PAM. Он содержит модули для работы SASL с MySQL. Шифрованный пароль
>или не шифрованный - значения не имеет, ведь шифрование/дешифрацию производит движок
>MySQL при обращении к этому полю на запись/чтение соответственно. Смысл шифрации
>- закрыть от просмотра пароли при select-запросе сторонних пользователей.

Но у меня всё работает без PAM! Cyrus-SASL обращается к MySQL самостоятельно и берет из указанного поля пароль, НО пропускает только если пароль в этом поле в чистом виде.
А у меня в этом поле пароль криптованный (создается PostfixAdmin'ом или уже созданные пользователи со старого почтовика, работающего под Qmail'ом)

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

3. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от Krivoy email(??) on 18-Дек-07, 14:21 
Не заносите новые пароли копипастом из таблицы!!! :)
Там добавляется лишний символ....
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(ok) on 18-Дек-07, 14:37 
>Не заносите новые пароли копипастом из таблицы!!! :)
>Там добавляется лишний символ....

... а никто и не заносит -- их создает PostfixAdmin функцией (если глянуть в код) md5crypt()

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

5. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от Krivoy email(??) on 18-Дек-07, 15:58 
>>Не заносите новые пароли копипастом из таблицы!!! :)
>>Там добавляется лишний символ....
>
>... а никто и не заносит -- их создает PostfixAdmin функцией (если
>глянуть в код) md5crypt()

Да я так из личного опыта - только что нарвался правда у меня в LDAPе.... Кстати а как он его создает? - блаблабла или {MD5}блаблабла ???

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

6. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(ok) on 18-Дек-07, 17:02 
>Да я так из личного опыта - только что нарвался правда у
>меня в LDAPе.... Кстати а как он его создает? - блаблабла
>или {MD5}блаблабла ???

Если интересно:
function pacrypt ($pw,pw_db="")                                                          
{                                                                    
   global $CONF;
   $password = "";
   $salt = "";
  
   if ($CONF['encrypt'] == 'md5crypt')
   {
      $split_salt = preg_split ('/\$/', $pw_db);
      if (isset ($split_salt[2])) $salt = $split_salt[2];
  
      $password = md5crypt ($pw, $salt);
   }  
  
   if ($CONF['encrypt'] == 'system')
   {
      if (ereg ("\$1\$", $pw_db))
      {
         $split_salt = preg_split ('/\$/', $pw_db);
         $salt = $split_salt[2];
      }  
      else
      {
         $salt = substr ($pw_db, 0, 2);
      }  
      $password = crypt ($pw, $salt);
   }  
  
   if ($CONF['encrypt'] == 'cleartext')
   {
      $password = $pw;
   }  
  
   return $password;
}

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

7. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(ok) on 18-Дек-07, 17:50 
Так а по сути вопроса кто-нибудь ответит???
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от enforcer (ok) on 19-Дек-07, 11:27 
>Так а по сути вопроса кто-нибудь ответит???

В общем, попроуйте вручную внести одну запись. Если сработает - значит скрипт вносит лишний символ. Когда я настраивал свой - мне попадались статьи с настройкой PAM. Все же советую почитать, хотя сам я сделал на bdb.
В логах mySQL что написано?

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

9. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от yurik email(??) on 24-Мрт-08, 12:16 
>>Так а по сути вопроса кто-нибудь ответит???
>

у меня была такая же трудность.

решилось пересборкой rpm'а cyrus-sasl
с применением патча
http://netilium.org/~mad/cyrus-sasl-2.1.22-crypt.patch

тогда в конфиге smtpd.conf
распознается слово
password_format: crypt

прошу доложить мне о результатах, помогло ли.

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

10. "SMTP-AUTH MySQL (Postfix)"  
Сообщение от MVictorL email(??) on 25-Мрт-08, 15:51 
>[оверквотинг удален]
>
>решилось пересборкой rpm'а cyrus-sasl
>с применением патча
>http://netilium.org/~mad/cyrus-sasl-2.1.22-crypt.patch
>
>тогда в конфиге smtpd.conf
>распознается слово
>password_format: crypt
>
>прошу доложить мне о результатах, помогло ли.

Да, я тоже так делал...
Уже почти полгода сервак работает!

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

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

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




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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