Exim: SMTP аутентификация по dbm-файлу

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Poster
проходил мимо

Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение Poster » 2008-09-24 13:04:52

астроил аутентификацию:

Код: Выделить всё

begin authenticators

auth_plain:
  driver = plaintext
  public_name = PLAIN
  server_condition = ${lookup{$auth2}dbm{/etc/authpwd}\
    {${if eq{$value}{$auth3}{yes}{no}}}{no}}
  server_prompts = :
  server_set_id = $auth2

auth_login:
  driver = plaintext
  public_name = LOGIN
  server_condition = ${lookup{$auth2}dbm{/etc/authpwd}\
    {${if eq{$value}{$auth3}{yes}{no}}}{no}}
  server_prompts = Username:: : Password::
  server_set_id = $auth1
создал /etc/authpwd с содержанием:

Код: Выделить всё

user:password
далее

Код: Выделить всё

cap_mkdb /etc/authpwd

ну и собственно что-то я неправильно делаю
в логах

Код: Выделить всё

auth_login authenticator failed for (user) [192.168.0.2] I=[192.168.0.1]:25: 535 Incorrect authentication data (set_id=user)

пробовал

Код: Выделить всё

  server_condition = ${lookup{$auth2}lsearch{/etc/authpwd}\
    {${if eq{$value}{$auth3}{yes}{no}}}{no}}
в логах всё то же самое, дак что тогда в /etc/authpwd писать надо и в каком формате?

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение dikens3 » 2008-09-24 14:31:43

Вообще-то у exim собственные файлы для работы/создания dbm.

http://forum.lissyara.su/viewtopic.php? ... &hilit=dbm
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Poster
проходил мимо

Re: Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение Poster » 2008-09-24 14:53:31

Ну дак я же говорю, что я без всякого DBM запрашивал напрямую из файла

Код: Выделить всё

  server_condition = ${lookup{$auth2}lsearch{/etc/authpwd}\
    {${if eq{$value}{$auth3}{yes}{no}}}{no}}
и результат был тот же, в файле /etc/authpwd содержание следующего формата должно быть?

Код: Выделить всё

login:clean_password

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Re: Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение dikens3 » 2008-09-24 16:07:16

запусти в debug (exim -d+all) и посмотри что не так. Что в переменных, как проверяются и т.п.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Poster
проходил мимо

Re: Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение Poster » 2008-09-25 9:43:50

вот кусок

Код: Выделить всё

10:40:33 61307 SMTP<< AUTH LOGIN
10:40:33 61307 SMTP>> 334 VXNlcm5hbWU6
10:40:33 61307 SMTP<< dGVzdA==
10:40:33 61307 SMTP>> 334 UGFzc3dvcmQ6
10:40:33 61307 SMTP<< dGVzdDEyMw==
10:40:33 61307 auth_login authenticator:
10:40:33 61307   $auth1 = test
10:40:33 61307   $auth2 = test123
10:40:33 61307   $1 = test
10:40:33 61307   $2 = test123
10:40:33 61307 expanding: $auth2
10:40:33 61307    result: test123
10:40:33 61307 expanding: $auth1:$auth2
10:40:33 61307    result: test:test123
10:40:33 61307 expanding: /etc/authpwd
10:40:33 61307    result: /etc/authpwd
10:40:33 61307 search_open: lsearch "/etc/authpwd"
10:40:33 61307 search_find: file="/etc/authpwd"
10:40:33 61307   key="test:test123" partial=-1 affix=NULL starflags=0
10:40:33 61307 LRU list:
10:40:33 61307   ;/etc/authpwd
10:40:33 61307   End
10:40:33 61307 internal_search_find: file="/etc/authpwd"
10:40:33 61307   type=lsearch key="test:test123"
10:40:33 61307 file lookup required for test:test123
10:40:33 61307   in /etc/authpwd
10:40:33 61307 lookup failed
10:40:33 61307 expanding: ${lookup {$auth1:$auth2}lsearch{/etc/authpwd}}
10:40:33 61307    result:
10:40:33 61307 condition: eq{$auth2} {${lookup {$auth1:$auth2}lsearch{/etc/authpwd}}}
10:40:33 61307    result: false
10:40:33 61307 expanding: yes
10:40:33 61307    result: yes
10:40:33 61307 skipping: result is not used
10:40:33 61307 expanding: no
10:40:33 61307    result: no
10:40:33 61307 expanding: ${if eq{$auth2} {${lookup {$auth1:$auth2}lsearch{/etc/authpwd}}}{yes}{no}}
10:40:33 61307    result: no
10:40:33 61307 expanded string: no
10:40:33 61307 expanding: $auth1
10:40:33 61307    result: test
10:40:33 61307 SMTP>> 535 Incorrect authentication data
10:40:33 61307 LOG: MAIN REJECT
Народ, что писать нужно в /etc/authpwd?

poster
проходил мимо

Re: Exim: SMTP аутентификация по dbm-файлу

Непрочитанное сообщение poster » 2008-09-25 11:01:53

Код: Выделить всё

server_condition =  ${if eq{$2}{${lookup{$1}lsearch{/etc/authpwd}}}{yes}{no}}
Вот сравнение паролья на входе и в файле, какой-бы пароль я не вводил всё-равно аутентификацию прохожу, что ж мне делать?