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

Sendmail - exim4, postfix, Drupal SMTP - не работает

Я хочу отправлять электронные письма с моего сервера Debian 6. Я только хочу отправить. Я выполнил все инструкции, которые могу найти для Sendmail, Exim4 и Postfix, и не могу заставить их работать. Я попробовал Поддержка аутентификации SMTP модуль для отправки почты через учетную запись Gmail. Но потом это тоже перестало работать. Тестовое электронное письмо, которое я могу отправить через форму конфигурации модуля, работает, но я пытаюсь отправить через drupal_mail () терпит неудачу.

mail -v travis@targetdomain.com сообщает, что сообщение принято к доставке, но в мой почтовый ящик оно так и не доходит. Ниже представлен результат. Я думал, что, возможно, проблема была в MAIL From: travis@debian, но все, что я пытался изменить, тоже терпит неудачу. Я изменился /etc/email-addresses и добавил правило перезаписи с f чтобы изменить заголовок from, безрезультатно. Во всяком случае, вывод:

turibe@servername:~$ mail -v travis@addressdomain.com
Subject: Testing
bloopy
.
EOT
travis@addressdomain.com... Connecting to [127.0.0.1] via relay...
220 example.com ESMTP Sendmail 8.14.3/8.14.3/Debian-9.4; Thu, 30 May 2013 00:53:01 -0700; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1]
>>> EHLO example.com
250-example.com Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
>>> VERB
250 2.0.0 Verbose mode
>>> MAIL From:<turibe@example.com> SIZE=218 AUTH=turibe@example.com
250 2.1.0 <turibe@example.com>... Sender ok
>>> RCPT To:<travis@addressdomain.com>
>>> DATA
250 2.1.5 <travis@addressdomain.com>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
050 <travis@addressdomain.com>... Connecting to aspmx.l.google.com. via esmtp...
050 220 mx.google.com ESMTP zb4si24120260obb.80 - gsmtp
050 >>> EHLO example.com
050 250-mx.google.com at your service, [2600:3c00::f03c:91ff:fe70:4335]
050 250-SIZE 35882577
050 250-8BITMIME
050 250-STARTTLS
050 250-ENHANCEDSTATUSCODES
050 250 PIPELINING
050 >>> STARTTLS
050 220 2.0.0 Ready to start TLS
050 >>> EHLO example.com
050 250-mx.google.com at your service, [2600:3c00::f03c:91ff:fe70:4335]
050 250-SIZE 35882577
050 250-8BITMIME
050 250-ENHANCEDSTATUSCODES
050 250 PIPELINING
050 >>> MAIL From:<turibe@debian> SIZE=471
050 250 2.1.0 OK zb4si24120260obb.80 - gsmtp
050 >>> RCPT To:<travis@addressdomain.com>
050 >>> DATA
050 250 2.1.5 OK zb4si24120260obb.80 - gsmtp
050 354  Go ahead zb4si24120260obb.80 - gsmtp
050 >>> .
050 250 2.0.0 OK 1369900381 zb4si24120260obb.80 - gsmtp
050 <travis@addressdomain.com>... Sent (OK 1369900381 zb4si24120260obb.80 - gsmtp)
250 2.0.0 r4U7r1kG022811 Message accepted for delivery
travis@addressdomain.com... Sent (r4U7r1kG022811 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 example.com closing connection

Я пробовал несколько разных адресов. Это сводит меня с ума. Кажется, что это должна быть довольно простая проблема, но ничего из того, что я пробовал, и ничего, что я могу найти по этой проблеме, не работает. Я прочитал так много статей, в которых автор говорит, что все, что он делал для отправки почты, было чем-то вроде apt-get install sendmail и он пошел, но ни один из этих шагов не работает для меня.

Обновить Прежде чем спросить об этом, я убедился, что все исходящие соединения включены. И действительно, кажется, что команда mail успешно соединяется с GMail.

Обновить Этот сервер является сервером Linode, а не домашним сервером.

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

Обновить Я попытался Эта статья а также - не повезло. /var/log/exim4/mainlog через несколько минут записывает, что сообщение заморожено.

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

Если вы хотите отправить прямо в Интернет, вам понадобится фиксированный IP-адрес с записью PTR, указывающей на запись A, которая возвращает адрес. В противном случае многие серверы заблокируют вас. У вас также должна быть запись MX для домена, с которого вы отправляете сообщения, на имя вашего почтового сервера. Запись SPF для обоих доменов может помочь, если они не запрещают вашему серверу отправлять сообщения для этого домена.

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

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

РЕДАКТИРОВАТЬ: самое простое решение - использовать команду dpkg-reconfigure exim4-config и выберите опцию smarthost. Используйте ретранслятор электронной почты вашего провайдера, и все должно работать хорошо. Убедитесь, что вы используете действующий адрес электронной почты отправителя. Хотя GMail может работать, настройка необходимой аутентификации требует дополнительных усилий, и они могут ограничивать количество отправляемых вами электронных писем, если у вас нет платной учетной записи.

Если вы хотите запустить свой собственный почтовый сервер, вы можете начать с моей статьи о Работающий и почтовый сервер. Вы также можете просмотреть мои Политика электронной почты документ и перечисленные в нем документы. У меня есть несколько других сообщения связанные с электронной почтой. Мой любимый сервер - Exim.

Я наконец-то получил электронные письма, прочитав эту статью: http://wiki.debian.org/GmailAndExim4

Ключевое отличие заключается в этой строке в /etc/exim4/passwd.client: *.google.com:SMTPAccountName@gmail.com:y0uRpaSsw0RD

Как только я добавил его, мои электронные письма начали работать. Раньше я использовал smtp.gmail.com вместо того *.google.com. Я попытался удалить эту строку в пользу smtp.gmail.com строку, чтобы убедиться, что это было исправление, и это действительно так, поскольку я не мог отправлять электронные письма без *.google.com линия.

Поскольку у меня есть платная учетная запись Google Apps, использование Google в качестве смарт-хоста - хорошее решение для меня.