Вопрос или проблема
Я искал, искал и искал в сети, и не могу найти решение для отладки этой окончательной установки SMTP. Поэтому, пожалуйста, помогите мне.
1. Прежде всего, у меня есть проблема, когда письма, которые я пытаюсь отправить своим клиентам на GMAIL, попадают в СПАМ. Конечно, я настроил spf, DKIM, dmarc, но ничего не работает, и мои письма всегда попадают в СПАМ. Можете ли вы помочь мне решить эту проблему, пожалуйста?
Вот как я настроил spf:
| Тип | Хост | Значение | TTL |
|-------|----------------------|------------------------------------------------|----------|
| TXT RE| goshareit.co | v=spf1 ip4:замените_на_ip_сервера_vps a mx ~all| Автоматически |
Вот как я настроил dkim:
| Тип | Хост | Значение | TTL |
|-------|----------------------|------------------------------------------------|----------|
| TXT RE| mail._domainkey | v=DKIM1; h=sha256; k=rsa; p=ВАШ_ПУБЛИЧНЫЙ_КЛЮЧ | Автоматически |
Вот как я настроил dmarc:
| Тип | Хост | Значение | TTL |
|-------|----------------------|------------------------------------------------|----------|
| TXT RE| _dmarc | `v=DMARC1; p=quarantine; aspf=r; sp=none` | Автоматически |
2. Во-вторых, когда я пытаюсь отправить электронное письмо на профессиональный адрес, оно не доходит до места назначения (профессионального адреса), и я не знаю, почему?
Вот как я настроил конфигурационный файл Postfix “sudo nano /etc/postfix/main.cf”:
# Основные настройки
myhostname = замените_на_ваше_имя_домена
myorigin = замените_на_ваше_имя_домена
mydomain = замените_на_ваше_имя_домена
inet_interfaces = all
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
# Настройки реле (если необходимо, но могут быть пустыми для прямой доставки)
relayhost =
# Настройки TLS для безопасной передачи электронной почты
smtpd_tls_cert_file=/etc/letsencrypt/live/замените_на_ваше_имя_домена/fullchain.pem
smtpd_tls_key_file=/etc/letsencrypt/live/замените_на_ваше_имя_домена/privkey.pem
smtpd_tls_security_level=may
smtp_tls_CApath=/etc/ssl/certs
smtp_tls_security_level=may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_tls_auth_only = yes
smtpd_tls_received_header = yes
# Включить аутентификацию SMTP с использованием Dovecot
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_local_domain = $mydomain
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
# Ограничения на получение SMTP (контролируйте, кто может отправлять электронные письма)
smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination
# Ограничение размера почтового ящика (установите на 0 для неограниченного размера)
mailbox_size_limit = 0
# Включить очередь для почты
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix/sbin
data_directory = /var/lib/postfix
# Настройки безопасности
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
compatibility_level = 3.6
# Ограничение на localhost для реле (если нет установленного реле)
mynetworks = 127.0.0.0/8
alias_maps = hash:/etc/aliases
home_mailbox= Maildir/
После этого я выполнил эту команду:
sudo postconf -e 'home_mailbox = Maildir\'
Затем я обновил файл sudo nano /etc/hosts, чтобы настроить хост и добавил это:
127.0.0.1 localhost ubuntu.local ubuntu
127.0.0.1 замените_на_ваше_имя_домена имя_вашего_сайта
152.53.55.237 замените_на_ваше_имя_домена
# Следующие строки желательны для хостов с поддержкой IPv6
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
А затем, я обновил файл sudo nano /etc/postfix/master.cf и добавил этот блок кода, чтобы мы могли использовать
Roundcube, чтобы не вызывать эту ошибку SMTP Error (): Authentication failed
submission inet n - y - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=may
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
И наконец, я перезапустил postfix.
sudo systemctl restart postfix
И после этого я попытался отправить электронные письма этой компании [email protected] на своем терминальном сервере VPS вот так, и это не сработало:
echo "This is a test email" | mail -s "Test Email" [email protected]
И когда я проверяю ошибки, выполняя команду sudo tail -f /var/log/mail.log, мне показывают эту ошибку 550-No Such User Here 550 Sender verify failed (в ответ на команду RCPT TO)).
Вот ошибки с некоторыми деталями:
root@goshareit:/var/www# echo “This is a test email” | mail -s “Test Email” [email protected] root@goshareit:/var/www# tail -f /var/log/mail.log 2024-10-18T05:23:22.729801+02:00 goshareit postfix/pickup[1749]: B208EA6BD9: uid=0 from=<[email protected]> 2024-10-18T05:23:22.737760+02:00 goshareit postfix/cleanup[2614]: B208EA6BD9: message-id=<[email protected]> 2024-10-18T05:23:22.753331+02:00 goshareit postfix/qmgr[1750]: B208EA6BD9: from=<[email protected]>, size=348, nrcpt=1 (очередь активна) 2024-10-18T05:23:23.482248+02:00 goshareit postfix/smtp[2616]: B208EA6BD9: to=<[email protected]>, relay=_dc-mx.50e0a8e24d73.transladocs.com[65.181.111.251]:25, delay=0.76, delays=0.04/0.01/0.65/0.06, dsn=5.0.0, status=bounced (хост _dc-mx.50e0a8e24d73.transladocs.com[65.181.111.251] сказал: 550-Verification failed for <[email protected]> 550-No Such User Here 550 Sender verify failed (в ответ на команду RCPT TO)) 2024-10-18T05:23:23.501725+02:00 goshareit postfix/cleanup[2614]: 7A3AEA6BDA: message-id=<[email protected]> 2024-10-18T05:23:23.512471+02:00 goshareit postfix/bounce[2617]: B208EA6BD9: уведомление о недоставке отправителя: 7A3AEA6BDA 2024-10-18T05:23:23.512598+02:00 goshareit postfix/qmgr[1750]: 7A3AEA6BDA: from=<>, size=2491, nrcpt=1 (очередь активна) 2024-10-18T05:23:23.512860+02:00 goshareit postfix/qmgr[1750]: B208EA6BD9: удален 2024-10-18T05:23:23.526177+02:00 goshareit postfix/local[2618]: 7A3AEA6BDA: to=<[email protected]>, relay=local, delay=0.02, delays=0.01/0.01/0/0.01, dsn=2.0.0, status=sent (доставлено в почтовый ящик) 2024-10-18T05:23:23.526319+02:00 goshareit postfix/qmgr[1750]: 7A3AEA6BDA: удален
Тем не менее, все работало нормально, когда я отправлял электронные письма на GMAIL, YAHOO, но проблема в том, что они попадают в СПАМ от этих людей.
Так что же мне делать в этом случае?
Не забывайте, что пользователь richardson действительно существует на сервере. И я заметил, что когда я выполняю sudo hostnamectl set-hostname goshareit, а не sudo hostnamectl set-hostname goshareit.co, и затем отправляю, электронное письмо доходит корректно. Но проблема в том, что в адресе электронной почты нет точки “.”, он отображается как richardson@goshareit. Что мне делать в этом случае? И как мне, пожалуйста, решить эти две большие проблемы, с которыми я сейчас сталкиваюсь? И, пожалуйста, это длится слишком долго???
Ответ или решение
Проблема, с которой вы столкнулись, включает две основные части: неполучение электронных писем на профессиональные адреса и попадание ваших писем в папку "Спам" у Gmail, несмотря на правильно настроенные SPF, DKIM и DMARC. Давайте разберем каждую из этих вопросов подробнее и рассмотрим потенциальные решения.
1. Проблема с отправкой писем на профессиональные адреса
Сообщение об ошибке, которое вы получили: 550-No Such User Here 550 Sender verify failed
, указывает на то, что SMTP-сервер получателя не смог успешно провести проверку отправителя. Эта проблема может быть вызвана несколькими факторами:
-
Неверно указанный адрес отправителя: Убедитесь, что адрес отправителя корректен и существует. Согласно вашему описанию, выуказали адрес
richardson@goshareit.co
. Проверьте, что у вас действительно есть пользователь с этой учетной записью на вашем сервере. -
Настройки вашего Postfix: Проверьте файл конфигурации Postfix (
/etc/postfix/main.cf
), чтобы убедиться в правильности указанных доменов и настроек. В частности, настройкаmydestination
должна включать ваш домен, чтобы сервер мог правильно обрабатывать локальные адреса. -
Проверка на стороне получателя: Возможно, получатель использует настройки, которые требуют дополнительной проверки отправителей. Это может включать проверки SPF и DKIM, а также политики фильтрации. Попробуйте отправить тестовое сообщение с другого адреса, например, с почтового ящика Gmail или другого домена.
2. Проблема с отправкой писем на Gmail и попадание в Спам
Для того чтобы ваши письма не попадали в Спам, необходимо убедиться, что вы правильно настроили SPF, DKIM и DMARC. Рассмотрим каждый элемент:
-
SPF: Ваша запись SPF кажется корректной (при условии, что IP-адрес сервера действительно верен). Убедитесь, что DNS-записи обновлены и правильно применены. Также проверьте, что у вас нет конфликтующих записей SPF.
-
DKIM: Убедитесь, что DKIM правильно настроен и используется для всех исходящих писем. Это можно проверить с помощью различных онлайн-инструментов, которые позволяют провести анализ вашей DKIM-подписи.
-
DMARC: Ваши настройки DMARC указывают на политику
quarantine
, что разумно, но вы можете рассмотреть возможность изменения наreject
, чтобы обеспечить более строгую защиту. -
Репутация вашего IP-адреса: Иногда письма могут попадать в спам из-за низкой репутации IP-адреса. Проверьте, не занесен ли ваш IP в черные списки (blacklists). Существует множество ресурсов для проверки репутации IP-адреса.
-
Тестирование на SpamAssassin: Запустите тест на SpamAssassin, чтобы выявить, что именно в ваших письмах может вызвать проблемы с доставкой.
Рекомендации
-
Перепроверьте настройки DNS: Убедитесь, что SPF, DKIM и DMARC правильно настроены и применены. Используйте инструменты проверки, такие как MXToolbox или Kitterman, для проверки ваших DNS-записей.
-
Проверка пользователей: Убедитесь, что все пользователи, с которых вы отправляете письма, существуют на вашем сервере и правильно настроены.
-
Настройка доменного имени: Убедитесь, что имя хоста и доменное имя согласованы и корректно настроены. Изменение имени хоста на имя без точки (как
goshareit
) может быть быстрое решение, но убедитесь, что это не нарушает другие конфигурации. -
Обновление Postfix: После внесения любых изменений в конфигурации не забудьте перезапустить Postfix, чтобы новые настройки вступили в силу.
-
При необходимости обратитесь за помощью: Если проблемы продолжаются, может быть полезным обратиться за помощью к специалистам или сервисам, которые специализируются на настройке почтовых серверов.
Следуя этим рекомендациям, вы сможете улучшить доставляемость ваших писем и избежать ошибок отправки.