LinuxForum.Fans
Тема

VPS Debian настройка отправки почты, с внешним сервером Яндекс

Автор: denisovvsh 10 сообщений 1606 просмотров
15.10.2020 04:40 #435446

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

Дали мне сервер от Contabo (OS: Debian 10.6), настроил я сайт с внешними DNSами от Яндекса, все вроде работает. Дошло дело до почты - почту тоже, на стороне Яндекса, завёл из под домена своего.

Чтобы письма отправлялись - снял галку, в панели plesk, чтобы почта не управлялась сервером, чтоб внешний сервер работал. Далее начал проверять - отправляю письма, при помощи функции php mail(). Если отправляю на любую почту, не своего домена, то все приходит, ну т.е. dnsы вроде корректно работают. А вот, когда отправляю на адрес, своего домена, то ничего не приходит.
Причем, почта рабочая, т.к. если на нее отправлять письма не с моего сервеа, то все приходит и с нее тоже все уходит.

Может это детская проблема, но я не могу ее решить, т.к. не знаю где смотреть.
Подскажите пожалуйста, в чем может быть проблема?
Подозреваю, что на сервере нужно настройки править, т.к. панель уже всю обшарил)
А с настройкой сервера ещё плохо знаком. Учусь ещё. Заранее спасибо.

15.10.2020 18:25 #435449

denisovvsh, :) А сам сервер вашу почту видит?

21.10.2020 04:51 #435462

Что значит видит?
Добавлено: 21.10.2020 04:51:47

Wolfenberg написал:
denisovvsh, :) А сам сервер вашу почту видит?

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

Нашел /etc/postfix/main.cf

text

# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific:  Specifying a file name will cause the first
# line of that file to be used as the name.  The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) biff = no

# appending .domain is the MUA's job. append_dot_mydomain = no

# Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h

readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on # fresh installs. compatibility_level = 2

# TLS parameters smtpd_tls_cert_file = /etc/postfix/postfix.pem smtpd_tls_key_file = $smtpd_tls_cert_file smtpd_use_tls = yes smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for # information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination myhostname = vmi.contaboserver.net alias_maps = hash:/etc/aliases, hash:/var/spool/postfix/plesk/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = localhost.contaboserver.net, localhost, localhost.localdomain relayhost = mynetworks = mailbox_size_limit = 0 recipient_delimiter = inet_interfaces = all inet_protocols = all virtual_mailbox_domains = $virtual_mailbox_maps, hash:/var/spool/postfix/plesk/virtual_domains virtual_alias_maps = $virtual_maps, hash:/var/spool/postfix/plesk/virtual virtual_mailbox_maps = , hash:/var/spool/postfix/plesk/vmailbox transport_maps = , hash:/var/spool/postfix/plesk/transport tls_server_sni_maps = hash:/var/spool/postfix/plesk/certs smtpd_tls_security_level = may smtp_tls_security_level = may smtp_use_tls = no smtpd_timeout = 3600s smtpd_proxy_timeout = 3600s disable_vrfy_command = yes smtpd_sender_restrictions = check_sender_access hash:/var/spool/postfix/plesk/blacklists, permit_sasl_authenticated smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated authorized_flush_users = authorized_mailq_users = smtp_send_xforward_command = yes smtpd_authorized_xforward_hosts = 127.0.0.0/8 [::1]/128 smtpd_sasl_auth_enable = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination virtual_mailbox_base = /var/qmail/mailnames virtual_uid_maps = static:30 virtual_gid_maps = static:31 smtpd_milters = , inet:127.0.0.1:12768 sender_dependent_default_transport_maps = hash:/var/spool/postfix/plesk/sdd_transport_maps virtual_transport = plesk_virtual plesk_virtual_destination_recipient_limit = 1 mailman_destination_recipient_limit = 1 message_size_limit = 10240000 virtual_mailbox_limit = 0 recipient_canonical_maps = tcp:127.0.0.1:12346 recipient_canonical_classes = envelope_recipient,header_recipient tls_preempt_cipherlist = yes smtpd_tls_mandatory_ciphers = medium smtpd_tls_protocols = TLSv1.2 smtpd_tls_mandatory_protocols = TLSv1.2 smtpd_tls_ciphers = medium

Но эти настройки, как будто не действуют, где-то отдельно для домена, надо смотреть, но не знаю где

21.10.2020 19:15 #435468

denisovvsh, :) Ну так привяжите IP своей почты к серверу.

22.10.2020 06:16 #435473
Wolfenberg написал:
denisovvsh, :) Ну так привяжите IP своей почты к серверу.

Ну так где в каком файле это сделать?

22.10.2020 16:59 #435475

denisovvsh, :) IPtables вам в помощь.

23.10.2020 09:34 #435478
Wolfenberg написал:
denisovvsh, :) IPtables вам в помощь.

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

На моем хостинге два домена - назовем их my_site_2.ru и my_site_1.ru

На my_site_2.ru все работает, он был настроен ранее, если отправлять на почту, office@my_site_2.ru, то все прилетает и на любые другие адреса все прилетает.
Вот логи успешной отправки

text

Oct 23 01:09:37 vmi4 postfix/pickup[27910]: 38A203: uid=10000 from=<my@my_site_2.ru>
Oct 23 01:09:37 vmi4 postfix/cleanup[31367]: 38A203: message-id=<tgajOwwRnim4AmvoOlZMZGDqchUOX2TpkKnGiGw@my_site_2.ru>
Oct 23 01:09:37 vmi4 postfix/qmgr[14895]: 38A203: from=<my@my_site_2.ru>, size=859, nrcpt=1 (queue active)
Oct 23 01:09:40 vmi4 postfix/smtp[31371]: 38A203: to=<office@my_site_2.ru>, relay=mx.yandex.net[213.180.204.89]:25, delay=3.3, delays=0.04/0.01/2.1/1.1, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued on mxfront3o.mail.yandex.net as 1603433380-CldLs7oGbT-9dHe9R3M)

Статус

text
status=sent (250 2.0.0 Ok: queued on mxfront3o.mail.yandex.net as 1603433380-CldLs7oGbT-9dHe9R3M)

В успешно случае видно - relay=mx.yandex.net

Потом я создал еще один домен my_site_1.ru
И вот на почту office@my_site_1.ru письма не прилетают, а если отправлять на любую другую почту, то все прилетает
Вот логи неуспешной отправки

text

Oct 23 01:09:53 vmi4 postfix/pickup[27910]: 16E303: uid=10001 from=<access@my_site_1.ru>
Oct 23 01:09:53 vmi4 postfix/cleanup[31367]: 16E303: message-id=<d8uY3aTGeNNjDU0CewtJQdkXecMZeqHbRi1sGbBkEE@my_site_1.ru>
Oct 23 01:09:53 vmi4 postfix/qmgr[14895]: 16E303: from=<access@my_site_1.ru>, size=907, nrcpt=1 (queue active)
Oct 23 01:09:53 vmi4 postfix-local[31388]: postfix-local: from=access@my_site_1.ru, to=office@my_site_1.ru, dirname=/var/qmail/mailnames
Oct 23 01:09:53 vmi4 postfix/pipe[31387]: 16E303: to=<office@my_site_1.ru>, relay=plesk_virtual, delay=0.49, delays=0.01/0.01/0/0.47, dsn=4.2.1, status=deferred (Message can not be delivered at this time )

статус

text
status=deferred (Message can not be delivered at this time )

Когда отправка неуспешна, то - relay=plesk_virtual

Как исправить чтобы relay=plesk_virtual был relay=mx.yandex.net
Если учитывать, что на стороне яндекса, все настроено верно, днсы работают

23.10.2020 17:02 #435481

denisovvsh, :) ну так у вас одна виртуалка закрывает доступ для другой. Расшаривайте.

24.10.2020 04:12 #435482
Wolfenberg написал:
denisovvsh, :) ну так у вас одна виртуалка закрывает доступ для другой. Расшаривайте.

Подскажите, пожалуйста, как расшарить, где какой файл поправить?

25.10.2020 09:18 #435483

denisovvsh, смотрите настройки самих виртуальных машин. Настраивайте доступ.

Войдите или зарегистрируйтесь, чтобы ответить.