Acceso a Postfix Relay denegado después de actualizar de 2.11 a 3.4

Acceso a Postfix Relay denegado después de actualizar de 2.11 a 3.4

La versión 2.11.3 de Postfix ha funcionado perfectamente durante los últimos años. Después de actualizarlo a la versión 3.4.14, el servidor ya no puede enviar correos electrónicos externos.

En el mail.errarchivo, encontré la siguiente línea:

postfix/smtpd[1043]: fatal: in parameter smtpd_relay_restrictions or smtpd_recipient_restrictions, specify at least one working instance of: reject_unauth_destination, defer_unauth_destination, reject, defer, defer_if_permit or check_relay_domains

Después de eso, configuré ambos parámetros en master.cfel

  -o smtpd_recipient_restrictions=reject_unauth_destination
  -o smtpd_relay_restrictions=reject_unauth_destination

En la versión 2.11 de Postfix, ambos parámetros estaban comentados.

Después de esa configuración, el mensaje mail.errdesapareció pero encontré otro error en mail.logel archivo.

Jun  3 08:01:22 smtp-out postfix/smtpd[19915]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<[127.0.0.1]>

Dado que estoy usando, ¿ sender_dependent_relayhost_maps = hash:/etc/postfix/transport_sendercuál sería la configuración correcta de esos dos parámetros (en caso de que ese sea el problema)?

Aquí está mi main.cfarchivo:

inet_protocols = ipv4
smtpd_banner = Company ESMTP NO UCE/UBE
biff = no
append_dot_mydomain = no
myhostname = smtp-out.company.com
mydomain = company.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = smtp-out.local, localhost.dmz.local.dmz.local, localhost, $mydomain, localhost.$mydomain

relayhost = [mail.external-relayserver.com]

relay_domains =
mynetworks = 192.168.10.0/24, 192.168.15.0/24, 127.0.0.0/8, [::1]/128
header_checks = regexp:/etc/postfix/regexp/header_checks
message_size_limit = 47185920
recipient_delimiter = +

transport_maps = hash:/etc/postfix/transport

undisclosed_recipients_header=
local_recipient_maps =
smtp_tls_security_level=may
smtp_tls_loglevel=1

# relay transport
sender_dependent_relayhost_maps = hash:/etc/postfix/transport_sender
smtp_sender_dependent_authentication = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous

default_destination_concurrency_limit = 2
default_destination_rate_delay = 1s

master.cfarchivo:

smtp      inet  n       -       -       -       -       smtpd
  -o smtpd_recipient_restrictions=reject_unauth_destination
  -o smtpd_relay_restrictions=reject_unauth_destination

pickup    unix  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
tlsmgr    unix  -       -       -       1000?   1       tlsmgr
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
trace     unix  -       -       -       -       0       bounce
verify    unix  -       -       -       -       1       verify
flush     unix  n       -       -       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       -       -       -       smtp
relay     unix  -       -       -       -       -       smtp
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
retry     unix  -       -       -       -       -       error
discard   unix  -       -       -       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       -       -       -       lmtp
anvil     unix  -       -       -       -       1       anvil
scache    unix  -       -       -       -       1       scache

maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}

uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)

ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix  -   n   n   -   2   pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}

Respuesta1

Debe especificar quién puede transmitir a través de su servidor Postfix.antesel reject_unauth_destination.

por ejemplo, para permitir que sus propias redes se transmitan a través de su servidor:

smtpd_relay_restrictions = permit_mynetworks, reject_unauth_destination

o si estás usando sasl_authentication:

smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,
                           reject_unauth_destination

Recuerde que estas reglas se especifican en el orden indicado... por lo que lo anterior permite a los clientes en sus redes transmitir correo sin tener que autenticarse. Los clientes externos a su red deben autenticarse. Los intentos de retransmisión de todos los demás se rechazan.


Por cierto, para una configuración postfix simple como la suya, es mejor poner estas opciones en el main.cfarchivo, no en el archivo master.cf.

información relacionada