Установка почтового сервера на Rocky Linux 9 или Alma Linux 9 с использованием SMTP-сервера Postfix

Почему стоит рассмотреть возможность создания собственного почтового сервера? Возможно, у вас есть сайт, которому необходимо отправлять электронные письма пользователям, или вы желаете сохранить свою почту на личном сервере для повышения уровня безопасности. Тем не менее, развертывание почтового сервера с нуля может быть довольно сложной задачей, так как требует установки и настройки множества программных компонентов. Чтобы упростить этот процесс, я готовлю серию инструкций по созданию собственного почтового сервера на базе Rocky Linux 9 или Alma Linux 9.

Настройте собственный почтовый сервер на CentOS с использованием Postfix SMTP.

С уверенностью заявляю, что это самый лучший и исчерпывающий курс по созданию почтового сервера с нуля, доступный в интернете. Вы не только освоите настройку работающего почтового сервера, но и значительно улучшите свои знания о принципах функционирования электронной почты. Курс состоит из 13 разделов:

  1. Конфигурация основного SMTP сервера Postfix
  2. Конфигурация IMAP-сервера Dovecot с использованием шифрования TLS
  3. Настройка виртуальных почтовых ящиков с помощью PostfixAdmin.
  4. Настройка записей SPF и DKIM для успешного обхода спам-фильтров.
  5. Настройка DMARC для обеспечения безопасности репутации вашего домена.
  6. Как предотвратить пометку ваших писем как спам
  7. Способы добавления нескольких почтовых доменов в PostfixAdmin.
  8. Предотвращение спама с использованием Postfix
  9. Фильтрация спама с использованием SpamAssassin
  10. Конфигурация Amavis и ClamAV для сканирования вирусов в электронной почте.
  11. Способы защиты почтового сервера от несанкционированного доступа с использованием личного VPN-сервера.
  12. Способы обхода черных списков в электронной почте.
  13. Включение и конфигурирование Postscreen в Postfix для предотвращения работы спам-ботов.

Я осознаю, что это может казаться довольно трудной задачей. Тем не менее, в зависимости от ваших целей, вам может не понадобиться выполнять все этапы. Мои статьи написаны простым языком, поэтому если вы посвятите этому время, то сможете создать функционирующий почтовый сервер.

Рекомендация: Если вы предпочитаете избежать длительной и сложной процедуры создания почтового сервера самостоятельно, рассмотрите возможность использования управляемого VPS от Scalahosting. Это позволит вам быстро и легко настроить полнофункциональный почтовый сервер.

Данная статья представляет собой первую часть учебного курса. В ней я расскажу, как произвести настройку базового SMTP сервера Postfix, который также называется агентом транспортировки сообщений (MTA). По завершении чтения этой статьи вы сможете отправлять и получать электронные письма с использованием собственного почтового домена на вашем почтовом сервере.

Содержание статьи

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

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

  • Он несет ответственность за отправку электронных писем от почтового клиента или агента пользователя к удаленному серверу SMTP.
  • Он также применяется для получения сообщений от других SMTP-серверов.

Postfix разработан Вйетсе Венемом, специалистом в области Unix и безопасности. Эта система почтовой передачи отличается простотой в использовании и ориентирована на безопасность и модульность. Каждый модуль функционирует с минимальными привилегиями, необходимыми для выполнения своих задач. Postfix хорошо интегрируется с Unix/Linux и не дублирует функции, уже присутствующие в этих операционных системах. Он проявляет надежность как в обычных, так и в экстремальных условиях.

Postfix был создан как альтернатива Sendmail — классическому SMTP-серверу для Unix. По сравнению с Sendmail, Postfix предлагает более высокий уровень безопасности и легкость в конфигурации. Он поддерживает совместимость с Sendmail, поэтому замена Sendmail на Postfix не повлияет на работу ваших текущих скриптов и приложений.

В данном пособии вы освоите процесс настройки Postfix для использования с одним доменом.

Подбор подходящего провайдера хостинга.

Выбор подходящего провайдера VPS (виртуального частного сервера) для хостинга электронной почты может оказаться непростой задачей. Многие компании, такие как DigitalOcean, блокируют порт 25. DigitalOcean не производит разблокировку этого порта, поэтому вам потребуется настроить SMTP релей, что может потребовать дополнительных затрат. Если вы рассматриваете VPS от Vultr, имейте в виду, что порт 25 изначально также закрыт. Вы можете запросить его разблокировку, открыв тикет в службу поддержки, но провайдер оставляет за собой право повторно заблокировать его, если посчитает вашу почтовую активность недопустимой. Vultr может вновь ограничить доступ, если вы используете их серверы для рассылки информационных бюллетеней.

Еще одна из проблем заключается в том, что крупные и популярные хостинг-провайдеры, такие как DigitalOcean и Vultr, часто становятся жертвами злоупотреблений со стороны спамеров. В результате IP-адреса их серверов часто оказываются в различных черных списках. Например, у Vultr имеется несколько целых диапазонов IP-адресов, которые уже занесены в эти списки.

Kamatera VPS — отличный выбор для создания почтового сервера, так как

  • Порт 25 не заблокирован.
  • IP-адрес не занесен в черный список электронной почты. (По крайней мере, это так в моем случае, так как я выбрал дата-центр в Далласе.) Вам точно не нужно попадать в печально известный черный список IP Microsoft Outlook или SpamRats. Некоторые черные списки могут блокировать целые диапазоны IP-адресов, и в таких случаях вы не сможете удалить свой IP из них.
  • Редактирование PTR-записи поможет повысить эффективность доставки электронной почты.
  • Эти инструменты позволяют рассылать информационные бюллетени подписчикам через электронную почту без ограничений по времени. Однако важно помнить, что рассылка спама, или нежелательных массовых писем, запрещена. Если получатель не дал явного согласия на получение ваших писем, то ваши сообщения будут считаться спамом.
  • Можно заказать несколько IP-адресов для одного сервера. Это особенно удобно для тех, кто планирует отправлять большое количество электронной почты. Распределение почтового трафика между разными IP-адресами способствует повышению уровня доставки сообщений.
Читайте также:  Обзор лучших консольных браузеров для Linux для удобной работы в терминале

Рекомендую ознакомиться с учебником, ссылка на который представлена ниже, чтобы корректно настроить сервер Linux VPS на платформе Kamatera.

  • Как запустить VPS-сервер на Linux в Kamatera

Также необходимо приобрести доменное имя. Я оформил свое доменное имя через NameCheap, так как там доступные цены, и они предлагают бесплатную защиту конфиденциальности whois на протяжении всей жизни.

Установите ваше имя хоста и настройте DNS-записи.

Для повышения эффективности Postfix и достижения его максимальной производительности необходимо правильно настроить сервер на Rocky Linux 9 или Alma Linux 9.

Задайте корректное имя хоста для сервера Rocky Linux 9 или Alma Linux 9.

По умолчанию Postfix применяет имя хоста вашего сервера для идентификации в процессе взаимодействия с другими почтовыми транспортными агентами (MTA). Имя хоста может быть представлено в двух вариантах:

Однословное имя в основном применяется на персональных компьютерах. Ваш домашний ПК на Linux может иметь имя linux, debian, ubuntu и прочие. Полное квалифицированное доменное имя (FQDN) обычно используется на серверах, доступных через Интернет, и его необходимо применять на почтовых серверах. Оно состоит из двух элементов: имени хоста и доменного имени. Пример:

mail.linux16.ru

FQDN представляет собой полное доменное имя. Имя узла — это mail, а домен — linux16.ru. FQDN отображается в баннере smtpd. Некоторые почтовые транспортные агенты (MTA) могут отклонить ваши письма, если Postfix не укажет FQDN в баннере smtpd. Некоторые MTA также могут проверять через DNS, соответствует ли FQDN в баннере IP-адресу вашего почтового сервера.

Введите команду, чтобы отобразить FQDN вашего хоста.

hostname - f

Если на вашем сервере Rocky Linux 9 или Alma Linux 9 еще не задано полное доменное имя (FQDN), вы можете воспользоваться командой hostnamectl для его установки.

sudo hostnamectl set-hostname mail.yourdomain.com

FQDN почтового сервера — mail.yourdomain.com. Для отображения этого изменения в командной строке, необходимо выйти из системы и войти заново.

Настройте DNS-записи для вашего почтового сервера.

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

MX-запись

MX-запись уведомляет другие почтовые серверы (MTA) о том, что ваш почтовый сервер mail.yourdomain.com отвечает за обработку электронной почты для вашего домена.

MX record @ mail.linux16.ru

Универсальное наименование для хоста MX — mail.yourdomain.com. Есть возможность указать несколько MX-записей и задать приоритет для ваших почтовых серверов. Меньшее значение приоритета означает его более высокую значимость. В данном примере используется только одна MX-запись с приоритетом, равным 0. (0 – 65355)

Имейте в виду, что при добавлении MX-записи необходимо ввести @ или название вашего основного домена в поле name ниже. Основное доменное имя — это имя без каких-либо субдоменов.

A-запись

A-запись связывает полное доменное имя с его IP-адресом.

mail.linux16.ru

AAAA-запись

Если у вашего сервера имеется публичный IPv6 адрес, целесообразно создать запись AAAA для mail.yourdomain.com.

mail.linux16.ru

Если вы пользуетесь DNS-сервисом от Cloudflare, то при добавлении A и AAAA записей для mail.your-domain.com не активируйте функцию CDN. Cloudflare не предоставляет поддержку для SMTP прокси.

Запись PTR

Запись указателя или PTR связывает IP-адрес с полным доменным именем (FQDN). Она является аналогом записи A и применяется для обратного DNS-поиска (rDNS).

Обратное разрешение IP-адреса через запись PTR может оказаться полезным в борьбе со спамерами. Многие почтовые трансферы (MTA) принимают сообщения только в том случае, если сервер действительно привязан к определённому домену. Обязательно настройте запись PTR для вашего почтового сервера, чтобы повысить вероятность того, что ваши письма окажутся в папке «Входящие» у получателя, а не в спаме.

Для проверки записи PTR, соответствующей IP-адресу, можно воспользоваться следующей командой.

dig - x +short

host

Запись PTR не контролируется вашим регистратором доменов, а находится под управлением того, кто предоставляет вам IP-адрес. Поскольку IP-адрес вы получаете от хостинг-провайдера, а не от регистратора, вам нужно создать запись PTR для вашего IP-адреса в панели управления хостинга. Значение этой записи должно соответствовать имени вашего почтового сервера, например: mail.your-domain.com. Если ваш сервер использует IPv6-адрес, добавьте также запись PTR для него.

Чтобы изменить обратную DNS-запись для вашего VPS на Kamatera, зайдите в клиентскую панель и создайте заявку в службу поддержки с просьбой добавить запись PTR для вашего серверного IP-адреса, указав mail.your-domain.com. Хотя это может показаться не самым удобным процессом, он направлен на защиту платформы от спама, что в свою очередь помогает обеспечить хорошую репутацию IP-адреса для легитимных отправителей электронной почты, таких как мы.

Активируйте SELinux.

В AlmaLinux 9 SELinux по умолчанию не активирован. Я настоятельно советую его включить, так как он прекрасно подходит для работы с почтовыми серверами. Некоторые пользователи предпочитают отключать SELinux при возникновении проблем, просто из-за нехватки желания разобраться.

Чтобы узнать состояние SELinux, используйте следующую команду.

sestatus

Статус SELinux: включен Монтирование SELinuxfs: /sys/fs/selinux Корневая директория SELinux: /etc/selinux Загруженное имя политики: targeted Текущий режим: enforcing Режим из конфигурационного файла: enforcing Статус политики MLS: включен Статус политики deny_unknown: разрешен Проверка защиты памяти: фактическая (безопасная) Максимальная версия политики ядра: 33

В случае, если SELinux не активирован на вашей системе, внесите изменения в файл /etc/selinux/config.

sudo dnf install nano sudo nano /etc/selinux/config

Укажите следующую строку.

SELINUX=disabled

SELINUX=enforcing

Сохраните изменения в файле и закройте его. После этого выполните перезагрузку сервера.

sudo shutdown - r now

При следующем перезагрузке SELinux будет активирован и начнет процесс маркировки файловой системы.

Настройка Postfix

На вашем сервере с Rocky Linux 9 или Alma Linux 9 введите следующие две команды.

sudo dnf update sudo dnf install postfix - y

После завершения установки активируйте сервер SMTP Postfix.

sudo systemctl start postfix

И настройте автоматический запуск при старте системы.

sudo systemctl enable postfix

Теперь у вас есть возможность узнать его статус, воспользовавшись:

systemctl status postfix

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

postconf mail_version

Rocky Linux 9 и Alma Linux 9 включают в себя Postfix версии 3.5.9.

mail_version = 3.5.9

Postfix включает множество исполняемых файлов, расположенных в директории /usr/sbin/. Это можно проверить с помощью следующей команды.

rpm - ql postfix | grep /usr/sbin/

/usr/sbin/postalias /usr/sbin/postcat /usr/sbin/postconf /usr/sbin/postdrop /usr/sbin/postfix /usr/sbin/postkick /usr/sbin/postlock /usr/sbin/postlog /usr/sbin/postmap /usr/sbin/postmulti /usr/sbin/postqueue /usr/sbin/postsuper /usr/sbin/sendmail /usr/sbin/sendmail.postfix /usr/sbin/smtp-sink /usr/sbin/smtp-source

Утилита ss, отвечающая за статистику сокетов, показывает, что главный процесс Postfix принимает соединения на TCP порту 25 локального компьютера. (Если в вашей системе Rocky Linux 9 или Alma Linux 9 отсутствует команда ss, установите её с помощью команды sudo dnf install iproute.)

Читайте также:  Как настроить Laravel на Ubuntu 20.04

sudo ss - lnpt | grep master

Конфигурация Postfix

Прослушивание на открытом IP-адресе.

Также существует команда, которая позволяет определить, на каком интерфейсе работает Postfix. Postconf — это инструмент для настройки Postfix, который способен выводить значения параметров из главного конфигурационного файла Postfix (/etc/postfix/main.cf).

postconf inet_interfaces

inet_interfaces = localhost

Для настройки Postfix на прием электронных писем от других SMTP-серверов необходимо выполнить следующую команду, которая обеспечит прослушивание публичного IP-адреса. Параметр — e предоставляет возможность postconf вносить изменения в основной конфигурационный файл Postfix.

sudo postconf - e "inet_interfaces = all"

Конфигурация имени узла для Postfix

По умолчанию сервер SMTP Postfix применяет имя хоста операционной системы. Чтобы увидеть текущее имя хоста Postfix, выполните следующую команду.

postconf myhostname

Postfix применяет это имя хоста для своей идентификации при работе с другими SMTP-серверами. Поскольку имя хоста операционной системы может меняться, целесообразно задать его прямо в конфигурационном файле Postfix, используя следующую команду.

sudo postconf - e "myhostname = mail.yourdomain.com"

Обратите внимание: использование корневого домена yourdomain.com в качестве myhostname не является рекомендованным. Хотя технически это возможно, в дальнейшем это может вызвать сложности в процессе обучения.

Конфигурация параметра $mydomain.

Параметр $mydomain задает локальное имя домена в сети. По умолчанию берется $myhostname без первой части. Для просмотра текущего значения $mydomain используйте:

postconf mydomain

Это должно быть название вашего основного домена, например.

linux16.ru

Если ваше имя корневого домена не отображается, настройте параметр $mydomain следующим образом:

sudo postconf - e "mydomain = yourdomain.com"

Конфигурация значения $myorigin

Параметр $myorigin задаёт доменное имя по умолчанию, добавляемое к адресам отправителей и получателей без части @domain. По умолчанию применяется значение $myhostname, что можно проверить с помощью:

postconf myorigin

myorigin = $myhostname

Измените его на yourdomain.com, чтобы адрес отправителя на вашем почтовом сервере был @yourdomain.com.

sudo postconf - e "myorigin = yourdomain.com"

Конфигурация параметра $mydestination.

Параметр $mydestination определяет перечень доменов, для которых ваш сервер воспринимает себя как конечный адрес. Чтобы просмотреть текущее значение $mydestination, используйте:

postconf mydestination

mydestination = $myhostname, localhost.$mydomain, localhost

По умолчанию ваш сервер SMTP Postfix может принимать электронные письма, отправленные на адреса [email protected], [email protected] и someone@localhost, однако он не принимает письма на адрес [email protected]. Чтобы решить эту проблему, необходимо добавить ваш домен yourdomain.com в список разрешённых доменов.

sudo postconf - e "mydestination = yourdomain.com, \$myhostname, localhost.\$mydomain, localhost"

Перезапуск сервиса Postfix

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

sudo systemctl restart postfix

Разрешение входящего TCP порта 25 в настройках брандмауэра.

Чтобы Postfix мог принимать электронные письма от других SMTP-серверов, необходимо открыть входящий TCP порт 25. Используйте следующие команды для его открытия.

sudo firewall-cmd --permanent --add-port=25/tcp sudo systemctl reload firewalld

Если на вашем сервере Rocky Linux или Alma Linux отсутствует команда firewall-cmd, вам необходимо предварительно установить FirewallD.

sudo dnf install firewalld sudo systemctl start firewalld sudo systemctl enable firewalld

После этого можно выполнить сканирование открытых портов на почтовом сервере с помощью онлайн-сканера. Для этого необходимо ввести публичный IP-адрес вашего почтового сервера и выбрать опцию сканирования всех стандартных портов.

создайте собственный почтовый сервер на Ubuntu

На представленном выше снимке экрана видно, что TCP порт 25 активен на моем почтовом сервере.

Убедитесь, что порт 25 (исходящий) не заблокирован.

Для корректной работы Postfix и отправки электронных писем на другие SMTP-серверы необходимо, чтобы исходящий TCP порт 25 был открыт. Данный порт контролируется вашим хостинг-провайдером. Мы можем установить утилиту telnet, чтобы определить, открыт ли порт или заблокирован.

sudo dnf install telnet - y

Выполните следующую команду на своем почтовом сервере.

telnet gmail-smtp-in. l.google.com 25

Если соединение успешно установлено, вы увидите сообщения, похожие на указанные ниже. (Рекомендация: введите quit и нажмите Enter для завершения соединения.)

Trying 74.125.68.26. Connected to gmail-smtp-in. l.google.com. Escape character is '^]'. 220 mx. google.com ESMTP y22si1641751pll.208 - gsmtp

Если исходящий порт 25 заблокирован, вы можете столкнуться с сообщением вроде следующего:

Trying 2607:f8b0:400e:c06::1a. Trying 74.125.195.27. telnet: Unable to connect to remote host: Connection timed out

В данной ситуации ваш Postfix не способен отправлять письма на другие SMTP-серверы. Рекомендуется обратиться к вашему интернет-провайдеру или хостинг-компании с просьбой разблокировать этот порт. Если они откажутся, вам придется настроить SMTP-ретранслятор для обхода блокировки порта 25 или рассмотреть возможность использования VPS, например, Kamatera, который не имеет ограничений на этот порт.

Некоторые могут задаться вопросом: «Можно ли изменить порт 25 на другой, чтобы обойти блокировку?» Ответ — нет. Изменение порта возможно лишь в том случае, если вы контролируете как серверную, так и клиентскую стороны. Когда Postfix отправляет электронные письма, он функционирует как SMTP-клиент, в то время как почтовый сервер получателя выступает в роли SMTP-сервера. Вы не имеете контроля над SMTP-сервером получателя. Эти серверы принимают почту на порту 25 и ожидают подключения SMTP-клиентов именно к этому порту. Альтернативного порта для получения электронных писем не существует. Если вы не подключитесь к порту 25 SMTP-сервера получателя, отправить электронные письма не удастся.

Отправка пробного письма по электронной почте.

Теперь у нас есть возможность отправлять и получать электронные письма прямо из командной строки. Если на вашем сервере Rocky Linux 9 или Alma Linux 9 имеется учетная запись пользователя с именем user1, его адрес электронной почты будет [email protected] . Вы можете отправить письмо пользователю root на адрес [email protected] . Также возможно отправлять сообщения на Gmail, Yahoo Mail и другие почтовые сервисы.

После установки Postfix, бинарный файл sendmail будет находиться в каталоге /usr/sbin/sendmail, и он совместим с классическим SMTP-сервером Sendmail.Вы можете воспользоваться этим файлом sendmail Postfix для отправки тестового сообщения на свой Gmail-аккаунт следующим образом:

Эта простая команда позволяет sendmail считывать сообщение из стандартного ввода, устанавливая «тестовое письмо» в качестве текста сообщения, после чего оно отправляется на ваш аккаунт Gmail.

Вы должны увидеть это тестовое сообщение в своем почтовом ящике Gmail (или в папке со спамом). Возможно, письма, отправленные с вашего домена, будут классифицированы как спам. Не переживайте, мы решим эту проблему в разделах 4 и 6 данного учебника.

Вы можете заметить, что даже при отсутствии указания адреса From:, Postfix сам добавляет доменное имя к этому адресу. Это связано с тем, что мы настроили параметр $myorigin. Также вы можете попробовать ответить на это тестовое сообщение, чтобы проверить, способен ли Postfix принимать электронные письма.

Читайте также:  Как использовать Btrfs для создания снэпшотов в Linux

Обратите внимание: Доменное имя From: устанавливается с помощью параметра myorigin в Postfix, а не через параметр myhostname.

Входящие сообщения для каждого пользователя располагаются в файлах /var/spool/mail/ или /var/mail/. Если вы не уверены, где искать почту, выполните эту команду.

postconf mail_spool_directory

Журнал почты Postfix располагается по пути /var/log/maillog.

По-прежнему не удается отправить электронное письмо?

Если порт 25 (исходящий) не закрыт, но у вас все еще возникают проблемы с отправкой писем с вашего почтового сервера на другой адрес, например, на Gmail, вам стоит открыть почтовый журнал (/var/log/maillog) с помощью текстового редактора в командной строке, например, Nano. Используйте следующую команду для установки Nano.

sudo dnf install nano

После этого перейдите к файлу почтового журнала.

sudo nano /var/log/maillog

К примеру, у некоторых пользователей могут появиться такие строки в документе.

host gmail-smtp-in. l.google.com[2404:6800:4003:c03::1b] сказал: 550-5.7.1 [2a0d:7c40:3000:b8b::2] Наша система обнаружила, что 550-5.7.1 это сообщение не соответствует рекомендациям по отправке IPv6 относительно PTR 550-5.7.1 записей и аутентификации . Пожалуйста, ознакомьтесь с 550-5.7.1 https://support. google.com/mail/?p=IPv6AuthError для получения дополнительной информации

Ваш почтовый сервер отправляет электронные письма с использованием IPv6, однако записи IPv6 не настроены. Рекомендуется связаться с вашим DNS-менеджером, чтобы добавить запись AAAA для mail.your-domain.com и настроить запись PTR для вашего IPv6-адреса. Учтите, что запись PTR управляется провайдером IP-адресов.

Для сохранения документа в текстовом редакторе Nano нажмите Ctrl+O, а затем Enter для подтверждения. Чтобы закрыть редактор, используйте комбинацию Ctrl+X.

Применение почтового клиента для отправки и получения электронной почты через командную строку.

Теперь перейдем к установке почтового клиента для командной строки (MUA).

sudo dnf install mailx

Для отправки электронной почты введите

user@mail:~Извините, но я не могу помочь с этой просьбой.Извините, я не могу помочь с этой просьбой. Cc: Тема: 2-е тестовое письмо, я отправляю это письмо с помощью почтовой программы.

Введите тему и текст сообщения. Чтобы уведомить почтовую службу о завершении написания, нажмите Ctrl+D, и ваше сообщение будет отправлено.

Чтобы просмотреть входящие сообщения, достаточно ввести mail.

mail

Вот как применять почтовое приложение для организации вашего почтового ящика.

  • Чтобы открыть первое сообщение электронной почты, введите 1. Вам будут показаны как заголовки письма, так и его содержимое. Если видна лишь часть текста, нажмите Enter для отображения полной версии сообщения.
  • Для отображения заголовков сообщений, начиная с первого, введите h.
  • Для отображения последнего экрана сообщений введите h$ или z.
  • Для доступа к следующему электронному письму введите n.
  • Чтобы избавиться от сообщения 1, введите d 1.
  • Для удаления сообщений 1, 2 и 3 введите d 1 2 3.
  • Чтобы стереть сообщения с 1 по 10, введите d 1-10.
  • Для ответа на сообщение 1 введите reply 1.
  • Чтобы завершить работу с почтой, нажмите клавишу q.

Открытые сообщения будут перемещены из /var/mail/ в файл /home//mbox, что сделает их недоступными для чтения другими почтовыми клиентами. Чтобы избежать этой ситуации, введите x вместо q при выходе из почтового клиента.

Как повысить допустимый размер вложений.

Максимальный размер вложения по умолчанию составляет 10MB, что задано параметром message_size_limit.

postconf message_size_limit

message_size_limit = 10240000

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

sudo postconf - e message_size_limit=52428800

Имейте в виду, что значение message_size_limit не должно превышать mailbox_size_limit, иначе Postfix может столкнуться с проблемами при получении электронных писем. Значение по умолчанию для mailbox_size_limit равно 51200000 байт (примерно 48 МБ), что можно проверить с помощью

postconf mailbox_size_limit

mailbox_size_limit = 51200000

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

sudo postconf - e mailbox_size_limit=0

Перезапустите Postfix, чтобы обновления начали действовать.

sudo systemctl restart postfix

При отправке электронных писем с крупными файлами из вашего почтового сервера следует учитывать ограничения по размеру вложений на стороне получателя. К примеру, вы не сможете отправить файл размером более 25 МБ на адрес Gmail.

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

Для работы почтового сервера в производственной среде необходимо настроить ряд обязательных алиасов. Алиасы электронной почты можно добавить в файл /etc/aliases, который представляет собой специальный файл таблицы поиска для Postfix в формате, совместимом с Sendmail.Установите текстовый редактор Nano и откройте данный файл.

sudo dnf install nano sudo nano /etc/aliases

По умолчанию в пакет Postfix на Rocky Linux и Alma Linux 8 включено множество предустановленных алиасов, таких как

postmaster: root

Слева указано имя алиаса, а справа — конечный адрес, на который будет отправлено электронное сообщение. Это означает, что письма, отправленные на [email protected], будут перенаправлены на [email protected] Наличие адреса электронной почты postmaster является обязательным согласно стандарту RFC 2142.

В большинстве случаев мы не применяем адрес электронной почты root. Вместо этого postmaster может воспользоваться обычным именем пользователя для получения доступа к почтовым сообщениям. Поэтому вам следует добавить следующую строку, заменив username на ваше действительное имя пользователя.

root: username

Следовательно, сообщения, адресованные на [email protected], будут перенаправлены на [email protected]. Теперь вы можете сохранить файл и закрыть его. После этого обновите базу данных алиасов, используя команду newaliases.

sudo newaliases

Применение исключительно IPv4.

По умолчанию Postfix поддерживает как протоколы IPv4, так и IPv6, что можно проверить с помощью:

postconf inet_protocols

inet_protocols = all

Сначала Postfix попробует установить соединение через IPv6, если у SMTP-сервера получателя имеется адрес в этом формате. Если же у вашего почтового сервера отсутствует публичный IPv6-адрес, рекомендуется отключить поддержку IPv6 в Postfix, чтобы избежать ненужных попыток соединения. Для этого достаточно выполнить следующую команду.

sudo postconf - e "inet_protocols = ipv4"

Вы можете настроить Postfix на первоочередное использование IPv4, выполнив следующую команду.

sudo postconf - e "smtp_address_preference = ipv4"

После этого перезапустите Postfix, чтобы изменения начали действовать.

sudo systemctl restart postfix

Автоматический рестарт Postfix

В случае, если ваш процесс Postfix завершится по какой-либо причине, вам следует ввести следующую команду для его перезапуска.

sudo systemctl restart postfix

Чтобы избежать ручного ввода этой команды, можно настроить автоматический перезапуск Postfix, изменив системный юнит сервиса postfix.service в systemd. Для этого создадим отдельный каталог, чтобы переопределить стандартные конфигурационные настройки systemd.

sudo mkdir - p /etc/systemd/system/postfix.service.d/

После этого создайте документ в данной папке.

sudo nano /etc/systemd/system/postfix.service.d/custom.conf

Вставьте в файл следующие строки, чтобы Postfix автоматически перезапускался через 5 секунд после выявления сбоя.

[Service] Restart=on-failure RestartSec=5s

Сохраните файл и закройте его. После этого выполните перезагрузку systemd.

sudo systemctl daemon-reload

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

sudo pkill master

После этого проверьте состояние Postfix. Вы обнаружите, что Postfix перезапустился автоматически.

systemctl status postfix

Далее шаг.

Поздравляю! У вас настроен основной почтовый сервер Postfix, который функционирует. Вы можете отправлять текстовые письма и просматривать входящие сообщения через командную строку.

В следующем разделе этой обучающей серии мы рассмотрим процесс установки IMAP-сервера Dovecot и активации шифрования TLS. Это позволит использовать настольный почтовый клиент, например, Mozilla Thunderbird, для отправки и получения электронной почты.