Начнём честно: идея иметь собственный почтовый сервер звучит круто, но на практике многие сталкиваются с разочарованием — письма попадают в спам, провайдер блокирует подключение, сертификаты не продлеваются, а в логах царит хаос. Эта статья проведёт вас шаг за шагом — от подготовки домена и IP до настройки Postfix, Dovecot, DKIM, SPF и DMARC, объяснит ключевые ошибки и даст практический план действий, чтобы вы не теряли время на бессмысленные эксперименты.
- Краткий план компонентов и зачем они нужны
- Подготовка окружения и выбор хоста
- Как выбирать провайдера и IP
- Настройка DNS: MX, A, PTR, SPF, DKIM, DMARC
- Обязательные записи
- SPF
- DKIM
- DMARC
- Выбор программного стека
- Готовые сборки и альтернативы
- Быстрая установка и базовая конфигурация Postfix и Dovecot
- DKIM через OpenDKIM
- Антиспам и антивирус
- Тестирование и проверка
- Веб-почта и управление пользователями
- Maildir vs mbox
- Безопасность и поддержка
- Доставляемость писем: практика и советы
- Типичные ошибки и как их исправить
- Пошаговый план на первую неделю
- Итог
Краткий план компонентов и зачем они нужны
Перед тем как копаться в конфигурациях, полезно понять, из чего состоит современный почтовый сервер и какие блоки влияют на доставляемость.
| Компонент | Зачем нужен | Примеры |
|---|---|---|
| Домен и DNS | Адрес для писем, настройки SPF/DKIM/DMARC, MX-запись | example.com, mail.example.com |
| Статический IP и PTR | Обратная запись нужна получателям для доверия | 1.2.3.4 -> mail.example.com |
| MTA (Mail Transfer Agent) | Принимает и отправляет SMTP-почту | Postfix, Exim |
| MDA и IMAP/POP3 | Хранение почты и доступ пользователей | Dovecot, Courier |
| Антиспам/антивирус | Фильтрация нежелательной почты и вредоносных вложений | Rspamd, SpamAssassin, ClamAV |
| DKIM/SPF/DMARC | Подпись, политика и защита от подделки отправителя | OpenDKIM, TXT записи |
| TLS | Шифрование транспорта SMTP/IMAP | Let’s Encrypt, Certbot |
Подготовка окружения и выбор хоста
Первое, что нужно — стабильный сервер с публичным статическим IP. Если вы используете VPS с общим пулом динамических IP, вероятность попадания в чёрные списки выше. Лучше взять выделенный IP у приличного провайдера и тут же попросить их настроить PTR (обратную запись) на имя mail.. PTR обязателен для хорошей репутации.
Как выбирать провайдера и IP
- Проверьте репутацию подсети: инструменты типа mxtoolbox или spamhaus показывают, не находится ли IP в RBL.
- Уточните у провайдера возможность открыть исходящие порты SMTP (25). Многие хостинги блокируют 25 по умолчанию.
- Если у вас домашний интернет или динамический IP, лучше не пытаться отправлять почту напрямую — крупные почтовые сервисы будут блокировать такие соединения.
Настройка DNS: MX, A, PTR, SPF, DKIM, DMARC

Правильные DNS-записи — это фундамент. Ошибки здесь убьют доставляемость быстрее всего.
Обязательные записи
- MX запись указывает приёмник почты: example.com MX 10 mail.example.com.
- A запись связывает имя mail.example.com с вашим IP.
- PTR на стороне провайдера должен указывать IP -> mail.example.com.
SPF
SPF — простой текстовый механизм, который говорит, кто может отправлять почту от имени домена. Пример минимальной записи:
example.com. TXT "v=spf1 mx ip4:1.2.3.4 -all"
Эта запись разрешает отправку с MX и с указанного IP, всё остальное запрещено.
DKIM
DKIM подписывает исходящие письма приватным ключом; публичный ключ публикуется в DNS. Стандартный рабочий ход: создаёте селектор, генерируете ключи и добавляете TXT запись типа selector._domainkey.example.com.
DMARC
DMARC даёт инструкцию получателям, как обрабатывать письма, которые не прошли SPF/DKIM. Пример начальной записи для мониторинга:
_dmarc.example.com. TXT "v=DMARC1; p=none; rua=mailto:postmaster@example.com"
Сначала ставьте p=none для сбора статистики, позже ужесточайте до quarantine или reject и подключайте отчёты.
Выбор программного стека
Есть два подхода: собрать гибкий набор компонент или установить готовый стек. Я рекомендую начать с классики: Postfix для MTA и Dovecot для IMAP/POP3. В связке с OpenDKIM и Rspamd вы получите управляемую и надёжную систему.
Готовые сборки и альтернативы
- Mailcow, iRedMail, Modoboa — быстро разворачивают всё целиком, полезно для теста или небольших команд.
- Zimbra и Microsoft Exchange — тяжёлые решения для крупного бизнеса.
- Если нужен простой SMTP-relay, можно использовать облачный сервис типа SendGrid.
Быстрая установка и базовая конфигурация Postfix и Dovecot
Ниже — упрощённая последовательность действий для Debian/Ubuntu. Это скелет: настройки под ваш случай потребуют доработки.
- Установите пакеты:
apt install postfix dovecot-core dovecot-imapd. - В Postfix укажите myhostname = mail.example.com, mydestination = example.com, inet_interfaces = all.
- Откройте порт 587 для Submission и настройте поддержку SASL через Dovecot.
- В Dovecot активируйте Maildir, настроите authenticate и подключите базу пользователей (если виртуальные пользователи).
Пример ключевых строк в main.cf (очень базово):
myhostname = mail.example.com
myorigin = /etc/mailname
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
DKIM через OpenDKIM
OpenDKIM действует как milter между Postfix и почтой. Нужны две вещи: генерируем ключ и публикуем публичный ключ в DNS.
- Генерация ключа:
opendkim-genkey -t -s selector -d example.com. - Добавление публичного ключа в TXT запись selector._domainkey.example.com.
- Настройка /etc/opendkim.conf и подключение milter к Postfix.
После установки отправьте тестовое письмо и проверьте заголовки на предмет DKIM-Signature.
Антиспам и антивирус
Rspamd — это современная и быстрая система для оценки спама. Она даёт гибкий набор правил, позволяет интегрировать greylisting, DNSBL и собственные фильтры. ClamAV полезен для сканирования вложений. Важный момент: не перегружайте пользователей ложными срабатываниями. Начните с мягкой конфигурации и повышайте строгость по мере накопления статистики.
Тестирование и проверка
После настроек пройдитесь чек-листом:
- MX и A записи корректны и видны в публичном DNS.
- PTR указывает на mail.example.com.
- SPF, DKIM и DMARC записи опубликованы и валидны.
- SMTP отвечает на 25 и 587, STARTTLS работает, сертификат действителен.
- Письма не проходят как open relay.
- Проверьте доставляемость через сервисы mail-tester.com и mxtoolbox.
Веб-почта и управление пользователями
Для доступа пользователей удобен Roundcube или Rainloop. Чтобы управлять виртуальными доменами и пользователями, используйте PostfixAdmin или храните пользователей в базе (MySQL/Postgres). Виртуальные пользователи — гибкий выбор для хостинга нескольких доменов на одном сервере.
Maildir vs mbox
Рекомендую Maildir: удобнее для параллельного доступа, меньше проблем с повреждениями при сбое. Dovecot легко работает с Maildir и поддерживает квоты.
Безопасность и поддержка
Обязательные меры: автоматическое продление TLS сертификатов через Certbot, настройка fail2ban для защиты от перебора паролей, регулярные бэкапы /var/mail и базы данных пользователей, ротация логов. Мониторинг почтовой очереди и метрик поможет поймать проблемы вовремя.
Доставляемость писем: практика и советы
Чтобы письма не тонул в спаме, важно не только технически всё настроить, но и соблюдать правила отправки:
- Умеренные объёмы отправки, постепенное увеличение (warming up) — особенно важно для новых IP.
- Чистить списки подписчиков, не отправлять на мёртвые адреса.
- Обрабатывать bounce и отписки автоматически.
- Следить за репутацией IP и домена в RBL и провайдерах.
Типичные ошибки и как их исправить
| Ошибка | Причина | Как исправить |
|---|---|---|
| Письма уходят в спам | Нет DKIM/SPF/DMARC или плохая репутация IP | Настроить SPF/DKIM/DMARC, проверить репутацию IP, снизить объёмы рассылки |
| Почта не принимается внешними серверами | Порт 25 закрыт или нет PTR | Открыть порт 25, попросить провайдера настроить PTR |
| Проблемы с аутентификацией | Неправильный SASL/Dovecot или права на сокет | Проверить настройки Dovecot и права на /var/spool/postfix/private/auth |
Пошаговый план на первую неделю
- Купить домен, заказать VPS с выделенным IP и попросить PTR.
- Настроить базовые DNS (A, MX) и убедиться, что DNS распространяется.
- Установить Postfix и Dovecot, включить Submission и STARTTLS.
- Получить и поставить TLS сертификат от Let’s Encrypt.
- Подключить OpenDKIM и опубликовать DKIM public key в DNS.
- Настроить SPF и добавить DMARC с p=none для мониторинга.
- Проверить отправку на тестовые сервисы, настроить Rspamd, включить логирование и мониторинг.
Итог
Создать почтовый сервер самостоятельно — вполне реальная задача, если подойти к ней методично. Самое дорогое в проекте — время, необходимое для настройки и поддержания хорошей репутации адреса отправки. Начните с небольших объёмов, тщательно настройте DNS, TLS, DKIM и SPF, и постепенно усложняйте систему по мере потребностей. Если нужно, пришлите детали вашего окружения — домен, провайдера, цель использования — и я помогу составить конкретный план конфигурации.












