Быстро, доступно, безопасно!
Магазин готовых сайтов

Почтовый сервер Postfix

Открытый и широко используемый почтовый сервер (MTA, Mail Transfer Agent) для Unix-подобных систем, предназначенный для отправки, получения и маршрутизации электронной почты по протоколу SMTP, известный своей высокой производительностью, безопасностью и гибкостью настройки.

Настройка сервера на AlmaLinux 8.10 -> Postfix

SMTP (Simple Mail Transfer Protocol) используется как для отправки, так и для приёма почты между серверами. То есть, когда один почтовый сервер передаёт письмо другому — это тоже делается по SMTP.

Однако SMTP не используется для получения почты пользователями (через почтовые клиенты) — для этого служат POP3 и IMAP.

Postfix реализует SMTP:

  • Принимает почту от клиентов (например, от Thunderbird, Outlook, webmail).
  • Принимает почту от других серверов.
  • Отправляет почту другим серверам.

Но чтобы пользователь мог забрать свою почту (уже доставленную и сохранённую на сервере), нужен POP3 или IMAP-сервер — например, Dovecot.

Узнать статус службы: systemctl status postfix

При редактировании файла конфигурации рекомендуется изменять не более 2-3 параметров за раз, проверяя после этого, работает ли Postfix.

Необходимо отредактировать конфигурационный файл vim /etc/postfix/main.cf и указать ряд параметров:

myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
mynetworks = 127.0.0.0/8 [::1]/128
inet_interfaces = 192.168.1.100
inet_protocols = ipv4

Для того, чтобы почта хранилась в домашних каталогах пользователей, где размер почты будет легко ограничивать с помощью стандартных дисковых квот необходимо указать дополнительные параметры.

В файле /etc/postfix/main.cf напишите: home_mailbox = mail/inbox
mailbox_command =

После внесения изменений перезапустить службу: systemctl restart postfix

При возникновении ошибки "SMTPUTF8 is required, but was not offered by host" выполнить команду: postconf smtputf8_enable=no
postfix reload

В процессе настройки службы может образоваться очередь из сообщений, которые по разным причинам не могут быть доставлены. Удалить все сообщения в очереди можно командой: postsuper -d ALL

Чтобы Postfix автоматически запускался при загрузке системы надо выполнить команду: systemctl enable postfix.service

Проверить статусы служб: systemctl list-unit-files

Вывод конфигурации Postfix в удобном для чтения формате: postconf -f

Журнал почты: /var/log/maillog

Текущую PTR-запись можно проверить командой: dig -x 1.2.3.4 +short
mail.example.com
или host 1.2.3.4
4.3.2.1.in-addr.arpa domain name pointer mail.example.com.

Для того, чтобы веб-сервер мог отправлять почту, например, письма отправляемые через форму контактов на сайте, необходимо установить SELinux-разрешение для отправки почты из httpd/CGI/FastCGI/скриптов сайта: setsebool -P httpd_can_sendmail 1


Настройка переадресации почты для домена

Когда не нужен полноценный почтовый ящик, а требуется возможность лишь получать почту в заданном домене вполне можно обойтись переадресацией почты, поступающей на заданный домен, например: user@example.comanotheruser@example.net - почта отправленная на первый адрес будет перенаправлена на второй.

Меняем конфигурацию Postfix в файле /etc/postfix/main.cf: postconf -e 'virtual_alias_domains = hash:/etc/postfix/virtual_alias_domains'

Создаем файл со списком адресов, которые надо переадресовать на другой почтовый ящик: vim /etc/postfix/virtual_aliases_generated

Добавляем необходимые адреса: a@example.com     user@example.net
bb@example.com    user@example.net
ccc@example.com   user@example.net

Подключаем файл со списком адресов для переадресации в конфигурацию Postfix и перезагружаем службу: postconf -e 'virtual_alias_maps = hash:/etc/postfix/virtual, hash:/etc/postfix/virtual_aliases_generated'
systemctl reload postfix

После создания списка переадресаций необходимо создать рабочую hash-таблицу: postmap /etc/postfix/virtual_aliases_generatedЭта команда должна выполняться после каждого редактирования списка переадресаций.

Метки: postfix; email; почта

Опрос

В каком году был сделан ваш сайт? (голосов: 24)

  • до 2015 года - 23 (96%)
  • в 2015 - 0 (0%)
  • в 2016 - 0 (0%)
  • в 2017 - 0 (0%)
  • в 2018 - 1 (4%)
  • в 2019 - 0 (0%)