Postfix — MTA (Mail Transfer Agent, агент передачи почты) с открытым исходным кодом, обрабатывающий отправку и приём электронной почты через SMTP-протокол. Разработан как более безопасная и производительная замена Sendmail. Принимает письма от MUA (почтовых клиентов типа Thunderbird, Outlook) или других MTA, маршрутизирует их и доставляет в локальный почтовый ящик или пересылает на следующий сервер.
Архитектура Postfix
Postfix состоит из набора изолированных процессов с минимальными привилегиями — каждый выполняет строго одну задачу. Это ключевое отличие от монолитной архитектуры Sendmail, где весь код работал с правами root:
- smtpd — принимает входящие SMTP-соединения на портах 25, 587 (submission) или 465 (SMTPS)
- smtp — отправляет письма на удалённые серверы по SMTP
- qmgr — менеджер очереди, планирует доставку и управляет повторными попытками при временных отказах
- local — доставка в локальные почтовые ящики форматов Maildir или mbox
- cleanup — нормализация сообщений и добавление недостающих заголовков (Date, Message-ID)
- virtual — доставка для виртуальных доменов (несколько доменов на одном сервере)
Основные файлы конфигурации: /etc/postfix/main.cf (глобальные параметры) и /etc/postfix/master.cf (управление процессами и привилегиями). Минимальная конфигурация для VPS:
myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
smtpd_tls_cert_file = /etc/ssl/certs/mail.crt
smtpd_tls_key_file = /etc/ssl/private/mail.key
smtpd_use_tls = yes
История
Postfix создал Витсе Венема (Wietse Venema) в IBM Research в 1997–1998 годах. Первоначально назывался IBM Secure Mailer, затем VMailer. Публичный релиз под именем Postfix состоялся в декабре 1998 года. Цель — заменить Sendmail, который накопил за 20 лет историю серьёзных уязвимостей из-за монолитной архитектуры и постоянной работы с правами root. К 2023 году Postfix занимает около 33% рынка интернет-почтовых серверов по данным MailSurvey.org, уступая только Exim (~57%, популярен в хостинг-провайдерах через cPanel).
Postfix в стеке хостинга
В хостинг-стеке Postfix работает в связке с несколькими компонентами:
- Dovecot — IMAP/POP3-сервер; Postfix доставляет письма в Maildir, Dovecot хранит и отдаёт клиентам
- rspamd или SpamAssassin — фильтрация спама через milter-интерфейс (rspamd быстрее и современнее)
- ClamAV — антивирусная проверка вложений через amavisd-new
- OpenDKIM или rspamd — подписание исходящих писем через DKIM
- Fail2ban — защита от brute-force атак на SMTP-аутентификацию (мониторит
/var/log/mail.log)
На что обращать внимание
При настройке Postfix на VPS три шага обязательны для доставки писем в Gmail и Яндекс.Почту: установить PTR-запись (reverse DNS) для IP через панель управления провайдером; настроить DKIM-подписание; добавить корректные SPF- и DMARC-записи в DNS домена. Без PTR крупные провайдеры отклоняют письма с ошибкой «550 PTR record required». Если сервер попал в чёрные списки — сначала устраняется причина (закрыть открытый relay, удалить malware), затем подаётся заявка на делистинг. Проверка: mail-tester.com (цель — 10/10 баллов).
Типичные команды администрирования
Основные команды для работы с очередью Postfix:
postqueue -p— просмотр очереди писемpostqueue -f— немедленная повторная попытка доставки всей очередиpostsuper -d ALL— удалить все письма из очередиpostconf -n— показать только изменённые параметры конфигурацииpostfix check— проверить конфигурацию без перезапуска
Логи Postfix пишутся в syslog (обычно /var/log/mail.log) и доступны через journald: journalctl -u postfix.