Задать вопрос

Где у меня дыра в SMTP?

Здравствуйте, мне потребовалось настроить небольшую виртуалку для ручной отправки почты. На голый Debian установил postfix/dovecot/opendkim. Аутентификация по системным учетным записям, SSL нет. Отправку без аутентификации запретил (сайты типа https://mail.nettools.ru openrelay не выявляют). Однако, постояв несколько дней с открытым 25 портом, логи ошибок забиваются сообщениями о невозможности доставки почты тысячам пользователям. Т.е. меня уже добавили в черный лист). Откуда мой сервер получает задания на отправку?
mail.log
Sep 9 10:59:50 mx postfix/qmgr[568]: C48C843BB: from=<>, size=1259, nrcpt=50 (queue active)

Sep 9 10:59:50 mx postfix/qmgr[568]: AF25D1F5A: from=<>, size=1259, nrcpt=50 (queue active)
Sep 9 10:59:50 mx postfix/qmgr[568]: 1F1C03B8E: from=<>, size=1259, nrcpt=50 (queue active)
Sep 9 10:59:50 mx postfix/qmgr[568]: 09E2D1B98: from=<>, size=1259, nrcpt=50 (queue active)
Sep 9 10:59:50 mx postfix/qmgr[568]: 204094C15: from=<>, size=1259, nrcpt=50 (queue active)
Sep 9 10:59:50 mx postfix/smtp[576]: 4C31A195F: to=, relay=hotmail-com.olc.protection.outlook.com[52.101.73.5]:25, delay=416466, delays=416465/0.13/0.15/0.04, dsn=5.7.1, status=bounced (host hotmail-com.olc.protection.outlook.com[52.101.73.5] said: 550 5.7.1 Unfortunately, messages from [195.144.234.14] weren't sent. Please contact your Internet service provider since part of their network is on our block list (S3150). You can also refer your provider to mail.live.com/mail/troubleshooting.aspx#errors. [Name=Protocol Filter Agent][AGT=PFA][MxId=11B99DF4B0294412] [AM4PEPF00025F97.EURPRD83.prod.outlook.com 2024-09-09T07:59:50.814Z 08DCCEFA5A1C90CB] (in reply to MAIL FROM command))
Sep 9 10:59:50 mx postfix/qmgr[568]: E8C943F4B: from=<>, size=1259, nrcpt=50 (queue active)
Sep 9 10:59:50 mx postfix/smtp[576]: 4C31A195F: to=, relay=hotmail-com.olc.protection.outlook.com[52.101.73.5]:25, delay=416466, delays=416465/0.13/0.15/0.04, dsn=5.7.1, status=bounced (host hotmail-com.olc.protection.outlook.com[52.101.73.5] said: 550 5.7.1 Unfortunately, messages from [195.144.234.14] weren't sent. Please contact your Internet service provider since part of their network is on our block list (S3150). You can also refer your provider to mail.live.com/mail/troubleshooting.aspx#errors. [Name=Protocol Filter Agent][AGT=PFA][MxId=11B99DF4B0294412] [AM4PEPF00025F97.EURPRD83.prod.outlook.com 2024-09-09T07:59:50.814Z 08DCCEFA5A1C90CB] (in reply to MAIL FROM command))


mail.cf

# 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 www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
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
smtpd_relay_restrictions =
permit_mynetworks
permit_sasl_authenticated
reject_unauth_destination

myhostname = mx.mydomain.ru
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = $myhostname, mydomain.ru, localhost.gamma.spb.ru, localhost
relayhost =
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all

smtpd_sasl_type = dovecot
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth

header_checks = pcre:/etc/postfix/header_checks.pcre
milter_default_action = accept
milter_protocol = 2
#smtpd_milters = unix:/var/run/opendkim/opendkim.sock
#non_smtpd_milters = unix:/var/run/opendkim/opendkim.sock

home_mailbox = Maildir/

#for OpenDKIM
smtpd_milters = inet:127.0.0.1:8892
non_smtpd_milters = inet:127.0.0.1:8892

пример отчета проверки на openrelay

Connecting to mx.mydomain.ru
220 mx.mydomain.ru ESMTP Postfix (Debian/GNU) [114ms]
EHLO g3kiuic.smtp.bz
250-mx.mydomain.ru
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250-SMTPUTF8
250 CHUNKING [5ms]
MAIL FROM:
250 2.1.0 Ok [14ms]
RCPT TO:
554 5.7.1 : Relay access denied [6ms]
  • Вопрос задан
  • 1117 просмотров
Подписаться 5 Простой 4 комментария
Решения вопроса 1
ValdikSS
@ValdikSS
Запустите mailq и посмотрите, что за письма и от кого у вас в очереди. Далее смотрите заголовки в самих файлах писем, в них будет IP-адрес источника.

Если источник 127.0.0.1, то могу предположить, что у вас на этом сервере установлен некий прокси (HTTP/SOCKS), разрешающий доступ в локальную сеть, и письма отправляют через прокси, а postfix считает их локальными и не требует аутентификации — это довольно типичная мисконфигурация.

Если прокси нет, быть может, у вас включена маршрутизация общая, маршрутизация в localhost (net.ipv4.conf.*.route_localnet), в таком случае соседи по датацентру также могут маршрутизировать вам трафик в 127.0.0.1 (это нетипичная и редкая конфигурация, но иногда такое может встречаться [1], [2]).
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@SamDurak
И что тебе мешало sendmail использовать вместо того чтобы городить сервер?
mynetworks = 127.0.0.0/8 а зачем так? (ну в смысле из этой сети он будет считать что безопасно может отправить)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы