Полный цикл в digital

Агент передачи почты Postfix

Postfix — это агент передачи почты (MTA), приложение для отправки и приема электронной почты. Его можно настроить так, чтобы только локальные приложения могли использовать его для отправки электронной почты. Это может быть полезно, если вам нужно регулярно рассылать по электронной почте уведомления от ваших приложений, или если у вас много исходящего трафика, и сторонний поставщик услуг электронной почты не разрешает такие объемы. Это облегченная альтернатива развертыванию полноценного сервера SMTP, позволяющая сохранить требуемые функции.

Базовые настройки

Имя хоста вашего сервера и имя указанное при автоматической настройке должны соответствовать. Для проверки имени хоста сервера можно ввести hostname в командной строке.

Обновляем список пакетов сервера:

sudo apt update

Обновляем пакеты сервера:

sudo apt upgrade

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

Установка mailtuils:

sudo apt install mailutils

В конце установки будет предложено выбрать несколько настроек.

Tип настройки - выбираем стандартную опцию Internet site:

Почтовое имя - определяется параметром System mail name и должно совподать с названием домена от имени которого будут приходить письма название_домена.com:

Управление Postfix

Запустить службу Postfix:

sudo systemctl start postfix

Остановить службу Postfix:

sudo systemctl stop postfix

Перезапустить службу Postfix:

sudo systemctl restart postfix

Статус службу Postfix:

sudo systemctl status postfix

Настройка Postfix

Настроим Postfix для отправки и приема электронных писем только с сервера, на котором он запущен, с localhost.

Для этого нужно настроить Postfix для прослушивания только интерфейса loopback, интерфейса виртуальной сети, которую сервер использует для внутренней связи. Для внесения изменений потребуется отредактировать главный файл конфигурации Postfix с именем main.cf, хранящийся в каталоге etc/postfix.

Скопируем конфигурационный файл:

sudo cp /etc/postfix/main.cf /etc/postfix/main.cf.default

Открываем конфигурационный файл Postfix:

sudo nano /etc/postfix/main.cf

Находим директиву myhostname и меняем содержимое на название_домена.com:

myhostname = название_домена.com

Также вам потребуется изменить директиву mydestination, используемую для указания списка доменов, доставляемых через транспорт доставки почты local_transport. В случае хостинга нескольких доменов на одном сервере другие домены также можно передать Postfix с помощью директивы mydestination:

mydestination = название_домена.com

Если ваш домен фактически является субдоменом, и вы хотите, чтобы сообщения электронной почты выглядели, как если бы они были отправлены с главного домена, вы можете добавить следующую строку в конец файла main.cf:

masquerade_domains = название_домена.com

Параметр inet_interfaces указывает все адреса сетевых интерфейсов, на которых Postfix должен ждать соединений:

inet_interfaces = loopback-only

Перезапустить службу Postfix:

sudo systemctl restart postfix

Настройка имени хоста сервера

Имя хоста сервера должно соответствовать домену который мы указывали ранее название_домена.com.

Проверяем имя хоста сервера, если не соответствует название_домена.com, меняем:

sudo nano /etc/hostname

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

Настроим переадресацию электронной почты для пользователя root, чтобы сгенерированные системой сообщения, отправляемые на этот адрес, пересылались на внешний адрес электронной почты.

Файл /etc/aliases содержит список альтернативных имен получателей электронных писем. Откройте его для редактирования:

sudo nano /etc/aliases

Единственная содержащаяся в нем директива предписывает пересылать сгенерированные системой электронные сообщения пользователю root. Добавьте в конец файла следующую строку которая содержит адрес электронной почты:

root:          логин@yandex.ru

Для вступления изменений в силу выполните следующую команду:

sudo newaliases

При запуске команды newaliases будет построена база данных псевдонимов, используемых командой mail. Эти псевдонимы берутся из файла конфигурации, который только что отредактировали.

Протестируйте отправку электронных писем пользователю root с помощью следующей команды:

echo "This is the body of the email" | mail -s "This is the subject line" root

Серверные логи

По умолчанию каждое отправленное сообщение регистрируется в файле:

/var/log/mail.log

По умолчанию все ошибки записываются в файл:

/var/log/mail.err

Тестирование

Теперь нужно проверить, может ли Postfix отправлять сообщения на внешний электронный адрес. Для этого используется команда mail, которая также входит в пакет mailutils.

Чтобы отправить тестовое сообщение, введите команду:

echo "Soobshchenie" | mail -s "Tema" логин@yandex.ru

Обратите внимание, в этой конфигурации адрес в поле From для отправляемых вами тестовых электронных писем будет иметь вид your_user_name@your_domain, где your_user_name – это пользователь сервера, от имени которого вы запускали команду.

Настройка Postfix под Яндекс

Возникает ощибка по причине что Яндекс не поддерживает SMTPUTF8, по умолчанию SMTPUTF8 включено в новых версиях Postfix. Отключить SMTPUTF8 можно указав в файле /etc/postfix/main.cf директиву.

Открываем конфигурационный файл Postfix:

sudo nano /etc/postfix/main.cf

В конец файла вставляем:

smtputf8_enable = no

Перезапустить службу Postfix:

sudo systemctl restart postfix
Заполните форму уже сегодня!
Для начала сотрудничества необходимо заполнить заявку или заказать обратный звонок. В ответ получите коммерческое предложение, которое будет содержать индивидуальную стратегию с учетом требований и поставленных задач
Работаем по будням с 9:00 до 18:00. Заявки, отправленные в выходные, обрабатываем в первый рабочий день до 12:00.
Спасибо, ваш запрос принят и будет обработан!
Эйч Маркетинг