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

SMTP-AUTH требуется для локальных доменов?

Вот проблема: с любого IP-адреса, не принадлежащего вашему почтовому серверу:

telnet me.myemailserver.com 25  

helo me.someserver.com
mail from: <yourusername@mydomain.com>
rcpt to: <yourusername@mydomain.com>
data
This is spam.  Buy my stuff.
.

Я использую Postfix. У меня возникла проблема с поиском решения, требующего SMTP-AUTH для электронной почты, якобы отправленной с mydomain.com.

Погуглив, этот парень обнаружил ту же проблему (где я вырезал и вставил с некоторыми изменениями) в приведенном выше примере из: http://www.smartertools.com/forums/t/13182.aspx

Эта ссылка http://marc.info/?l=postfix-users&m=122814832915131&w=2 приближается к решению, но у него есть побочный эффект, заключающийся в том, что требуется SMTP-AUTH для почты не с mydomain.com. Для почты, не утверждающей, что она отправлена ​​с mydomain.com, я бы сделал обычную фильтрацию RBL и спама.

Короче говоря, я хочу отклонить почту на локальные домены (mydomain.com) от внешних / неаутентифицированных клиентов, утверждающих, что они из локальных доменов (mydomain.com).

Это то, что я пробовал: я пробовал как разрешить, так и отклонить по умолчанию. Вот точная выдержка из моего main.cf:

smtpd_recipient_restrictions = reject_unauth_pipelining,
                           permit_sasl_authenticated,
                           check_recipient_access pgsql:/etc/postfix/pgsql-recipient.cf,
                           reject_unauthenticated_sender_login_mismatch,
                           reject_unauth_destination,
                           reject_unlisted_recipient,
                           check_sender_access pgsql:/etc/postfix/pgsql-sender.cf,
                           reject_unlisted_sender,
                           reject_invalid_hostname,
                           reject_non_fqdn_hostname,
                           reject_non_fqdn_sender,
                           reject_non_fqdn_recipient,
                           reject_unknown_sender_domain,
                           reject_unknown_recipient_domain,
                           reject_rbl_client cbl.abuseat.org,
                           reject_rbl_client sbl.spamhaus.org,
                           reject_rbl_client sbl-xbl.spamhaus.org,
                           reject_rbl_client bl.spamcop.net,
                           reject_rbl_client dnsbl.njabl.org,
                           reject_rbl_client blackholes.wirehub.net,
                           reject_rbl_client relays.mail-abuse.org,
                           reject_rbl_client dialups.mail-abuse.org,
                           reject_rbl_client blackholes.mail-abuse.org,
                           reject_rhsbl_sender dsn.rfc-ignorant.org,
                           (reject and permit both tried here)

Я бы попробовал что-то вроде этого:

/etc/postfix/main.cf:

smtpd_sender_restrictions =
    permit_mynetworks,
    permit_sasl_authenticated,
    check_sender_access hash:/etc/postfix/access_table,
    ...,
    permit

/etc/postfix/access_table:

mydomain.com        REJECT You're not me!

Теория такая:

Если они уже прошли аутентификацию, они запускают permit_sasl_authenticated правила и разрешены. Если они не аутентифицированы, он переходит к check_sender_access правило. Если домен отправителя совпадает с "mydomain.com", отправитель отклоняется. (Таким образом, неавторизованный + ПОЧТА ОТ "mydomain.com" = отклонить.) Если это какой-либо другой домен, он продолжается согласно остальным вашим правилам.

ПРИМЕЧАНИЕ: это не проверено. Я бы приклеил warn_if_reject перед этим check_sender_access перед тем, как попробовать его в производственной системе.

На одном сервере, где у меня есть postfix с Dovecot с данными аутентификации в MySQL, я сделал следующее в main.cf:

smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject

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

https://www.linode.com/docs/email/postfix/configure-spf-and-dkim-in-postfix-on-debian-8/