/
/
Почтовый сервер не работает в ispmanager 6

Почтовый сервер не работает в ispmanager 6

Симптомы

Не отправляются и не принимаются письма почтовым сервером в ispmanager 6.

Причины

  • Используется устаревшая версия панели;
  • Ограничена работа портов почтового сервера;
  • В панели отсутствует почтовый домен;
  • Отсутствуют MX-записи для домена;
  • А-запись почтового домена имеет неверное значение;
  • Для IP-адреса почтового сервера не указана PTR-запись;
  • Отсутствуют TXT-записи с DKIM и DMARC для домена.

Решение

Устаревшая версия панели

Убедитесь, что панель обновлена до актуальной версии. Проверить текущую версию можно в нашем changelog.

Если версии не совпадают, обновите панель до актуальной версии.

Ограничена работа портов почтового сервера

Для корректной работы почтового сервера, на сервере должны быть доступны порты 110, 143, 993, 995, 587, 465 и 25.

Для проверки доступности портов для подключения можно с помощью утилит telnet и nmap.

Проверка через telnet

С помощью утилиты telnet можно проверить доступность портов с удаленной машины выполнив команду:

telnet <ip-адрес> <порт>

 

Например, чтобы проверить доступность входящих подключений (порт 110) на почтовом сервере по адресу 172.31.97.58, выполните следующую команду:

telnet 172.31.97.58 110

Если подключение к серверу по порту будет доступно, вывод команды будет следующим:

Trying 172.31.97.58...
Connected to 172.31.97.58.
Escape character is '^]'.
+OK Dovecot (Ubuntu) ready

При недоступности порта, команда вернет ошибку "Unable to connect to remote host: Connection refused"

 

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

telnet smtp.gmail.com 25

Если подключение успешно, команда вернет следующее:

Trying 142.251.1.109...
Connected to smtp.gmail.com.
Escape character is '^]'.
220 smtp.gmail.com ESMTP 2adb3069b0e04-52fd5c2931asm880471e87.240 - gsmtp

В случае недоступности порта, будет возвращена ошибка "Network is unreachable".

ОБРАТИТЕ ВНИМАНИЕ!

Адрес "smtp.gmail.com" можно использовать для проверки портов 25 и 465. Для проверки доступности портов 143 и 993, используйте адрес "imap.gmail.com".

Проверка через nmap

С помощью утилиты nmap можно проверить доступность портов с удаленной машины выполнив команду:

nmap <ip-адрес> -p<порт>

 

Например, чтобы проверить доступность входящих подключений (порт 110) на почтовом сервере по адресу 172.31.97.58, выполните следующую команду:

nmap 172.31.97.58 -p110

Если подключение к серверу по порту будет доступно, в выводе команды статус (колонка "STATE") будет указан как "open":

Starting Nmap 7.80 ( https://nmap.org ) at 2024-01-01 11:11 MSK
Nmap scan report for isptest.ru (172.31.97.58)
Host is up (0.014s latency).
PORT	STATE SERVICE
110/tcp open  pop3
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds

В случае, если статус будет указан как "filtered", то это будет означать, что доступ к порту ограничен со стороны сервера. При статусе "closed" порт не прослушивается службой или доступ к нему ограничен на уровне сети со стороны сервера.

Также с помощью ключа -Pn , который указывается вместо определенного порта, можно проверить статус всех прослушиваемых портов:

$ nmap 172.31.97.58 -Pn
Starting Nmap 7.80 ( https://nmap.org ) at 2024-01-01 11:11 MSK
Nmap scan report for isptest.ru (172.31.97.58)
Host is up (0.071s latency).
Not shown: 982 closed tcp ports (conn-refused)
PORT     STATE    SERVICE
21/tcp   filtered ftp
22/tcp   filtered ssh
25/tcp   open     smtp
53/tcp   open     domain
80/tcp   open     http
110/tcp  open     pop3
111/tcp  open     rpcbind
143/tcp  open     imap
443/tcp  open     https
465/tcp  open     smtps
587/tcp  open     submission
873/tcp  open     rsync
993/tcp  open     imaps
995/tcp  open     pop3s
1100/tcp filtered mctp
1500/tcp open     vlsi-lm
3306/tcp open     mysql
5432/tcp open     postgresql

ОБРАТИТЕ ВНИМАНИЕ!

На Windows по умолчанию отсутствует утилита nmap - её можно установить с официального сайта.

В панели отсутствует почтовый домен

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

Отсутствуют MX-записи для домена

Убедитесь, что MX-записи домена созданы и указывают на корректный адрес почтового сервера.

Как правило, MX-записи указывают на поддомен mail. Например, для домена domain.com, MX-запись будет указывать на адрес mail.domain.com.

Проверка DNS-записей выполняется утилитой dig. Например, чтобы проверить MX-запись для домена domain.com на DNS-серверах Google, выполните следующую команду:

dig MX domain.com @8.8.8.8 +short

Если записи существуют на DNS-сервере, то они будут отражены в выводе:

10 mail1.domain.com.
20 mail2.domain.com.

 

На Windows проверить DNS-записи можно с помощью утилиты nslookup.

А-запись почтового домена имеет неверное значение

Убедитесь, что А-запись для вашего почтового домена указывает на корректный IP-адрес.

Проверка DNS-записей выполняется утилитой dig. Например, чтобы проверить А-запись для домена mail.domain.com на DNS-серверах Google, выполните следующую команду:

dig A domain.com @8.8.8.8 +short

Если запись существуют на DNS-сервере, то она будет отражена в выводе в виде IP-адреса - он должен совпадать с IP-адресом почтового сервера.

Для IP-адреса почтового сервера не указана PTR-запись

PTR-запись для IP-адреса почтового сервера должна соответствовать имени сервера (hostname).

ОБРАТИТЕ ВНИМАНИЕ!

PTR-запись создается на стороне владельца IP-адреса - зачастую владельцем IP-адреса является хостинг-провайдер.

Узнать имя вашего сервера можно с помощью команды hostname. Если вы пользуетесь панелью ispmanager 6, имя сервера можно также увидеть в разделе "Настройки" - "Настройки системы".

 

Проверка DNS-записей выполняется утилитой dig. Например, чтобы проверить PTR-запись для IP-адреса 172.31.97.58 на DNS-серверах Google, выполните следующую команду:

dig -x 172.31.97.58 @8.8.8.8 +short

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

58.97.31.172.in-addr.arpa 3600 IN PTR example.com

Отсутствуют TXT-записи с DKIM и DMARC для домена

DMARC-запись определяет политику защиты почтового домена от спама и фишинговых писем.

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

В панели ispmanager 6, чтобы сгенерировать обе записи, достаточно включить соответствующие опции в настройках почтового домена в разделе "Почта".

 

ОБРАТИТЕ ВНИМАНИЕ!

Для включения DKIM требуется установленный OpenDKIM в разделе "Конфигурация ПО" - "Почтовый сервер".

 

После включения опций будут сформированы соответствующие DNS-записи для домена в разделе "Управление DNS":

  • _dmarc.domain.com - имя DMARC-записи;
  • dkim._domainkey.domain.com - имя DKIM-записи.

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

Проверить работу почтового ящика можно с помощью сервиса Mail-Tester!