Проблема связи с SMTP-сервером

yup
Сообщений: 45
3 December 2024
Когда-то давно, ещё когда только версия 6.10 появилась, я наткнулся на такую проблему (и даже здесь о ней писал): создаю свой дистрибутив хоста, настраиваю его так, чтобы после установки мне отправлялось письмо. В соответствующем окне конфигуратора ввожу параметры SMTP-сервера, логин, пароль, жму кнопку "Отправить пробный email" и получаю сначала длинную паузу, а потом сообщение об ошибке. И так раз за разом.

Тогда решение нашёл в том, что использовал для отправки писем другой сервер. А сейчас понадобилось новый дистрибутив сделать. О той проблеме я уже и забыл давным-давно, поэтому опять вписал свой основной сервер и опять напоролся на ту же проблему. Только в это раз мне повезло - чисто случайно в этот момент у меня висела мониторилка TCP-соединений, и я увидел, что программа пытается соединиться не с тем портом SMTP-сервера! В настройках я указываю порт 465, а она упорно ломится на 25-й. А второй сервер, которым я в прошлый раз воспользовался, мне сейчас уже не доступен. Тогда я на всякий случай изменил порт на 587, и письмо ушло.

Сейчас я (раз уж зашёл сюда на форум) решил посмотреть, как обстоят дела у нынешней версии - может, починили уже.
Проверяю - да, "починили": после нажатия на "Отправить пробный email" программа ломится уже на порт 465, но письмо всё равно не отправляется, после паузы выскакивает сообщение "Невозможно отправить письмо. Timeout was reached."

Если что, сервер не какая-то экзотика - smtp.yandex.ru, порт 465, галочка "TLS/SSL" стоит. Параметры взяты из настроек моей почтовой программы, которая письма успешно отправляет.
alex модератор
Сообщений: 3768
3 December 2024
yup,
ПО "ломится" на тот сервер, который указан в настройках.
в документации яндекса ошибка уже много лет. попробуйте 587 порт.
yup
Сообщений: 45
3 December 2024
Порт 587 я пробовал, письмо через него уходит, об этом я выше и написал. Дело в том, что мой почтовый клиент всю жизнь отправлял письма через порт 465 и сейчас отправляет - я специально это перед созданием темы проверил.
alex модератор
Сообщений: 3768
3 December 2024
yup,
отправляет именно на тот порт, который указан в настройках.
возможно, вмешивается какой-то сторонний софт. протестируйте на чистой машине.
yup
Сообщений: 45
3 December 2024
Да, нынешняя версия 7.6.2.0 отправляет именно на тот порт, который указан - 465 (это 6.10.10.0 отправляла в таком случае на 25-й).

Но я о том, что и 465-й порт у Яндекса работает - почтовая программа же отправляет именно через него (я специально TCP-монитором проверил), а RMS Клиент и RMS Хост не могут.

Что до вмешательства сторонней программы, то оно возможно, конечно, но мониторилка (а она достаточно низкоуровневая) показывает обращение именно к этому порту, а если вмешательство где-то ещё ниже по стеку, то оно влияло бы на все программы, в том числе и на мою почтовку.

Скорее, дело в том, что для RMS порты 465 и 587это разные шифрования, а почтовая программа подходит к делу не столь формально. А поскольку и администраторы почтовых серверов тоже подходят к делу "не столь формально" (в том числе и в своих официальных документациях), то и получаем наблюдаемый результат. Но подход авторов почтовой программы: "Всё для удобства клиента" - мне кажется более правильным. И техподдержке потом не приходится отвечать на вопросы: "А почему та программа работает, а ваша нет? Я же всё сделал правильно,по инструкции. "
alex модератор
Сообщений: 3768
3 December 2024
yup,
465 - это легаси. делать еще одну опцию ради устаревшей технологии мы не будем, т.к. это только очень сильно запутает администраторов, даже продвинутых. Все современные почтовые сервера поддерживают стандарт STARTTLS.
Originally posted yup:
Но подход авторов почтовой программы
вы ошиблись, у нас не почтовая программа. данный функционал не рассчитан на простых пользователей, не знакомых с системным администрированием. Сервер прописывается один раз (управление данной настройкой не предполагается на удаленных машинах простыми пользователями) и администратор "на берегу" должен протестировать работоспособность.
yup
Сообщений: 45
3 December 2024
Originally posted alex:
465 - это легаси. делать еще одну опцию ради устаревшей технологии мы не будем

Что значит "делать не будем"? Оно же, вроде, уже сделано - окно конфигурации предлагает три варианта: "465/587/25", причём 465 вообще первым в этом списке поставили.
А ниже в окошке есть ещё и галочка "TLS/SSL". Применительно к SMTP "TLS/SSL" традиционно обозначает именно тот протокол, который гоняли через 465-й порт. Тот, который через 587-й ("STARTTLS", в конфигураторе вообще не упоминается.

Originally posted alex:
данный функционал не рассчитан на простых пользователей, не знакомых с системным администрированием. Сервер прописывается один раз (управление данной настройкой не предполагается на удаленных машинах простыми пользователями) и администратор "на берегу" должен протестировать работоспособность.

Опытный пользователь (нет, возьмём даже выше) профессионал заходит в конфигуратор, старательно впитывает туда то, что он прочитал в документации на сервер, жмёт кнопку "Проверить" и обнаруживает, что программа отправить письмо не может. Причём не может потому, что, по её словам, "сервер не отвечает" ("timeout was reached" это ведь оно и есть).
Профессионал удивляется, ещё раз смотрит документацию, тщательно сравнивает с тем, что вписал в настройки - всё совпадает. Берёт telnet, связывается с 465-м портом сервера - связь есть. Берёт какую-нибудь почтовую программу, вписывает настройки в неё - она работает.
Каковым после этого должно стать его профессиональное мнение о вашей программе?

То есть, если не считаете нужной поддержку SMTPS, то хотя бы уберите 465-й порт из рекомендаций и галочку "TLS/SSL" переименуйте.
alex модератор
Сообщений: 3768
4 December 2024
yup,
Originally posted yup:
Оно же, вроде, уже сделано - окно конфигурации предлагает три варианта: "465/587/25", причём 465 вообще первым в этом списке поставили.
там можно вписать любой порт.
ok, давайте поступим так, я передам суть проблемы по назначению, если можно будет как-то обойти вопрос без доп. опций, думаю будет реализовано.
yup
Сообщений: 45
4 December 2024
Originally posted alex:
там можно вписать любой порт

Да, конечно. Но наличие "465" в подсказке вкупе с "TLS/SSL" на галочке вводит человека в заблуждение. (Что интересно: вводит в заблуждение именно разбирающегося в нюансах человека.)

Originally posted alex:
если можно будет как-то обойти вопрос без доп. опций, думаю будет реализовано

Так я ж говорю: если нет намерения реализовывать протокол SMTPS, то убрать "465" из подсказки да переименовать галочку - и всё, этого достаточно, чтобы можно было, абсолютно не греша против истины, заявлять всем: "А никто и не обещал".
Плюс, эти изменённые тексты станут для разбирающихся прямым даже не намёком, а указанием.

Ещё могу предложить простейшую переделку интерфейса (в духе той почтовой программы, которой я пользуюсь) - сделать подсказку после поля ввода номера порта не статической, а динамической: открывается окно ввода параметров почтового сервера - стоит галочка "STARTTLS", в поле ввода прописано 587, возле поля подсказка
"(по умолчанию 587)"
; снял пользователь галочку - номер порта автоматически изменился на 25, а подсказка возле него - на
"(по умолчанию 25)"
. Поставил он потом галочку опять - номер порта автоматически изменился на 587, а подсказка - на
"(по умолчанию 587)"
. При ручном изменении номера порта подсказка, естественно, не меняется.
Вход для участников
Нет аккаунта? Зарегистрируйтесь
16-08-2026 07:22:25