Наличие собственного почтового сервера — это способ получить полный контроль над почтовой инфраструктурой. Один из самых популярных вариантов этого достичь — это использовать Postfix с хранением учетных данных в локальном файле вместо базы данных.
В этой статье мы разберемся с тем, как устанавливать и настраивать почтовый сервер.

Архитектура почтового сервера на базе Postfix с файловой аутентификацией
Для установки надежного почтового сервера на базе Postfix с файловой аутентификацией важно понимать как взаимодействуют между собой разные компоненты системы. В такой архитектуре Postfix обычно выполняет функцию приема, отправки и маршрутизации писем, как MTA (Mail Transfer Agent), а Dovecot или Cyrus SASL отвечают за проверку прав доступа, то есть аутентификацию.
Архитектура строиться по принципу отдельных ролей для каждого сервиса:
- Postfix (MTA) — это ядро системы. Он принимает почту, проверяет ее и решает доставлять ли ее локально или пересылать дальше.
- Dovecot (Mail Delivery Agent) — забирает почту у Postfix и раскладывает ее по папкам пользователей. Дополнительно, предоставляет доступ к письмам по протоколам IMAP/POP3.
- SASL (Simple Authentication and Security Layer) — позволяет Postfix «уточнять» у Dovecot есть ли у пользователя права отправить письмо. Реализуется через Dovecot.
- Хранилище учетных записей — место, где хранятся локальные файлы.
Подготовка окружения: требования к системе и сетевой инфраструктуре
Перед установкой важно подготовить сервер и сеть, так как почтовая инфраструктура чувствительна к настройкам DNS и изменениям IP-адреса.
Минимальные ресурсы сервера и поддерживаемые ОС
Для базового почтового сервера достаточно:
- 1–2 CPU
- 1–2 GB RAM
- 10–20 GB дискового пространства
Поддерживаются популярные Linux-дистрибутивы, такие, как Ubuntu, Debian, CentOS, AlmaLinux.
Настройка DNS, PTR, SPF и базовых почтовых записей
Важно корректно настроить DNS-записи:
- MX-запись — ваш почтовый сервер;
- A-запись — связывает домен с IP;
- PTR-запись (reverse DNS) — должна соответствовать домену;
- SPF-запись — разрешает серверу отправлять почту от имени домена;
Без этих записей письма будут попадать в спам или не отправляться.
Установка Postfix на Linux-сервер
Инсталляция пакетов через apt / yum
Для Debian/Ubuntu:
apt update apt install postfix
Для CentOS/AlmaLinux:
yum install postfix
При установке выберите тип конфигурации “Internet Site” и укажите основной домен.

Организация хранения учетных данных в файле
Вместо хранения данных в базе, можно использовать файл. Например:
user@example.com:{PLAIN}password
Файл необходимо защитить правами доступа, и, при необходимости, конвертировать в формат, который поддерживается SASL.
Читайте также: Создание сайта в ISPmanager 6 Lite
Настройка SMTP-аутентификации (SASL) через файловую базу
Подключение Dovecot или Cyrus SASL
Аутентификация выполняется путем взаимодействия Postfix с SASL-демоном. На практике чаще использует Dovecot благодаря более простой настройке.
Конфигурация main.cf и master.cf
Включите SASL-аутентификацию в файле main.cf:
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
Также важно разрешить аутентифицированным пользователям отправку почты:
smtpd_recipient_restrictions =
permit_sasl_authenticated,
reject_unauth_destination
В последствии master.cf активируется порт 587 для отправки почты с авторизацией.
Настройка TLS и шифрования соединений
Для того чтобы данные были защищенные, необходимо включить TLS:
smtpd_tls_cert_file=/etc/ssl/certs/your_cert.pem
smtpd_tls_key_file=/etc/ssl/private/your_key.pem
smtpd_use_tls=yes
Мы рекомендуем использовать сертификаты от Let’s Encrypt.
Часто спрашивают: Выделенный IP-адрес: нужен ли он вашему сайту и какие преимущества дает
Конфигурация приема и отправки почты
Настройка myhostname, mydomain и mydestination
Вам нужно указать базовые параметры (имя хоста, домен, и путь) в файле main.cf:
myhostname = mail.example.com
mydomain = example.com
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
Ограничения на relay и защита от open relay
Также важно запретить неавторизованную пересылку почты:
smtpd_relay_restrictions = permit_sasl_authenticated, reject_unauth_destination
Это предотвращает доступ злоумышленников к серверу.
Защита сервера от спама и злоупотреблений
Для повышения безопасности можно:
- Подключить RBL (черные списки IP).
- Ограничить количество соединений.
- Использовать фильтры такие как SpamAssassin или Amavis.
- Настроить DKIM и DMARC
Эти меры помогают сохранить целостность сервера.
Читайте также: Оптимизация скорости загрузки: настройка кэширования и сжатия в .htaccess
Тестирование работоспособности почтового сервера
После настройки необходимо проверить насколько корректно работает:
- Отправка писем (SMTP);
- Получение писем (IMAP/POP3);
- TLS;
- Попадание писем в inbox, а не в spam;
Для тестов можно использовать telnet, swaks или почтовые клиенты.