Esta mañana, para corregir un problema con una falta de coincidencia de nombre en el certificado de seguridad, seguí los pasos recomendados de ¿Cómo arreglar el servidor de correo SSL? , pero ahora, cuando intento enviar un correo electrónico desde un cliente (en este caso, el cliente es Windows Mail), recibo el siguiente error.
La dirección de correo electrónico rechazada era '[email protected]'. Asunto 'Esta es una prueba. ', Cuenta:' mail.domain.com ', Servidor:' mail.domain.com ', Protocolo: SMTP, Respuesta del servidor:' 554 5.7.1: Acceso de retransmisión denegado ', Puerto: 25, Seguro (SSL): No , Error del servidor: 554, Número de error: 0x800CCC79
Editar : todavía puedo recuperar correos electrónicos de esta cuenta, y envío correos electrónicos a otras cuentas en el mismo dominio. Simplemente no puedo enviar correos electrónicos a destinatarios fuera de nuestro dominio.
Traté de deshabilitar TLS por completo pero sin dados, todavía recibo el mismo error.
Cuando reviso el archivo mail.log
, veo lo siguiente.
Jul 18 08:24:41 company imapd: LOGIN, [email protected], ip=[::ffff:111.111.11.11], protocol=IMAP
Jul 18 08:24:42 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=0, body=0, rcvd=83, sent=409, time=1
Jul 18 08:25:19 company postfix/smtpd[29282]: connect from company.university.edu[111.111.11.11]
Jul 18 08:25:19 company postfix/smtpd[29282]: NOQUEUE: reject: RCPT from company.university.edu[111.111.11.11]: 554 5.7.1 <[email protected]>: Relay access denied; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<UserPC>
Jul 18 08:25:19 company postfix/smtpd[29282]: disconnect from company.university.edu[111.111.11.11]
Jul 18 08:25:22 company imapd: DISCONNECTED, [email protected], ip=[::ffff:111.111.11.11], headers=13, body=142579, rcvd=3289, sent=215892, time=79
El archivo se main.cf
ve así:
#
# Postfix MTA Manager Main Configuration File;
#
# Please do NOT edit this file manually;
#
#
# Postfix directory settings; These are critical for normal Postfix MTA functionallity;
#
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
#
# Some common configuration parameters;
#
inet_interfaces = all
mynetworks = 127.0.0.0/8
mynetworks_style = host
myhostname = mail.domain.com
mydomain = domain.com
myorigin = $mydomain
smtpd_banner = $myhostname ESMTP 2.4.7.1 (Debian/GNU)
setgid_group = postdrop
#
# Receiving messages parameters;
#
mydestination = localhost, company
append_dot_mydomain = no
append_at_myorigin = yes
transport_maps = mysql:/etc/postfix/transport.cf
#
# Delivering local messages parameters;
#
mail_spool_directory = /var/spool/mail
mailbox_size_limit = 0
mailbox_command = procmail -a "$EXTENSION"
biff = no
alias_database = hash:/etc/aliases
local_recipient_maps =
#
# Delivering virtual messages parameters;
#
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virt.cf
virtual_uid_maps=mysql:/etc/postfix/uids.cf
virtual_gid_maps=mysql:/etc/postfix/gids.cf
virtual_mailbox_base=/usr/local/virtual
virtual_maps=mysql:/etc/postfix/virtual.cf
virtual_mailbox_domains=mysql:/etc/postfix/virtual_domains.cf
#
# SASL paramters;
#
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtp_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtp_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtp_tls_key_file = /etc/postfix/ssl/smptd.key
smtpd_tls_CAfile = /etc/postfix/ssl/smptd.pem
smtpd_tls_cert_file = /etc/postfix/ssl/smptd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smptd.key
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes
smtpd_sender_restrictions =
permit_sasl_authenticated
permit_mynetworks
smtpd_recipient_restrictions =
permit_sasl_authenticated
check_recipient_access hash:/etc/postfix/filtered_domains
permit_mynetworks
reject_unauth_destination
Como nota al margen, mi empleador quiere poder enviar correos electrónicos de clientes (Thunderbird y Outlook) tanto desde nuestra red local como fuera de ella.
Respuestas:
TLS solo habilita el cifrado en la sesión smtp y no afecta directamente si Postfix podrá o no retransmitir un mensaje.
El mensaje denegado de retransmisión se produce porque las reglas smtpd_recipient_restrictions no coinciden. Se debe cumplir una de esas condiciones para permitir que el mensaje pase:
Para explicar esas reglas:
permite remitentes autenticados a través de SASL. Esto será necesario para autenticar usuarios fuera de su red que normalmente están bloqueados.
Esto hará que postfix busque en / etc / postfix / filter_domains las reglas basadas en la dirección del destinatario. (A juzgar por el nombre del archivo, probablemente solo esté bloqueando dominios específicos ... ¿Verifica si gmail.com aparece allí?)
Esto permitirá que los hosts por dirección IP coincidan con los rangos de IP especificados en $ mynetworks. En el archivo main.cf que publicó, $ mynetworks se configuró en 127.0.0.1, por lo que solo retransmitirá los correos electrónicos generados por el propio servidor.
Según esa configuración, su cliente de correo necesitará usar la autenticación SMTP antes de poder retransmitir mensajes. No estoy seguro de qué base de datos está utilizando SASL. Eso se especifica en /usr/lib/sasl2/smtpd.conf Presumiblemente, también usa la misma base de datos que sus buzones virtuales, por lo que debería poder habilitar la autenticación SMTP en su cliente de correo y estar listo.
fuente
Ha deshabilitado TLS, por lo que ahora necesita autorizar su red local agregándola
mynetworks
. Por ejemplo,Esto solucionará el envío solo desde su red local. Para enviar correos electrónicos desde fuera de su red local, necesitará que funcione la autenticación TLS.
fuente
Creo que extrañas tu domain.com en mydestination, porque es el predeterminado
relay_domains=$mydestination
, por lo que puedes agregar tu configuración a la línea:o:
No olvide reiniciar el servidor postfix (
service postfix restart
) cada vez que edite el archivo conf de postfix.fuente
Tuve el mismo problema en Outlook (con el palomar y el backend postfix) y pasé dos días buscando soluciones y modificando mis archivos de configuración. Todo lo que tenía que hacer era marcar "El servidor requiere autenticación" en la pestaña Saliente en la configuración de correo en Outlook y mis mensajes ahora se envían a gmail. Consulte las instrucciones detalladas sobre cómo encontrar la configuración aquí http://support.bluetie.com/node/440 .
fuente
Este problema me estaba molestando por un tiempo. Estaba tratando de conectarme desde server1.domain.com a server2.domain.com.
Así es como solucioné esto:
También debe asegurarse de haber configurado / etc / hosts y / etc / hostname correctamente y asegurarse de ejecutar lo siguiente después de los cambios de red:
y lo siguiente después de los cambios de configuración de postfix
fuente
Para mí: tuve que agregar
localhost
amynetworks
pesar del hecho de que127.0.0.0/8
ya estaba allí. Entonces, ahora se ve:mynetworks = 1.1.1.1/32, 127.0.0.0/8, localhost
fuente