Здравствуйте уважаемый ALL!
Если кто-нибудь ещё посещает данную ветку, не откажите в помощи (сами мы не местные :))!Пытаюсь настроить предложенную здесь систему, и как-то не получается, возможно я что-то просто не понимаю, но тем не менее.
Порядок установки: поставлено до момента "пункт 5. настройка POP3 сервера". Ранее устанавливалось всё полностью, но в какой-то момент отказалось работать, из-за чего принял решение переустановить всё (3 раза переустанавливал "с самого начала очень внимательно читая это howto"... :) ) проверяя работоспособность на каждом этапе.
Итак. Хреновая ситуация такая:
----------------------------------------------------------
ОС: FreeBSD 6.2
Установленные пакеты:
mysql-serever-5.0.27
cyrus-sasl-2.1.22
cyrus-sasl-saslauthd-2.1.22
pam-mysql-0.6.2
postfix-2.3.3,1
---
/etc/pam.conf:
smtp auth required pam_mysql.so user=postfix passwd=postfix
db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
smtp account required pam_mysql.so user=postfix passwd=postfix
db=mail table=users usercolumn=login passwdcolumn=password crypt=1 where=expired=0
---
[/usr/lib/sasl2 -> /usr/local/lib/sasl2]/smtpd.conf (пробовался в двух вариантах)
Вар1
pwcheck_method: saslauthd
mech_list: LOGIN PLAIN
Вар2
pwcheck_method: saslauthd
mech_list: LOGIN PLAIN
log_level: 3
sql_engine: mysql
sql_database: mail
sql_user: postfix
sql_passwd: postfix
sql_select: SELECT password FROM users WHERE login=('%u'+'%r');
---
P.S. Насколько я понимаю 2-ой - кривой поскольку предназначен для auxprop (?)
---
/usr/local/etc/postfix/main.cf дописан до фраз
# использовать transport layer security для отправки почты
# (пока все оставляем закомментаренным, ибо ключей у нас ещё нет)
То что закомментировано далее - закомментировано.
---
----------------------------------------------------------
Присутствуют следующие строки в списке процессов:
ps -ax | grep sasl: saslauthd -a pam
ps -ax | grep post: /usr/.../postfix/master
ps -ax | grep sqld: /bin/.../mysqld_safe --[options]
ps -ax | grep sqld: /usr/.../mysqld --defaults-
Тест 'telnet localhost 25' + 'mail from:' проходит.
Тест 'telnet localhost 25' + 'AUTH PLAIN' проходит.
Но, при попытке отправить письмо с клиента вылазит суть проблемы:
1. auth.log
---
...
...: pam_mysql - SELECT returned no result.
...: do_auth: auth failure: [user=test] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
*** после добавления ключика -r ***
...: pam_mysql - SELECT returned no result.
...: do_auth:auth failure: [user=test] [service=smtp] [realm=test.ru] [mech=pam] [reason=PAM auth error]
---
Насколько я понимаю, собственно, проблема уже поднималась, сопоставляя auth.log и debug.log
... postfix/smtpd[7865]: sql plugin Parse the username test@test.ru
... postfix/smtpd[7865]: sql plugin try and connect to a host
... postfix/smtpd[7865]: sql plugin trying to open db 'mail' on host ''
... saslauthd[7928]: DEBUG: auth_pam: pam_authenticate failed: unknown user
- проблема в том, что при проверке pam-mysql обрезает доменное имя по самую собаку :(
В ветке приводились решения для ухода от этой проблемы:
---
Q: 1. pam_mysql не понимает @. В упор. Вместо собаки(и всех символов до следующей точки) мы получаем пустоту. Адрес me@raven.elk.ru при запросе превращается в me.elk.ru
-
A1: Все просто: "@" = "\@"
-
A2: эээ.... man saslauthd на предмет ключика -r
---
Я пытался экспериментировать с переменными '%u' и '%r', с ключом '-r' у saslauthd, с написанием '@'... Ну, в общем, обратиться сюда я решил не при появлении первых трудностей... Выхода пока не вижу. :(
2. Несмотря на "auth failure" письма, таки, уходят и складываются в нужный ящик... Почему?
-------------------------
Уважаемые если у кого-нибудь найдётся пара минут свободного времени! Объясните идиоту - что я делаю неправильно?
P.S.S Про кривые руки можете не сообщать, я, к сожалению, в курсе. :)