2014-01-13 4 views
3

Я использую экземпляр ec2 на основе Ubuntu, недавно я переместил свой код на aws, и, похоже, функция электронной почты не работает. Я использую GMAIL SMTP службы ниже мой кодGmail SMTP не работает в экземпляре ec2

'Smtpmail'=>array(
     'class'=>'application.extensions.smtpmail.PHPMailer', 
     'Host'=>"smtp.gmail.com", 
     'Username'=>'username', 
     'Password'=>'password', 
    'From'=>'from addr', 
    'setForm'=>'from name', 
     'Mailer'=>'smtp', 
    'SMTPSecure'=>'tls', 
     'Port'=>25, 
     'SMTPAuth'=>true, 
    ), 

this code is working on my unix based server but on aws it is giving below error 

Mailer Ошибка: Следующий адрес отправителя не удалось: [email protected]: почта не принимается от сервера, 530,5.5.1 Требуется проверка подлинности. Узнайте больше на 530 5.5.1 http://support.google.com/mail/bin/answer.py?answer=14257 y6sm27370508qen.21 - gsmtp

Пожалуйста, помогите

+0

Я понимаю, вы говорите, что это работает в другом месте, но вы пробовали порт 587? Вы можете получить другое сообщение об ошибке, которое может быть полезно. –

+0

в моем случае это работало после разрешения ip заблокировано Gmail. Я вошел в свою учетную запись gmail и внутри действия, я разрешил ip заблокировать. –

ответ

8

MAIL not accepted from server

Из-за злоупотребления со спамом, который исторически был направлен от людей, использующих EC2 экземпляров, практически все популярные провайдеры почты блок получение электронной почты из экземпляров EC2. Мир электронных сообщений и мер по борьбе со спамом является частично техническим, частично политическим. По этой причине AWS предлагает Amazon Simple Email Service.

AWS работает с почтовыми провайдерами, чтобы гарантировать, что узлы, используемые SES, были включены в белый список, потому что мы выполняем правильную авторизацию/проверку вверх.

В этом случае возможность отправки электронной почты с одного сервера, но не AWS, по всей вероятности, из-за того, что диапазон IP-адресов EC2 занесен в черный список Google.

Authentication Required

Если один и тот же пользователь/пропуск работает в другом месте без изменений, я не уверен, что сказать. Я знаю, что много и много почтового трафика больше не использует порт 25, вместо этого вместо 587 вместо SSL и 465 для SSL. Это первое место, где я начинаю искать решения.

1

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

Только одна вещь решит проблему. Войдите в систему удаленно на сервере aws и войдите в свою учетную запись gmail, здесь она попросит подтверждение, и ваша почта будет работать легко.

0

Войдите в свою учетную запись AWS, добавьте правило под группу безопасности вашего экземпляра и разрешите SMTP, он будет работать, проверьте номер порта.

+0

Пожалуйста, предложите более подробное объяснение. –

1

Перейти к https://www.google.com/settings/security/lesssecureapps и установить доступа для менее защищенных приложений в На

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

+0

Этого недостаточно. Google по-прежнему будет блокировать ваше сообщение, если оно поступит от aws – user3631341

0

Если вы используете порт 25 для SMTP, вам нужно открыть порт SMTP для входящих в группу правил безопасности группы EC2.

Примечание: Gmail не предлагает порт 25 в незащищенном соединении.Для использования порта 25 защищенное соединение требуется в соответствии с Gmail Configuration requirements

Читать эту question & answer

How do I use Gmail SMTP with port 587 on AWS EC2?

Смежные вопросы