1

На сервере установлена связка Centos + Posfix + MySQL + Devecot + PostfixAdmin

Перепробовал кучу всего, получается так что при создании пользователей через постфикс админ, всё ок, в базе всё прописывается, в логах это видно, а вот девекот ни в какую не хочет конектится к базе, даже не пытается. Приведу ещё раз конфиги:

dovecot.conf

protocols = pop3 imap
protocol pop3 {
listen = *:110
}
protocol imap {
listen = *:143
}
log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot.log
ssl_disable = yes
login_greeting = Welcome to IMAP/POP3 server.
mail_location = maildir:/usr/mail/%d/%n
mail_debug = yes
first_valid_uid = 1
last_valid_uid = 501
first_valid_gid = 501
last_valid_gid = 501
auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
auth default {
mechanisms = plain
passdb {
  args = /etc/dovecot-mysql.conf
}
userdb {
  args = /etc/dovecot-mysql.conf
}
user = virtual
}

dovecot-mysql.conf:


driver = mysql
connect = host=/var/lib/mysql/mysql.sock dbname=postfix user=postfix password=postfix
default_pass_scheme = PLAIN
password_query = SELECT username as user, password FROM mailbox WHERE username = '%u' and active='1'
user_query = SELECT maildir, 501 AS uid, 501 AS gid FROM mailbox WHERE username = '%u' and active='1'


ls -la /etc/dovecot-mysql.conf
-rwxr--r--. 1 virtual virtual 334 Апр  5 16:25 /etc/dovecot-mysql.conf


в логах dowecot:

Apr  5 16:27:57 mail dovecot: pop3-login: Disconnected (auth failed, 2 attempts): user=<test@********>, method=PLAIN, rip=*.*.*.*, lip=*.*.*.*, TLS

в логах sql чисто


Пытаюсь создать учётку через сандербёрд, он соответственно пишет неправильно ведены имя пользователя или пароль.

2

Вполне возможно что у вас запрос для mysql не верный у меня так

driver = mysql
connect = host=localhost dbname=xxx user=xxx password=xxx
default_pass_scheme = MD5

user_query = SELECT '/var/vmail/%d/%n' as home, 'maildir:/var/vmail/%d/%n' as mail, 5000 AS uid, 8 AS gid, concat('dirsize:storage=', quota) AS quota FROM mailbox WHERE username = '%u' AND active = '1'

password_query = SELECT username as user, password, '/var/vmail/%d/%n' asuserdb_home, 'maildir:/var/vmail/%d/%n' as userdb_mail, 5000 as userdb_uid, 8 asuserdb_gid FROM mailbox WHERE username = '%u' AND active = '1'

, проверте uid & gid группы и пользователя от которого почта отправляется, так же проверте имя базы, пользователя и пароль. Так же нужно дать этому пользователю все полномочия в mysql