Не подскажите в чем проблема - в логах пишет SASL: no user in dbsmtpd.conf
pwcheck_method: auxprop
password_format: crypt
mysql_user: postfix
mysql_passwd: postfix
mysql_hostnames: localhost
mysql_database: mail
mysql_select: select password from mailbox where username='%u@ultranetas.lt'
mysql_verbose: yes
log_level: 9main.cf
cat /usr/local/etc/postfix/main.cf
============ General Section ================================queue_directory = /var/spool/postfix
command_directory = /usr/local/sbin
daemon_directory = /usr/local/libexec/postfix
mail_owner = postfix
setgid_group = maildrop
unknown_local_recipient_reject_code = 450
manpage_directory = /usr/local/man
sample_directory = /usr/local/etc/postfix/samples
sendmail_path = /usr/local/sbin/sendmail
mailq_path = /usr/local/bin/mailq#============ Alias Section ==================================
alias_maps = hash:/etc/mail/aliases
alias_database = hash:/etc/mail/aliases#=========== Host Section ===================================
myhostname = mail.xxx.nu
mydomain = xxx.nu
mynetworks = 127.0.0.0/8
myorigin = $mydomainmydestantion = $myhostname, localhost.$mydomain, $mydomain
#=========== SQL Section ==================================== #
virtual_mailbox_base = /
virtual_transport_maps = hash:/usr/local/etc/postfix/sql/transport
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/sql/domains.mysql
virtual_alias_maps = mysql:/usr/local/etc/postfix/sql/alias.mysql
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/sql/mailbox.mysql
virtual_uid_maps = mysql:/usr/local/etc/postfix/sql/uid.mysql
virtual_minimum_uid = 1000
virtual_gid_maps = static:126#============ Access Section =================================
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject
smtp_sasl_password_maps = mysql:/usr/local/etc/postfix/sql/sasl.mysql
#smtp_use_tls = yes
#smtpd_tls_auth_only = yes
#smtpd_use_tls = yes
#smtp_tls_note_starttls_offer = yes
#smtpd_tls_key_file = /etc/ssl/server.key
#smtpd_tls_cert_file = /etc/ssl/server.crt
#smtpd_tls_CAfile = /etc/ssl/ca.crt
#smtpd_tls_loglevel = 1
#smtpd_tls_received_header = yes
#smtpd_tls_session_cache_timeout = 3600s
#tls_random_source = dev:/dev/urandom
#smtpd_tls_ask_ccert = yes
#relay_clientcerts = hash:/usr/local/etc/postfix/relay_clientcerts
smtpd_banner = ESMTP READY !!!! ALL CONNECTION LOGGED !!!!============================== Quota ====================================
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/sql/quota.mysql
virtual_maildir_extended=yes
virtual_mailbox_limit_override=yes
virtual_create_maildirsize = yes
virtual_overquota_bounce = yes
virtual_maildir_limit_message="The users's mailbox is out of limit. Try again later"
======================= CLAMAV ================================================================== Security Section ===============================
html_directory = no
readme_directory = no
allow_untrusted_routing = no
disable_vrfy_command = yes
smtpd_helo_required = yes
smtp_always_send_ehlo = yes
smtp_always_send_ehlo = yes
header_checks = regexp:/usr/local/etc/postfix/header_checks
bounce_size_limit = 10000
message_size_limit = 5120000
>Не подскажите в чем проблема - в логах пишет SASL: no user
>in db
>
>smtpd.conf
pwcheck_method: auxprop
auxprop_plugin: sql
sql_engine: mysql
sql_user: postfix
sql_passwd: postfix
sql_hostnames: localhost
sql_database: mail
sql_select: select password from aliases where alias='%u@%r'А вообще сообщил бы что за система, телепатов нет :).
не помогло =(
сейчас вот такой еррор выдает
warning: SASL authentication failure: no secret in database
ix/smtpd[90305]: warning: Monstro[192.168.1.50]: SASL NTLM authentication failed
ix/smtpd[90305]: warning: SASL authentication failure: no secret inсистема Фря 5.3
>не помогло =(
>сейчас вот такой еррор выдает
>warning: SASL authentication failure: no secret in database
>ix/smtpd[90305]: warning: Monstro[192.168.1.50]: SASL NTLM authentication failed
>ix/smtpd[90305]: warning: SASL authentication failure: no secret in
>
>система Фря 5.3
Чего то я не пойму. Ты какой метод аутентификации используешь?
Так вот и непонятки получаются откуда NTLM если я прописал auxprox
>Так вот и непонятки получаются откуда NTLM если я прописал auxprox
pwcheck_method _не_ влияет на mech_list и не имеет с ним ничего общего.
Отключил я этот NTLM, как написано на оф. сайте постфикса, но все таже ерунда
SASL LOGIN authentication failedsmtpd.conf
pwcheck_method: auxprop
mech_list: login plain
password_format: crypt
auxprop_plugin: sql
sql_engine: mysql
sql_user: postfix
sql_passwd: postfix
sql_hostnames: localhost
sql_database: mail
sql_select: select password from mailbox where username='%u@ultranetas.lt'
sql_verbose: yes
log_level: 9
Покажите, что возвращает SELECT password FROM mailbox WHERE username='пользователь@ultranetas.lt';
А где это посмотреть, т.к. maillog этого не отображает, есть только одна ошибка.>Покажите, что возвращает SELECT password FROM mailbox WHERE username='пользователь@ultranetas.lt';
а вот в MYSQL -Database changed
mysql> show tables;
+-------------------+
| Tables_in_postfix |
+-------------------+
| alias |
| domain |
| mailbox |
| transport |
+-------------------+
4 rows in set (0.00 sec)mysql> select password FROM mailbox WHERE username='sasa@ultranetas.lt'
-> ;
+----------+
| password |
+----------+
| www |
+----------+
1 row in set (0.09 sec)mysql>
У самого только что была такая проблема. Бился очень долго. Решилось все после того как установил postgresql-libs хотя я и использую mysql. Cyrus не мог найти библиотеку libpq.so.3.После установки postgresql-libs создал симлинк
# ln -s /usr/lib/libpq.so.3.1 /usr/lib/sasl2/libpq.so.3
и только после этого у меня стал работать cyrus-sasl.
>mysql> select password FROM mailbox WHERE username='sasa@ultranetas.lt'
> -> ;
>+----------+
>| password |
>+----------+
>| www |
>+----------+
>1 row in set (0.09 sec)
www это не есть верный пароль при настройке "password_format: crypt"
Либо внесите в базу правильный пароль, либо уберите password_format из конфига.
смотри не в маил.лог а в mysql.log (/var/log или /var/log/mysql).И проблема в формате пароля. Или поставь не криптованый в конфиге, или криптованый в базе.
По идеи сасл не должен проверять юзверей, которые в базе. Только тех кого постфикс в базе не находит он отпинывает саслу.
На то похоже, что у меня mysql вообще некорректно работает - выдает в логах вот какую ошибку
050510 17:17:43 mysqld restarted
050510 17:17:52 InnoDB: Started; log sequence number 0 43644
050510 17:17:54 [Warning] mysql.user table is not updated to new password format ; Disabling new password usage until mysql_fix_privilege_tables is run
050510 17:17:54 [Warning] Can't open and lock time zone table: Table 'mysql.time_zone_leap_second' doesn't exist trying to live without them
Version: '4.1.10a' socket: '/tmp/mysql.sock' port: 3306 FreeBSD port:об этой ошибке много чего есть в гугле но ничего конкретного, да и кстати как в базу внести не простой пароль а криптованный?
зашифровал пароль с оцией PASSWORD - та же проблема.
>зашифровал пароль с оцией PASSWORD - та же проблема.
password() в mysql это не crypt(3)
>и кстати как в базу внести не простой пароль а криптованный?
Так же как и простой, только закодируйте его системной crypt(3).
Например у меня ваш 'www' выглядит так: $2a$06$P3EpqUlu9XA0DMguUXrRgODKjB24wp5g6wcgLbdxrgpMEEplDWwm6
Извиняюсь, достал, но
ну никак не пойму где и как использовать этот crypt
пишу
crypt www
key: 123
и все подвисает, а где вывод команды?
Да и кажется мне, что не поможет это, тк. у меня просит только авторизацию LOGIN, почему интересно нет PLAIN да и раньше все было хорошо, вот что главное. Обновил постфикс, мускл и началось. Да и кстати не у меня одного такие проблемы насколько знаю. Пробомал все делать по руководству мультика - тоже самое. Что посоветуете?
>Да и кажется мне, что не поможет это, тк. у меня просит
>только авторизацию LOGIN, почему интересно нет PLAIN да и раньше все
>было хорошо, вот что главное. Обновил постфикс, мускл и началось. Да
Смотрите:
LOGIN, PLAIN, ..., CRAM-MD5 это методы передачи имени пользователя и пароля между сервером и клиентом (mech в терменах sasl). К формату хранения пароля в *sql, ...,db это не имеет ни какого отношения. На поддерживаемые smtpd(8) механизмы авторизации влияет параметр mech_list из /path_to_sasl_libs/smtpd.conf и параметры сборки cyrus_sasl.
>и кстати не у меня одного такие проблемы насколько знаю. Пробомал
Вы ммм... уникальны.
У большенства проблема с sasl из-за dll hell.>все делать по руководству мультика - тоже самое. Что посоветуете?
Если вы не знаете что такое и зачем этот crypt, то отключите его и храните пароли открытом текстом.
Так в чем и загвоздка - я удаляю из сасла password format: crypt и та же проблема.
Причем не работает ни LOGIN, ни CRAM, ни PLAIN
>Причем не работает ни LOGIN, ни CRAM, ни PLAIN
А что в логах?Добавь в syslog.conf
*.debug /var/log/debugЗатем
# touch /var/log/debug
# killall -1 syslogdВот пример из моего maillog (правда это pop3 аутентификация)
Apr 11 12:31:36 turbogaz authdaemond: received auth request, service=pop3, authtype=cram-md5
Apr 11 12:31:36 turbogaz authdaemond: authmysql: trying this module
Apr 11 12:31:36 turbogaz authdaemond: cram: challenge=PEI3RTlEMjQwQkI5RjdGRUFDNDg1Nzk1Q0EwODZDMjc5QHR1cmJvZ2F6LmtoYXJrb3YtdWEuY29tPg==, response=b2xlZyA1MDBlODQ3ZjczMGQ1N2QxMWU2NzE2NzBlNDE1MTNjMQ==
Apr 11 12:31:36 turbogaz authdaemond: cram: decoded challenge/response, username 'oleg'
Apr 11 12:31:36 turbogaz authdaemond: SQL query: SELECT alias, "", password, id, gid, maildir, maildir, "", info, "" FROM aliases WHERE alias = "oleg@turbogaz.kharkov-ua.com"
Apr 11 12:31:36 turbogaz authdaemond: cram validation succeededА вот еще один кусок (smtp аутентификация)
sql plugin Parse the username webmaster
Apr 12 06:44:00 turbogaz postfix/smtpd[9257]: sql plugin try and connect to a host
Apr 12 06:44:01 turbogaz postfix/smtpd[9257]: sql plugin trying to open db 'mail' on host 'localhost'
Apr 12 06:44:01 turbogaz postfix/smtpd[9257]: warning: unknown[222.183.141.115]: SASL LOGIN authentication failed
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin Parse the username webmaster
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin try and connect to a host
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin trying to open db 'mail' on host 'localhost'
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: begin transaction
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin create statement from userPassword webmaster mail.turbogaz.kharkov-ua.com
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin doing query select password from aliases where alias='webmaster@turbogaz.kharkov-ua.com';
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin: no result found
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin create statement from cmusaslsecretPLAIN webmaster mail.turbogaz.kharkov-ua.com
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin doing query select password from aliases where alias='webmaster@turbogaz.kharkov-ua.com';
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: sql plugin: no result found
Apr 12 06:44:06 turbogaz postfix/smtpd[9257]: commit transactionИ еще приведи что выводит при подключении по telnet
# telnet localhost 25Вот мой пример
220 mail.turbogaz.kharkov-ua.com ESMTP Postfix (2.2.1)
ehlo alex
250-mail.turbogaz.kharkov-ua.com
250-OK
250-SIZE 10240000
250-ETRN
250-AUTH CRAM-MD5 LOGIN PLAIN DIGEST-MD5
250-AUTH=CRAM-MD5 LOGIN PLAIN DIGEST-MD5
250 8BITMIME
а у меня в логах только
smtpd[2291]: warning: SASL authentication failure: Password verification failed
smtpd[2291]: warning: Monstro[10.1.0.50]: SASL PLAIN authentication failedвот этого вообще нету
вот еще один кусок (smtp аутентификация)
sql plugin Parse the username webmaster
Apr 12 06:44:00 turbogaz postfix/smtpd[9257]: sql plugin try and connect to a host
Apr 12 06:44:01 turbogaz postfix/smtpd[9257]: sql plugin trying to open db 'mail' on host 'localhost'а все остальное у меня также
250-PIPELINING
250-SIZE 5120000
250-ETRN
250-AUTH LOGIN PLAIN GSSAPI OTP DIGEST-MD5 CRAM-MD5
250-AUTH=LOGIN PLAIN GSSAPI OTP DIGEST-MD5 CRAM-MD5
250 8BITMIME
>а у меня в логах только
>smtpd[2291]: warning: SASL authentication failure: Password verification failed
>smtpd[2291]: warning: Monstro[10.1.0.50]: SASL PLAIN authentication failed
>
>вот этого вообще нету
>
>вот еще один кусок (smtp аутентификация)
>sql plugin Parse the username webmasterа это значит что ты сделал так
cd /usr/ports/security/cyrus-sasl2
make WITH_MYSQL=YES
и mysql у тебя в cyrus-sasl2 нет
сам полночи из за этого протрахался :(
>а это значит что ты сделал так
>cd /usr/ports/security/cyrus-sasl2
>make WITH_MYSQL=YES
>и mysql у тебя в cyrus-sasl2 нета... простите...
а как же тогда надо делать?
>>а у меня в логах только
>>smtpd[2291]: warning: SASL authentication failure: Password verification failed
>>smtpd[2291]: warning: Monstro[10.1.0.50]: SASL PLAIN authentication failed
>>
>>вот этого вообще нету
>>
>>вот еще один кусок (smtp аутентификация)
>>sql plugin Parse the username webmaster
>
>а это значит что ты сделал так
>cd /usr/ports/security/cyrus-sasl2
>make WITH_MYSQL=YES
>и mysql у тебя в cyrus-sasl2 нет
>сам полночи из за этого протрахался :(
простите а как надо у меня таже ерунда, собирал из порта postfix + в опциях указад SASL2 и MySQL
>Извиняюсь, достал, но
>ну никак не пойму где и как использовать этот cryptя использую следующую комбинацию -
в консоли: insert into users (login, pass) values ('user@domain.com',encrypt('password'));
в phpMyAdmin выбираю функция encrypt
вместо encrypt можно использовать md5
Вопрос в сторону: как подобное сделать в PostgreSQL?
>Вопрос в сторону: как подобное сделать в PostgreSQL?хорошая статья: http://www.deepnet.ru/docs/source/postfix_pgsql.shtml
У меня всё тожк самое поделитесь решением...