Ошибка в перечисленных адресах отправителей - IT Справочник
Llscompany.ru

IT Справочник
20 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Ошибка в перечисленных адресах отправителей

Ошибка в перечисленных адресах отправителей

Пользуясь выделенным сервером (VPS) для хостинга своего сайта часто возникает проблема с отправкой почты: поднимать свой полноценный сервер слишком трудоёмко, и даже следуя всем инструкциям результат не гарантирован. Хорошее решение проблемы — использовать сторонний сервер.

Варианта тут три:

  • Отправлять почту через sendmail или встроенные средства языка PHP без всякой авторизации. Обычно такие способы настроены по умолчанию во всех современных движках сайтов (Joomla, WordPress). Проблема лишь только одна: ваши письма всегда будут попадать в спам. Потому, что без авторизации на почтовом сервере к письму не добавляется информация о подлинности, и у принимающего сервера нет уверенности, что письмо отправил действительно хозяин почтового ящика. Оно попадает в спам.
  • Использовать чужой почтовый сервер со своим доменным именем. Например почта у вас будет Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. , а почтовый сервер будет mail.ru. Настроить всё можно за час, а конечные пользователи не заметят разницы
  • Если вам не обязательно отправлять почту со своего доменного имени, а вполне устроит @gmail.com или @mail.ru, то проще всего настроить отправку почты с авторизацией по SMTP

Joomla: настройка отправки почты через SMTP

Примерные настройки показаны на скриншоте:

Важно удостовериться, что поле «Имя пользователя» и «Email сайта» совпадают.

Ошибка в перечисленных адресах отправителей

Если вы видите эту ошибку, причин может быть несколько:

  • Неправильный логин/пароль от почты
  • поле «Имя пользователя» и «Email сайта» не совпадают. Иными словами, авторизируясь как vasya@ вы пытаетесь отправить почту от имени petya@.
  • Неправильные настройки vps-сервера. Об этом отдельно

Неправильные настройки VPS сервера при отправке почты

Как проверить

Можно написать простой скрипт на питоне:

to = Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. ‘
gmail_user = Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра. ‘
gmail_pwd = ‘mypass’
print «smtp..»
smtpserver = smtplib.SMTP(«smtp.gmail.com»,587)
#smtpserver = smtplib.SMTP(«64.233.162.108»,587)
print «ehlo. «
smtpserver.ehlo()
print «starting tsl. «
smtpserver.starttls()
print «ehlo2. «
smtpserver.ehlo() # extra characters to permit edit
print «logining. «
smtpserver.login(gmail_user, gmail_pwd)
header = ‘To:’ + to + ‘n’ + ‘From: ‘ + gmail_user + ‘n’ + ‘Subject:Hello n’
print header
msg = header + ‘n this Hello from lubov 5 try nn’
print «sending»
smtpserver.sendmail(gmail_user, to, msg)
print ‘done!’
smtpserver.quit()

Видите в скрипте закомментированную строчку с IP вместо имени почтового сервера?
Попробуйте по ip, если не заработает по имени.

time python ./script.py

При этом команда time выведет время исполнения скрипта.

Причина 1. Не открыт исходящий порт для IMAP соединений

Если у вас VPS сервер, то скорее всего у вас настроен файрвол (если нет, то скорее же его поставьте).

В настройках iptables нужно открыть 25 порт для исходящих соединений. На разных дистрибутивах это делается немного по-разному, поэтому конкретные команды писать не буду.

Также нужно не забывать что если у вас настроена сеть по Ipv6, то нужно также настроить правила для ip6tables.

Причина 2. Хостер не пропускает почтовые соединения по IPv6

У меня в итоге оказалась именно эта проблема. Хостер DigitalOcean не пропускает соединения к почтовым серверам по ipv6.

Вышеприведённый скрипт коннектился и отправлял почту, но это занимало больше 2х минут. Если же к серверу обращаться по IPv4, то почта отправлялась за пару секунд.

Не отправляется почта по ipv6. Решение для Joomla 2.5

Решение состоит в том, чтобы принудительно подключаться к почтовому серверу по ipv4.
Идём в www/libraries/phpmailer/phpmailer.php

Ищем там функцию SmtpConnect, и внутри неё ищем код:

if (preg_match(‘/^(.+):([0-9]+)$/’, $hosts[$index], $hostinfo)) <
$host = $hostinfo[1];
$port = $hostinfo[2];
> else <
$host = $hosts[$index];
$port = $this->Port;
>

И вставляем строчку:

if (preg_match(‘/^(.+):([0-9]+)$/’, $hosts[$index], $hostinfo)) <
$host = $hostinfo[1];
$port = $hostinfo[2];
> else <
$host = $hosts[$index];
$host = gethostbyname($host);
$port = $this->Port;
>

Смысл в том, чтобы принудительно получать IPv4 хоста, и обращаться уже по IP-адресу.

Решение не очень элегантное, т.к. приходится исправлять код Joomla, и при очередном обновлении это исправление вполне может слететь.

Не отправляется почта по ipv6. Решение для Joomla 3.7

Всё аналогично Joomla 2.5, только нужный нам файл находится по адресу: www/libraries/vendor/phpmailer/phpmailer/class.phpmailer.php

Ищем там функцию smtpConnect, внутри неё ищем первое упоминание $host:

$host = $hostinfo[3];
$port = $this->Port;
$tport = (integer)$hostinfo[4];

И вставляем строчку:

$host = $hostinfo[3];
$host = gethostbyname($host);
$port = $this->Port;
$tport = (integer)$hostinfo[4];

Да. решение временное и будет слетать при каждом обновлении Joomla. но другого пока нет.

Ошибка в перечисленных адресах отправителей

В этом посте я расскажу вам как настроить Joomla для отправки почты по протоколу SMTP. Для начала необходимо открыть панель администратора и зайти в «System->Global configuration» («Система->Общие настройки»). В этом разделе открыть вкладку Server (Сервер) и в правом нижнем углу найти настройки отправления почты. В графе «Mailer» («Способ отправки») выбрать SMTP, в поле «From email» («Email сайта») указать вашу почту, а в поле «From Name» («Отправитель письма») имя отправителя. Далее поля заполняются в зависимости от настроек вашего почтового сервера, вы с легкостью их найдете по запросу вида «smtp google» или «smtp mail.ru». На скриншоте ниже изображены стандартные настройки моей почты на яндексе.

Читать еще:  Непредвиденная ошибка при восстановлении системы 0хс0000022

Ниже приведены рекомендуемые настройки для разных почтовых серверов (спасибо Aleks_e1_Dia):

E-mail сайта — указываете действующий почтовый ящик на mail.ru, например — test@mail.ru
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 465
Имя пользователя SMTP — это ваш действующий email на mail.ru, например — test@mail.ru
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.mail.ru

E-mail сайта — указываете действующий почтовый ящик на mail.ru, например — test@gmail.com
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 465
Имя пользователя SMTP — это ваш действующий email на gmail.com, например — test@gmail.com
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.gmail.com

E-mail сайта — указываете действующий почтовый ящик на yandex.ru, например — test@yandex.ru
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 465
Имя пользователя SMTP — название вашего email до собаки, например — test для test@yandex.ru
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.yandex.ru

Отправка почты через Rambler

E-mail сайта — указываете действующий почтовый ящик на yandex.ru, например — test@rambler.ru
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 465
Имя пользователя SMTP — это ваш действующий email на aol.com, например — test@rambler.ru
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.rambler.ru

E-mail сайта — указываете действующий почтовый ящик на mail.ru, например — test@yahoo.com
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 465
Имя пользователя SMTP — это ваш действующий email на yahoo.com, например — test@yahoo.com
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.mail.yahoo.com

E-mail сайта — указываете действующий почтовый ящик на mail.ru, например — test@hotmail.com
Отправитель письма — имя отправителя (или название сайта, к примеру), которое будет отображаться у адресата в поле «От..»
Авторизация на SMTP-сервере — ДА
Защита SMTP — SSL
Порт SMTP-сервера — 587
Имя пользователя SMTP — это ваш действующий email на hotmail.com, например — test@hotmail.com
Пароль для SMTP — пароль от вашего почтового ящика
SMTP-сервер — smtp.live.com

Теперь давайте рассмотрим часто встречающиеся ошибки при работе c этим протоколом.

Joomla smtp connect failed

Ошибка вида «joomla smtp connect failed» зачастую вызвана неправильным заполнением поля «SMTP Security». В этом случае необходимо уточнить, как их рекомендует заполнять ваш почтовый сервер.

Ошибки авторизации

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

Код отклика SMTP 550

Первые SMTP-серверы позволяли любому почтовому клиенту рассылать почту другим почтовым серверам, выступая в качестве промежуточного транспорта. В начальной версии протокола SMTP авторизация клиента полностью отсутствовала; позднее, в протоколе SMTP появилась авторизация, что несколько улучшило ситуацию. Такая возможность породила понятие спама. Спам (spam) – нежелательная массовая принудительная рассылка бесполезной информации (чаще всего рекламы). Сейчас же, когда принудительные рассылки приобрели огромный масштаб, администраторам серверов приходится придумывать различные ухищрения для пресечения таких рассылок в целях экономии трафика и процессорного времени. Результатом таких ухищрений часто является возвращаемая почтовым сервером ошибка с кодом 550.

Почтовый адрес состоит из двух частей разделенных символом ‘@’. Первая часть является именем пользователя, а вторая доменом в котором находится почтовый сервер и на котором отведено некоторое место, принадлежащее пользователю. Например в адресе nick@d.foo.ru — «nick» это имя пользователя, а d.foo.ru – домен.

Перечислим несколько типичных ситуаций, при которых возвращается ошибка 550.

  • Иногда сервер отправляет письма всем, кто указан в получателях, но при условии, что адрес отправителя принадлежит доменной зоне сервера (такой сервер еще называют сервером исходящей почты). В этом случае получается, что через сервер нельзя послать письмо постороннему человеку. Пустой адрес отправителя по стандарту является правильным и сервер не должен отвергать такое письмо. Однако не многие сервера прислушиваются к этому правилу и, в целях борьбы со «спамерами», возвращают ошибку с кодом 550 такого вида:

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

Копировать в буфер обмена

  • Бывают серверы, которые отправляют письмо с любым значением свойства отправитель, но возвращают ошибку, если получатель не принадлежит домену сервера (такой сервер еще называют сервером входящей почты).

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

Следует заметить, что настройки для SMTP авторизации могут отличаться от настроек POP3. Например, некоторые серверы для POP3 авторизации используют в качестве «логина» первую часть почтового адреса, а для SMTP-авторизации – полный адрес.

  • Иногда серверы настраивают так, что если указан адрес отправителя, принадлежащий домену сервера, и отправитель не входит в разрешенные (задаваемые на сервере) адреса, то сервер откажется принимать письмо для дальнейшей отсылки. В данном случае опять же поможет авторизация.
  • Ошибка 550 возникает также, когда указан несуществующий адрес отправителя или этот адрес запрещен на принимающем сервере.
  • Релей-сервер принимает и отправляет почту без всяких проверок отправителя и получателя. Чаще всего такой тип сервера требует авторизацию и без авторизации может вернуть ошибку:

  • Некоторые почтовые серверы не принимают сообщения от пользователей, которые используют dial-up соединение, принуждая таким образом использовать почтовый сервер Интернет провайдера предоставляющего доступ в Интернет.

Коду 550 стандартом отведена обширная область возвращаемых ошибок, и более конкретную причину можно получить только из ответа сервера (текст внутри скобок после описания ошибки на русском языке).

Не приходят email c сайта joomla 2.5

в наличии joomla 2.5.7, форма обратной связи — стандартный компонент joomla контакты (Способ отправки PHP Mail) также установлен компонент Jcomments 2.3.0 c включенной опцией уведомлений на почту при новых комментариях.

На почтовый ящик не приходит email c формы контактов, тажке не приходят уведомления (в разделе Спам их также нет). Сделав бекап установил его на Denwer, письма приходили (/usr/sbin/sendmail) и с формы контактов и при добавлении новых комментариев в Jcomments.

Буду благодарен вашей помощи.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

Проблема решена, отдельное спасибо тем кто пытался мне помочь.

1. Установил в Способ отправки Sendmail. Путь остался по умолчанию /usr/sbin/sendmail (хз почему у каждого сервера должен быть свой путь)

2. Хостер отписал мне

Здравствуйте, при выполнении отправки сообщения из «Форма обратной связи» письмо отправляется на почтовый ящик Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.

Очень сильно удивился, потом обнаружил что этот адрес находиться к компонентах контактах, в Контакте —

Менеджер контактов: Контакт — Детали контакта —

E-mail -email@example.com Убрал его и поставил нужный мне.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

Здравствуйте. у меня джумла 2.5.5
не работает форма обратной связи
Настройка почты
Способ отправки php mail
E-mail сайта ХХХ@mail.ru (мой адрес)
Отправитель письма (название компании на руссоком)
Путь к Sendmail /usr/sbin/sendmail
Авторизация на SMTP-сервере Да
Защита SMTP
Порт SMTP-сервера * 465
Имя пользователя SMTP admin@(название компании) (почтовый аккаунт на хостинге)
Пароль для SMTP ••••••••••••••••••
SMTP-сервер mx1.hostinger.ru

проблема в том, что в форме обратной связи письмо отправляется, но на почту не приходит. пробовала менять способ отправки, вылазила ошибка «Ошибка в перечисленных адресах отправителей: ХХХ@mail.ru»
уже несколько дней не могу решить проблему
Помогите, пожалуйста.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

При отправке почтовых сообщений я получаю ошибки с номерами 550 и 553 или ошибки ретрансляции

Проблема

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

Описание

Ретрансляция происходит, когда почтовое сообщение отправлено на адрес электронной почты, домен которого (имя после символа @, например adatum.com) не обрабатывается протоколом SMTP или сервером исходящей почты, получающим от отправителя запрос на доставку сообщения. SMTP-серверу необходимо подключиться к другому SMTP-серверу, чтобы ретранслировать сообщение.

Если при отправке почтового сообщения возникает ошибка ретрансляции, ваш SMTP-сервер (исходящей почты) может вернуть ваше сообщение вместе с сообщением об ошибке, например, такого вида:

«Не удается отправить сообщение, поскольку сервер отказался принять адрес одного из получателей. В письме был указан адрес: . Тема: , учетная запись: , сервер: , протокол: SMTP, ответ сервера: «550 . Ретрансляция запрещена», порт: 25, защита (SSL): нет, ошибка сервера: 550, номер ошибки: 0x800CCC79″.

«Не удается отправить сообщение, поскольку сервер отказался принять адрес одного из получателей. В письме был указан адрес: . Тема: , учетная запись: , сервер: , протокол: SMTP, ответ сервера: «553 к сожалению, этого домена нет в моем списке разрешенных узлов (#5.7.1)», порт: 25, защита (SSL): нет, ошибка сервера: 553, номер ошибки: 0x800CCC79″.

Точный текст сообщения об ошибке будет зависеть от вашего поставщика интернет-услуг. Некоторые поставщики не возвращают сообщение об ошибке, когда определяют исходящие сообщения как нежелательную рекламу. В этих случаях все выглядит так, как будто ваше сообщение отправляется в обычном режиме (в Outlook остается в папке Исходящие и появляется в папке Отправленные), но получателю оно не доставляется.

Ваше сообщение отклонено, поскольку SMTP-сервер (исходящей почты) не распознал вас как полномочного пользователя.

SMTP — это протокол (стандарты, используемые компьютерами для взаимодействия), который используется на большинстве серверов электронной почты для отправки сообщений в Интернете. Если вы используете почтовую программу (например, Outlook), которая позволяет хранить сообщения на компьютере, вам необходим доступ к SMTP-серверу для отправки сообщений.

Примечание: Веб-системы электронной почты (например, Windows Live Mail или Yahoo! Mail) работают иначе и не рассматриваются в этой статье.

Нежелательная почта и открытые ретрансляции

Рекламные сообщения, распространяемые без запроса, называют нежелательной почтой или спамом. Объем нежелательной почты продолжает расти, потому что ее отправка практически ничего не стоит тем, кто ее рассылает. Фактически отправителю даже не обязательно отправлять нежелательную почту через SMTP-сервер (исходящей почты) своего поставщика интернет-услуг.

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

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

Ограничения поставщика интернет-услуг на ретрансляцию почтовых сообщений

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

На сегодняшний день используются ограничения нескольких типов.

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

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

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

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

Возможных сценариев ретрансляции очень много. Ниже приведены самые распространенные ситуации. Возможно, одна из них похожа на вашу.

Ссылка на основную публикацию
ВсеИнструменты 220 Вольт
Adblock
detector