O postfix permite que usuários autenticados por SASL enviem de qualquer endereço IP

2

Entendo que preciso de SMTP na porta 25 para receber e-mails, mas não quero que isso seja uma porta de retransmissão. Em vez disso, eu faria com que a porta 587 fosse usada para usuários registrados (autenticados pelo SASL) para retransmitir email de qualquer endereço IP, através do meu servidor e para qualquer servidor de email (por exemplo, GMail, Yahoo).

Eu configurei o Postfix para receber e-mails e autenticar usuários, mas estou completamente confuso sobre a diferença entre as portas 25 e 587 e como usar uma para receber e outra para retransmitir.

Aqui está a parte relevante do meu main.cf atualmente.

myhostname = mx.example.com
mydomain = example.com
#myorigin = $mydomain
mydestination = localhost localhost.localdomain
mynetworks_style = host

smtpd_sender_restrictions = reject_unknown_sender_domain

smtpd_relay_restrictions = permit_mynetworks, 
        permit_sasl_authenticated,
        reject_unauth_destination

smtpd_recipient_restrictions = permit_mynetworks, 
        permit_sasl_authenticated,
        # reject_unauth_destination is not needed here if the mail
        # relay policy is specified under smtpd_relay_restrictions
        # (available with Postfix 2.10 and later).
        reject_unauth_destination
        reject_rbl_client zen.spamhaus.org,
        reject_rhsbl_reverse_client dbl.spamhaus.org,
        reject_rhsbl_helo dbl.spamhaus.org,
        reject_rhsbl_sender dbl.spamhaus.org

e master.cf .

smtp      inet  n       -       -       -       -       smtpd
#smtp      inet  n       -       -       -       1       postscreen
#smtpd     pass  -       -       -       -       -       smtpd
#dnsblog   unix  -       -       -       -       0       dnsblog
#tlsproxy  unix  -       -       -       -       0       tlsproxy
submission inet n - - - - smtpd
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
  -o smtpd_sasl_security_options=noanonymous
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o smtpd_sender_restrictions=reject_sender_login_mismatch

Infelizmente, recebo este erro ao tentar enviar na porta 587 com meu cliente de e-mail de um endereço IP diferente.

NOQUEUE: reject: RCPT from unknown[XXX.XXX.XXX.XXX]: 553 5.7.1 <[email protected]>: Sender address rejected: not owned by user [email protected]; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[192.168.1.3]>
    
por Vortico 16.06.2014 / 09:33

1 resposta

2

A configuração por porta é feita em master.cf , não em main.cf . Os arquivos de configuração Postfix padrão já possuem boas configurações de exemplo, eles precisam apenas ser desfeitos. A porta 587 é rotulada como submission port (a porta 25 é, naturalmente, smtp ).

Suas configurações podem ser simplificadas. Em main.cf , especifique a política padrão (para a porta 25) apenas como recipient_restrictions , nada mais do que isso é necessário:

smtpd_recipient_restrictions =
    permit_mynetworks
    reject_unverified_recipient
    reject_rbl_client zen.spamhaus.org
    reject_rbl_......
    permit_auth_destination
    reject

Em master.cf , substitua-o removendo as restrições definidas anteriormente e permitindo a retransmissão irrestrita para usuários autenticados:

smtp      inet  n       -       n       -       -       smtpd
submission inet n       -       n       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_reject_unlisted_recipient=no
  -o smtpd_recipient_restrictions=
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
    
por 16.06.2014 / 10:08