Назад | Перейти на главную страницу

Я пытаюсь заставить почтовый сервер работать на PostgreSQL

Я пытаюсь настроить почтовый сервер на PostgreSQL, но получаю следующее сообщение об ошибке:

Apr 16 20:48:57 alm authdaemond: PGSQL_CONNECTION could not be established
Apr 16 20:48:57 alm authdaemond: FATAL:  database "mail_admin" does not exist.

Я последовал этому руководству и попытался как-то заставить его работать в PostgreSQL вместо MySQL: https://www.howtoforge.com/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-ubuntu-14.04-lts

Да, у меня есть почта базы данных, и это пользователь mail_admin, и этот пользователь имеет доступ к почтовой базе данных.

Вот еще журналы ошибок.

Apr 16 20:58:35 alm imapd: LOGIN FAILED, user=xxx.xxx@yourdomain.com, ip=[::ffff:91.154.218.57]
Apr 16 20:58:36 alm postfix/smtpd[21430]: warning: SASL authentication failure: Password verification failed
Apr 16 20:58:36 alm postfix/smtpd[21430]: warning: unknown[78.128.113.99]: SASL PLAIN authentication failed: authentication failure
Apr 16 20:58:37 alm postfix/smtpd[21430]: lost connection after AUTH from unknown[78.128.113.99]
Apr 16 20:58:37 alm postfix/smtpd[21430]: disconnect from unknown[78.128.113.99] ehlo=1 auth=0/1 commands=1/2

Я наконец понял, что это работает.

Таблица пользователей нуждается в небольшом изменении, потому что authpgsql Courier работает иначе в MySQL authmysql.

Вроде нужны эти столбцы:

email   crypt   quota   name    uid     gid     clear   home    auxoptions

В столбце crypt зашифрованный пароль хранится как crypt: https://xnode.org/page/Crypt_Generator Может быть сгенерирован по указанному ранее адресу

тогда дом должен быть установлен следующим образом для каждого домена, который вы размещаете: /home/vmail/domain1.com/ /home/vmail/domain2.com/

А файлу authpgsqlrc нужно это:

PGSQL_MAILDIR_FIELD split_part(email,'@',1)