Серверу smtp требовалось защищенное соединение

Серверу smtp требовалось защищенное соединение

В данной записи описан простой и короткий скрипт на Powershell для отправки почты через gmail и решение ошибки 5.5.1.

При попытке отправить письмо через gmail в Powershell скрипте я получал следующую ошибку:

Серверу SMTP требовалось защищенное соединение, или подлинность клиента не была установлена. Ответ сервера: 5.5.1 Authentication Required. Learn more at

Или по английски:

The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required

Далее опишу что нужно сделать, чтобы избавиться от ошибки и приведу пример самого powershell скрипта.

Если у вас в google НЕ включена двух-факторная авторизация (подтверждение входа через отправку sms на телефон)

Необходимо разрешить непроверенным приложениям доступ к вашему аккаунту, это делается на странице: google.com/settings/security/lesssecureapps

Если не разрешите, то к Вам на почту будут приходить письма с темой "Предотвращ ена попытка входа в аккаунт Google" и в самом powershell скрипте будете получать вышеупомянутую ошибку.

Если у вас в google включена двух-факторная авторизация

Нужно сгенерировать отдельный пароль для доступа powershell-скрипта к Вашему аккаунту. Это делается на странице security.google.com/settings/security/apppasswords

Выбираем в выпадающем списке "Приложение" пункт "Другое" и пишем какое-то свое название, я написал "Powershell on elimS Notebook". Жмем кнопку "Создать" и Вам будет выдан шестнадцатизначный пароль, который нужно использовать в скрипте, пример пароля: "ifizbeaatmuzqonp" — 16 букв в нижнем регистре, без пробелов.

Powershell скрипт для отправки почты через gmail

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

Я использую следующий код для отправки электронной почты. Код работает правильно на моем локальном компьютере. Но на рабочем сервере, я получаю сообщение об ошибке

и на моем Gmail A / c я получил следующее письмо после того, как я запустил код с производственного сервера

кто-то недавно использовал ваш пароль, чтобы попытаться войти в Google Счет mymailid@gmail.com — . Этот человек использовал приложение, такое как электронная почта, клиент или мобильное устройство.

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

пятница, 3 январь 2014 13:56: 08 часов UTC IP-адрес: xxx.xx.xx.xxx (abcd.net.) Местонахождение: Philadelphia PA, Philadelphia, PA, USA

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

Если это вы и у вас возникли проблемы с доступом к вашей учетной записи, выполните действия по устранению неполадок в http://support.google.com/mail?p=client_login

Искренне Ваш, команда учетных записей Google

21 ответов

обычно это происходит при попытке входа в систему из другого часового пояса или IP-адреса компьютера. Рабочий сервер и используемый почтовый идентификатор находятся в разных часовых поясах. Выберите любое из одного решения:

1) Войдите на рабочий сервер через удаленный доступ и войдите в gmail один раз с вашими учетными данными. Они запросят подтверждение, подтвердят его и выйдут из системы.

Читайте также:  Сколько книг ведьмака сапковского

или 2) Войдите в gmail на свой локальный компьютер, следуйте этому ссылке и выбрать обзор этой деятельности и принять надлежащие меры.

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

Пример 1: когда пароль неправильный

Пример 2: при попытке войти в систему из некоторого приложения

случай 3: при попытке входа домен, отличный от вашего часового пояса / домена / компьютера (это имеет место в большинстве сценариев при отправке почты из кода)

существует решение для каждого

решение для случая 1: введите правильный пароль.

Решение 1 для случая 2: перейдите в настройки безопасности по следующей ссылке https://www.google.com/settings/security/lesssecureapps и включить меньше безопасные приложения . Так что вы сможете войти в систему из всех приложений.

решение 2 для случая 2: (см.https://stackoverflow.com/a/9572958/52277) включите двухфакторную аутентификацию (он же двухэтапная проверка) , а затем создайте пароль для конкретного приложения. Используйте этот новый пароль для аутентификации через SMTP.

Решение 1 для случая 3: (Это может быть полезно) вам нужно просмотреть действие. но, анализируя деятельность не будет полезна из-за последних стандартов безопасности ссылка не будет полезна. Поэтому попробуйте следующий случай.

решение 2 для случая 3: Если вы разместили свой код где-то на производственном сервере и если у вас есть доступ к производственному серверу, то возьмите подключение удаленного рабочего стола к производственному серверу и попробуйте войти один раз из браузера производственного сервера. Это добавит excpetioon для входа в google, и вам будет разрешено войти из код.

но что, если у вас нет доступа к рабочему серверу. попробуйте решение 3

решение 3 для случая 3: вы должны включить вход из другого часового пояса / ip для вашей учетной записи google.

для этого перейдите по ссылке https://g.co/allowaccess и разрешить доступ, нажав кнопку Продолжить.

и это все. Вот, держи. Теперь ты сможете войти с любого компьютера и с помощью любого приложения в свой аккаунт google.

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

после входа на ваш e-mail,НАЖМИТЕ ЗДЕСЬ

Это приведет вас к следующей странице

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

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

в этом первом фрагменте кода ниже обратите внимание, где находится строка" Credentials = creds". Эта реализация создаст ошибку, указанную в этом вопросе, даже если все остальное настроено правильно.

Читайте также:  Куда наносить термопасту в ноутбуке

однако, если вы переместите вызов установщика учетных данных вниз, электронное письмо будет отправлено без ошибок. Я не внес никаких изменений в окружающий код . то есть . имя пользователя / пароль и т. д. Очевидно, либо EnableSSL, UseDefaultCredentials, или DeliveryMethod зависит от учетных данных, устанавливаемых в первую очередь. Я не проверял все, чтобы выяснить, какой это был.

надеюсь, это поможет спасти кого-то от головной боли в будущем.

Привет у меня была такая же проблема,

что я сделал, чтобы решить. это включить менее безопасное приложение. после подключения к моей учетной записи gmail. Я ввел эту ссылку:https://www.google.com/settings/security/lesssecureapps

затем я включаю безопасное приложение и, и это сработало. это было сказано также выше

просто выполните шаг в электронной почте google и включите менее безопасные приложения.

Я столкнулся с той же проблемой. Это происходит, когда вы включаете проверку 2 шага (MFA). Просто выключите 2 шага проверки и ваша проблема должна быть решена.

Ниже приведен мой код.У меня также была та же ошибка, но проблема заключалась в том, что я дал свой пароль неправильно.Приведенный ниже код будет работать отлично..попробуйте!—2—>

вы можете сослаться на него в мой блог

у меня была такая же проблема для приложения, развернутого в Microsoft Azure.

SmtpException: SMTP-серверу требуется безопасное соединение или клиент не прошел проверку подлинности. Ответ сервера: 5.5.1 Требуется Аутентификация.

сначала я одобрил все неизвестные устройства (некоторые ip-адреса, происходящие из Ирландии) на следующей странице (подписан как gmail пользователь): https://security.google.com/settings/u/1/security/secureaccount

я использовал следующие настройки для клиента:

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

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

Итак, войдите в свою учетную запись, а затем перейдите к google.com/settings/security/lesssecureapps

просто включите настройку или Gmail. см. ниже данное изображение:

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

  1. отключить 2-факторную аутентификацию
  2. установить" разрешить менее безопасные приложения " на
  3. войдите в свою учетную запись gmail с производственного сервера
  4. Go здесь а также утвердить логин активность
  5. запустите приложение в производстве сервер

отключение 2-факторной аутентификации

установить" разрешить менее безопасные приложения " на (та же страница, нужно прокрутить вниз)

я попробовал все предложения, найденные здесь, от включения менее безопасных приложений до попытки порта 587. ничего не помогало. Наконец, я просто прокомментировал строку UseDefaultCredentials = false . Все работало, если я не касался этого булева.

Если вы используете gmail.

1-Войдите в свой аккаунт

3-разрешить менее безопасные приложения: ON

Я действительно посмотрел на много идей, единственное решение было таким образом (работает с разными поставщиками электронной почты):

Я подписчик google apps для бизнеса, и я провожу последние пару часов, просто имея дело с этим, даже после того, как все правильные настройки (smtp, порт, enableSSL и т. д.). Вот что сработало для меня и веб-сайтов, которые бросали ошибку 5.5.1 при попытке отправить электронное письмо:

  1. войдите в свой admin.google.com
  2. нажмите Безопасность
  3. Нажмите Basic Настройки
  4. прокрутите до нижней части окна основные настройки, нажмите на ссылку: "Перейти к настройкам для менее безопасных приложений"
  5. выберите опцию #3: принудительный доступ к менее безопасным приложениям для всех пользователей (не рекомендуется)
  6. нажмите "Сохранить" в нижней части окна
Читайте также:  Размер шрифта на рабочем столе windows 7

после этого мои формы электронной почты с веб-сайта снова работали. Удачи!

вам может потребоваться создать / сгенерировать определенный пароль приложения из gmail. вы приложение или скрипт будет использовать этот новый пароль вместо обычного пароля. Вашему обычному паролю будет работать для вас.

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

комментарий от Томаш Мадейски является то, что фиксированная моя проблема. он говорит что существует баг на SetDefaultCredential, ему говорит:

" проблема в том, что в сеттере UseDefaultCredentials есть этот код: this.транспорт.Учетные данные = значение ? (ICredentialsByHost) CredentialCache.DefaultNetworkCredentials: (ICredentialsByHost) null; который переопределяет учетные данные, установленные Задатчиком учетных данных. Для меня это похоже на ошибку SmtpClient"

если поставить smtpClient.UseDefaultCredentials = false после установить полномочия. эта строка имеет значение null этих полномочий.

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

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

Серверу SMTP требовалось защищенное соединение, или подлинность клиента не была установлена.

Ответ сервера: 5.5.1 Authentication Required. Learn more at*

Ругаясь на последнюю строку. На purityperfection333@gmail.com пришло сообщение, что была заблокирована попытка входа. Что исправить ?

1 ответ 1

Скорей всего, у вас включена двухфакторная авторизация. Эта опция сейчас включена по умолчанию у всех новых пользователей.

Если вам не особо важна безопасность вашего аккаунта(вы уверенны, что никто не украдет пароль из вашего кода) — создайте пароль приложения, и используйте в коде именно его.

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

OAuth позволяет сильно ограничить права приложения. В частности, можно дать приложению право только отправлять почтовые сообщения и ничего более — ни доступа к другим сервисам Google, ни просмотра почтовых сообщений, ничего. Так-же появляется возможность использовать RESTful API, позволяющий вообще обойтись без использования SMTP-сервера.

Обновлено:

Как оказалось, с середины 2014 года, Google объявили все приложения использующие авторизацию по логину и паролю "ненадежными", и на всех учетных записях запретили по умолчанию вход таких приложений. В свою очередь "надежными" считаются только приложения использующие OAuth-авторизацию.

Для тех пользователей, у которых включена двухфакторная авторизация, их использование осталось возможно по паролю приложения.

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

Ссылка на основную публикацию
Adblock detector