Настройка почтового сервера на связке Postfix+Dovecot+MySQL+PostixAdmin+Roundcube на Centos 8. Часть 2

Автор: | 10 января, 2020

Продолжаем.

1. Настройка Dovecot.

Главный конфигурационный файл разбит на несколько файлов, каждый из которых отвечает за определенный функционал.

Структура директории с конфигурационными файлами Dovecot имеет следующий вид:

/etc/dovecot

dovecot.conf — конфигурационный файл Dovecot;

/etc/dovecot/conf.d/

10-auth.conf — параметры процесса авторизации;
10-director.conf — параметры Dovecot Director;
10-logging.conf — ведение логов;
10-mail.conf — расположение почтовых ящиков и параметры пространства имен;
10-master.conf — сетевые параметры и ограничения для процессов;
10-ssl.conf — параметры SSL;
15-lda.conf — параметры LDA;
20-imap.conf — настройки процесса IMAP;
20-lmtp.conf — настройки процесса LMTP;
20-pop3.conf — настройки процесса POP3;
90-acl.conf — списки доступа к почтовым ящикам;
90-plugin.conf — параметры для плагинов;
90-quota.conf — настройки квот;
auth-*.conf.ext — параметры различных баз данных пользователей;

Переименуем основной файла, на всякий случай.

Соберем все в одном конфиге, я постараюсь дать пояснения под каждый параметр.

Перед этим, сделаем необходимые приготовления, которые нужны в дальнейшем. Вся почта будет хранится в /opt/mail/. Создадим пользователя и группу от которых будет работать почтовая система, назначим права.

Итак, создаем новый конфиг

и добавляем в него это:

Создаем файл с подключением к MySQL

и вносим это:

2. Удаляем exim и устанавливаем postfix

3. Запуск Dovecot и проверка конфигурации

Запускаем службу и добавляем ее в автозагрузку

Если что то пошло не так, проверяем логи и вывод systemctl status dovecot.service

Проверяем

4. Настройка postfix

Все настройки хранятся в файлах main.cf и master.cf. Поэтому сделаем их бэкап перед правкой.

Создадим конфиги для работы postfix с базой MySQL, для этого сделаем отдельную директорию и создадим там файлы:

Создадим сами файлы:

Удаляем все из файла main.cf и вставляем в него это:

Чтобы аутентификация работала корректно, запустим Submission, подняв SMTP сервис дополнительно на 587 порту. Смартфоны при создании новых учётных записей при вписывании smtp сервера с аутентификацией по умолчанию предлагают 587 порт. Добавим в самый конец секции в файле /etc/postfix/master.cf, отвечающую за submission и то, что доставкой почты заимается dovecot :

Важно, поставить 2(!!!) пробела в строке flags=DRhu и т.д.

Устанавливаем postgrey

Запускаем postfix

Проверяем запущенные службы:

Если что то не запустилось, проверяем логи в файлах: /var/log/maillog и /var/log/messages

Открываем\проверяем потры (25,143, 587,993,995) на iptables. Я специально не стал открывать 110 (pop3), т.к. не нуждаюсь в нем. Проверяем работу:

Настраиваем почтовый клиент, я буду настраивать Thunderbird.

Пробуем отправить и получить почту. Если что то не работает, изучаем логи (см.выше). Так же, для тестов можно использовать онлайн проверки, например https://mxtoolbox.com или https://emailsecuritygrader.com. Вот, что получилось у меня:

Проверим отправку почты, устанавливаем mailx (для отправка почту через консоль)

настроим алиас для root, чтоб вся локальная почта, которая приходит на root-а, приходила к нам в ящик. Открываем файл /etc/aliases и добавляем в самый конец:

Чтоб наши изменения вступили в силу, выполним в консоли

Пробуем отправить почту:

Проверяем свой почтовый ящик, письма должны прийти. Если не так, смотрим логи (см. выше).

Некоторые полезные команды для мониторинга postfix-а, установим пакет:

сами команды

На данном этапе, у нас есть почтовый сервер, которым можно уже пользоваться, но мы на этом не останавливаемся.