Назад | Перейти на главную страницу

Почему я не могу отправлять / получать электронные письма из AWS Ubuntu с помощью Postfix?

Я пытаюсь отправлять / получать электронные письма в своем ящике AWS Ubuntu. Для этого я следую инструкциям, опубликованным Amazon. Вот. (Я пропустил раздел под названием «Настроить интеграцию с использованием безопасного туннеля»)

Однако я все еще не могу отправлять электронные письма. Когда я пытаюсь отправить электронное письмо на my.user@gmail.com, это не удается:

local_user@ip-172-XXX-XXX-XXX:~$ netcat mydomain.com 25
220 mydomain.com ESMTP Postfix (Ubuntu)
ehlo mydomain.com
250-mydomain.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from: root@mydomain.com
250 2.1.0 Ok
rcpt to: my.user@gmail.com
454 4.7.1 <my.user@gmail.com>: Relay access denied

Вот что показывает файл журнала:

$ sudo tail -F /var/log/mail.log
Oct 17 18:06:10 ip-172-XXX-XXX-XXX postfix/smtpd[22869]: warning: hostname ec2-54-XXX-XXX-XXX.us-west-2.compute.amazonaws.com does not resolve to address 54.XXX.XXX.XXX
Oct 17 18:06:10 ip-172-XXX-XXX-XXX postfix/smtpd[22869]: connect from unknown[54.XXX.XXX.XXX]
Oct 17 18:06:31 ip-172-XXX-XXX-XXX postfix/smtpd[22869]: NOQUEUE: reject: RCPT from unknown[54.XXX.XXX.XXX]: 454 4.7.1 <my.user@gmail.com>: Relay access denied; from=<root@mydomain.com> to=<my.user@gmail.com> proto=ESMTP helo=<mydomain.com>

Как я могу это исправить? В чем проблема? Обратите внимание, что мой EC2 находится в AWS US West (Oregon) область. Но я настроил ретранслятор на email-smtp.us-east-1.amazonaws.com:25 в main.cf файл. Это проблема? Я так не думаю.

Мой файл main.cf выложен Вот

У вас опечатка на вашем ретрансляционном хосте.

relayhost = email-smtp.us-east.amazonaws.com:25

должно быть

relayhost = email-smtp.us-east-1.amazonaws.com:25

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

Чтобы разрешить конкретный хост без аутентификации, добавьте его в mynetworks параметр.


У вас, кстати, отсутствуют запятые между значениями smtpd_relay_restrictions.