Я уже третий день не могу разрешить следующую пробелему. Не проходит авторизация по SMTP в Postfix, с помомщью sasl. Юзеры хранятся в бд mysql.cyrus-sasl-2.1.20 конфигурировал так:
./configure --prefix=/usr \
--with-mysql=/usr/local/mysql \
--with-openssl=/usr \
--enable-login --enable-plain --enable-digest --enable-cram
в main.cf добавил
smtpd_sasl_auth_enable = yes
smtpd_sasl_application_name = smtpd
broken_sasl_auth_clients = yes
smtpd_sasl_security_options = noanonymous
файл /usr/lib/sasl2/smtpd.conf
pwcheck_method: auxprop
mech_list: PLAIN LOGIN CRAM-MD5
auxprop_plugin: sql
sql_usessl: yes
sql_engine: mysql
sql_hostnames: localhost
sql_user: postfix
sql_passwd: postfix
sql_database: postfix
sql_select: select password from mailbox where username = '%u@%r'
sql_verbose: true
log_level: 9
при попытки авторизоваться в лог пишет следующее:
Apr 21 12:23:07 vps274 postfix/smtpd[10876]: connect from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
Apr 21 12:23:12 vps274 postfix/smtpd[10876]: warning: cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]: SASL LOGIN authentication failed: authentication failure
Apr 21 12:23:14 vps274 postfix/smtpd[10876]: lost connection after AUTH from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
Apr 21 12:23:14 vps274 postfix/smtpd[10876]: disconnect from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
Смотрел лог мускула, как выяснилось к БД даже не происходит коннекта! С чем это может быть связано??? Если, кто сталкивался или предполагает в чем может быть проблема - спасибо заранее!)
>[оверквотинг удален]
>smtpd_sasl_application_name = smtpd
>broken_sasl_auth_clients = yes
>smtpd_sasl_security_options = noanonymous
>
>
>файл /usr/lib/sasl2/smtpd.conf
>pwcheck_method: auxprop
>mech_list: PLAIN LOGIN CRAM-MD5
>auxprop_plugin: sql
>sql_usessl: yesМожет пока тестируется система отменить подключение к базе данных в ssl режиме? Тем более какой в этом смысл если sql_hostnames: localhost ?
>[оверквотинг удален]
>Apr 21 12:23:07 vps274 postfix/smtpd[10876]: connect from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
>Apr 21 12:23:12 vps274 postfix/smtpd[10876]: warning: cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]: SASL LOGIN authentication failed: authentication
>failure
>Apr 21 12:23:14 vps274 postfix/smtpd[10876]: lost connection after AUTH from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
>Apr 21 12:23:14 vps274 postfix/smtpd[10876]: disconnect from cpe-24-29-69-137.nycap.res.rr.com[24.29.69.137]
>
>
>Смотрел лог мускула, как выяснилось к БД даже не происходит коннекта! С
>чем это может быть связано??? Если, кто сталкивался или предполагает в
>чем может быть проблема - спасибо заранее!)
>>файл /usr/lib/sasl2/smtpd.conf
>>pwcheck_method: auxprop
>>mech_list: PLAIN LOGIN CRAM-MD5
>>auxprop_plugin: sql
>>sql_usessl: yes
>
>Может пока тестируется система отменить подключение к базе данных в ssl режиме?
>Тем более какой в этом смысл если sql_hostnames: localhost ?Да это не столь важно. Сейчас убрал, но результат не изменился( Вообще нету обращения к мускулу и не могу понять причины
>[оверквотинг удален]
>>>pwcheck_method: auxprop
>>>mech_list: PLAIN LOGIN CRAM-MD5
>>>auxprop_plugin: sql
>>>sql_usessl: yes
>>
>>Может пока тестируется система отменить подключение к базе данных в ssl режиме?
>>Тем более какой в этом смысл если sql_hostnames: localhost ?
>
>Да это не столь важно. Сейчас убрал, но результат не изменился( Вообще
>нету обращения к мускулу и не могу понять причиныPostfix собран с поддержкой Cyrus SASL?
Покажите postconf -a.
>>>Может пока тестируется система отменить подключение к базе данных в ssl режиме?
>>>Тем более какой в этом смысл если sql_hostnames: localhost ?
>>
>>Да это не столь важно. Сейчас убрал, но результат не изменился( Вообще
>>нету обращения к мускулу и не могу понять причины
>
>Postfix собран с поддержкой Cyrus SASL?
>Покажите postconf -a.vps274:~# postconf -a
cyrus
dovecotСборка постфикса:
make \
CCARGS="-DHAS_MYSQL -I/usr/local/mysql/include/mysql \
-DHAS_PCRE -I/usr/include \
-DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \
-DUSE_TLS -I/usr/include" \
AUXLIBS="-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm \
-L/usr/lib -lpcre \
-L/usr/lib/sasl2 -lsasl2 \
-L/usr/lib -lssl -lcrypto"
>[оверквотинг удален]
>Сборка постфикса:
>make \
> CCARGS="-DHAS_MYSQL -I/usr/local/mysql/include/mysql \
> -DHAS_PCRE -I/usr/include \
> -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl \
> -DUSE_TLS -I/usr/include" \
> AUXLIBS="-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm \
> -L/usr/lib -lpcre \
> -L/usr/lib/sasl2 -lsasl2 \
> -L/usr/lib -lssl -lcrypto"Попробуйте увеличить информативность логов.
Запустите в master.cf smtpd с ключом -v:smtp inet n - n - - smtpd -v
Или использовать любой другой способ отладки. А так очень мало информации.
>Попробуйте увеличить информативность логов.
>Запустите в master.cf smtpd с ключом -v:
>
> smtp inet n - n - - smtpd -v
>
>Или использовать любой другой способ отладки. А так очень мало информации.информативность увеличил, но ничего нового из логов не узнал:
.....
Apr 21 15:14:29 vps274 postfix/smtpd[11101]: xsasl_cyrus_server_next: decoded re
sponse: test@mydomen.com
Apr 21 15:14:29 vps274 postfix/smtpd[11101]: xsasl_cyrus_server_auth_response: u
ncoded server challenge: Password:
Apr 21 15:14:29 vps274 postfix/smtpd[11101]: > 148-39.8-67.tampabay.res.rr.com[6
7.8.39.148]: 334 UGFzc3dvcmQ6
Apr 21 15:14:29 vps274 postfix/smtpd[11101]: < 148-39.8-67.tampabay.res.rr.com[6
7.8.39.148]: cWF6eHN3
Apr 21 15:14:29 vps274 postfix/smtpd[11101]: xsasl_cyrus_server_next: decoded re
sponse: 12345
Apr 21 15:14:30 vps274 postfix/smtpd[11101]: warning: 148-39.8-67.tampabay.res.r
r.com[67.8.39.148]: SASL LOGIN authentication failed: authentication failure
Apr 21 15:14:30 vps274 postfix/smtpd[11101]: > 148-39.8-67.tampabay.res.rr.com[6
7.8.39.148]: 535 5.7.8 Error: authentication failed: authentication failure
Apr 21 15:14:30 vps274 postfix/smtpd[11101]: < 148-39.8-67.tampabay.res.rr.com[6
7.8.39.148]: QUIT
.....
>[оверквотинг удален]
>7.8.39.148]: cWF6eHN3
>Apr 21 15:14:29 vps274 postfix/smtpd[11101]: xsasl_cyrus_server_next: decoded re
>sponse: 12345
>Apr 21 15:14:30 vps274 postfix/smtpd[11101]: warning: 148-39.8-67.tampabay.res.r
>r.com[67.8.39.148]: SASL LOGIN authentication failed: authentication failure
>Apr 21 15:14:30 vps274 postfix/smtpd[11101]: > 148-39.8-67.tampabay.res.rr.com[6
>7.8.39.148]: 535 5.7.8 Error: authentication failed: authentication failure
>Apr 21 15:14:30 vps274 postfix/smtpd[11101]: < 148-39.8-67.tampabay.res.rr.com[6
>7.8.39.148]: QUIT
>.....Есть еще способ через параметр debug_peer_list. Там в логи идет очень подробный вывод.
В каком виде хранятся пароли в mysql?
Попробуйте еще протестировать как описано вTesting SASL authentication in the Postfix SMTP server
To test the server side, connect (for example, with telnet) to the Postfix SMTP server port and you should be able to have a conversation as shown below. Information sent by the client (that is, you) is shown in bold font.
$ telnet server.example.com 25
. . .
220 server.example.com ESMTP Postfix
EHLO client.example.com
250-server.example.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH DIGEST-MD5 PLAIN CRAM-MD5
250 8BITMIME
AUTH PLAIN AHRlc3QAdGVzdHBhc3M=
235 Authentication successfulInstead of AHRlc3QAdGVzdHBhc3M=, specify the base64 encoded form of \0username\0password (the \0 is a null byte). The example above is for a user named `test' with password `testpass'.
In order to generate base64 encoded authentication information you can use one of the following commands:
% printf '\0username\0password' | mmencode
% perl -MMIME::Base64 -e \
'print encode_base64("\0username\0password");'The mmencode command is part of the metamail software. MIME::Base64 is available from http://www.cpan.org/.
Caution: when posting logs of the SASL negotiations to public lists, please keep in mind that username/password information is trivial to recover from the base64-encoded form.
>Есть еще способ через параметр debug_peer_list. Там в логи идет очень подробный
>вывод.А, где этот параметр указывать?
>В каком виде хранятся пароли в mysql?
Пароли в открытом виде.
>Попробуйте еще протестировать как описано в
>
>Testing SASL authentication in the Postfix SMTP server
>Да, тоже самое (
>[оверквотинг удален]
>>В каком виде хранятся пароли в mysql?
>
>Пароли в открытом виде.
>
>>Попробуйте еще протестировать как описано в
>>
>>Testing SASL authentication in the Postfix SMTP server
>>
>
>Да, тоже самое (debug_peer_list указывается в main.cf
Прочтите его описание в документации к postfix.