Письма не отправляются и не принимаются из-за закрытых портов
Симптомы
Не отправляются и не принимаются письма почтовым сервером в ispmanager 6.
Причина
Ограничена работа портов почтового сервера.
Решение
Для корректной работы почтового сервера, на сервере должны быть доступны порты 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 - её можно установить с официального сайта.