Tengo muchos problemas para que el contenedor mail-receiver funcione de manera confiable. Estoy en el punto en que funciona según lo previsto para las respuestas enviadas desde mi cuenta personal de GMail, pero rechaza los correos electrónicos enviados desde la aplicación web de Office 365 de mi empleador. No puedo decir si es un problema de configuración de mi parte o algo extraño en la forma en que mi empleador enruta el correo electrónico.
Soy nuevo en la visualización de la salida de ./launcher logs mail-receiver, pero creo que este extracto demuestra la secuencia típica de eventos durante una entrega fallida:
Jan 27 17:19:13 myvps-mail-receiver postfix/spawn[363]: warning: command /usr/bin/policyd-spf exit status 120
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: warning: problem talking to server private/policyd-spf: Connection timed out
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: NOQUEUE: reject: RCPT from mail-server.employer.tld[XX.XXX.XX.XX]: 451 4.3.5 <4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld>: Recipient address rejected: Server configuration problem; from=<me@employer.tld> to=<4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld> proto=ESMTP helo=<mail-server.employer.tld>
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: using backwards-compatible default setting smtpd_relay_before_recipient_restrictions=no to reject recipient "4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld" from client "mail-server.employer.tld[XX.XXX.XX.XX]"
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: disconnect from mail-server.employer.tld[XX.XXX.XX.XX] ehlo=1 mail=1 rcpt=0/1 data=0/1 rset=1 quit=1 commands=4/6
<22>Jan 27 17:20:56 policyd-spf[367]: : prepend Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=XX.XXX.XX.XX; helo=mail-server.employer.tld; envelope-from=me@employer.tld; receiver=reply.my_domain.tld <22>Jan 27 17:20:56 policyd-spf[367]: Traceback (most recent call last):
Jan 27 17:20:56 myvps-mail-receiver postfix/spawn[366]: warning: command /usr/bin/policyd-spf exit status 120
Parece que el demonio de política spf no está funcionando según las líneas primera, segunda y final. No encuentro nada diagnóstico sobre por qué no funciona. Tampoco estoy seguro de si es necesario. Los correos electrónicos de GMail parecen pasar sin problemas.
Estoy autoalojando en un VPS con Cloudflare DNS y correo electrónico transaccional de Brevo.
También he notado bastantes rebotes impredecibles de fuentes de Microsoft 365 durante mucho tiempo, lo cual ha sido muy irritante ya que muchas empresas lo utilizan. Hasta ahora no he tenido suerte persiguiendo el extremo de origen para solucionar problemas.
Quizás haya un problema con el receptor de correo como usted sugiere; ¡me encantaría que se investigara!
No estoy seguro de si la culpa es de mi configuración, la de mi empleador o la aplicación receptora de correo . Definitivamente agradecería cualquier sugerencia sobre cómo obtener más información del contenedor.
¿Alguien puede decirme cómo acceder al registro del sistema sin procesar que sale del contenedor mail-receiver? Creo que se supone que hay un traceback después de esta línea:
Aquí está la respuesta al pegar la totalidad de esas líneas del registro en ask.Discourse.com…
Solución de problemas de Postfix y Policyd-SPFAI
denvergeeks:
¿qué indica este error?:
Jan 27 17:19:13 myvps-mail-receiver postfix/spawn[363]: warning: command /usr/bin/policyd-spf exit status 120
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: warning: problem talking to server private/policyd-spf: Connection timed out
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: NOQUEUE: reject: RCPT from mail-server.employer.tld[XX.XXX.XX.XX]: 451 4.3.5 <4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld>: Recipient address rejected: Server configuration problem; from=me@employer.tld to=<4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld> proto=ESMTP helo=<mail-server.employer.tld>
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: using backwards-compatible default setting smtpd_relay_before_recipient_restrictions=no to reject recipient “4eb16fb194e4f56c53b738dd8b3f3411@reply.my_domain.tld” from client “mail-server.employer.tld[XX.XXX.XX.XX]”
Jan 27 17:20:21 myvps-mail-receiver postfix/smtpd[356]: disconnect from mail-server.employer.tld[XX.XXX.XX.XX] ehlo=1 mail=1 rcpt=0/1 data=0/1 rset=1 quit=1 commands=4/6
Buscando: postfix policyd-spf exit status 120 server configuration problem connection timed out reason and solution
Parece que sus registros de errores indican problemas con postfix y policyd-spf. Específicamente:
Estado de salida 120 para policyd-spf:
Esto generalmente apunta a un problema en la configuración o permisos de policyd-spf. Policyd-SPF se utiliza para validar correos electrónicos entrantes basándose en el Sender Policy Framework (SPF). El estado de salida 120 a menudo significa un error de aplicación o la incapacidad de procesar los requisitos de validación SPF.
Tiempo de espera de conexión a private/policyd-spf:
Esto ocurre cuando postfix no puede comunicarse con el servicio policyd-spf, probablemente debido a:
Ruta o configuración incorrecta para el socket de comunicación.
El proceso spawn para policyd-spf no está configurado correctamente o falla al inicializarse.
Rechazo de RCPT con estado 451:
La dirección de correo electrónico del destinatario es rechazada debido a un “problema de configuración del servidor”. Esto sugiere que, debido a la falla en la validación SPF, postfix no puede aceptar al destinatario.
Pasos para resolver:
Verificar la configuración de policyd-spf:
Asegúrese de que las configuraciones relacionadas con SPF en /etc/postfix/main.cf (o equivalente) apunten al servicio de política correcto:
policy-spf unix - n n - - spawn
user=nobody argv=/usr/bin/policyd-spf
Si la ruta del comando argv (/usr/bin/policyd-spf) es incorrecta, ajústela.
Servicio y registros:
Reinicie el servicio policyd-spf:
systemctl restart policyd-spf
Revise los registros adicionales de policyd-spf para identificar problemas específicos:
journalctl -u policyd-spf
Configuración de Postfix:
Asegúrese de que postfix esté utilizando policyd-spf correctamente. En /etc/postfix/master.cf, valide:
smtp inet n - n - - smtpd
-o smtpd_recipient_restrictions=permit_mynetworks,reject_unauth_destination,check_policy_service=unix:private/policyd-spf
Verifique los permisos de archivo para /etc/postfix y las rutas de los sockets.
Probar SPF:
Intente validar manualmente un registro SPF utilizando herramientas externas o a través de la línea de comandos (comando dig):
dig +short txt yourdomain.com
Asegúrese de que sus registros SPF de correo electrónico sean correctos.
Comunicación de Sockets:
Verifique si el socket private/policyd-spf existe y es accesible:
ls /var/spool/postfix/private/policyd-spf
# Ajuste los permisos si el archivo existe:
chown postfix:postfix /var/spool/postfix/private/policyd-spf
chmod 770 /var/spool/postfix/private/policyd-spf
Vuelva a enlazar o recrear el archivo de socket Unix si falta.
Errores de configuración:
Revise los parámetros predeterminados en /etc/policyd-spf/policyd-spf.conf y confirme su corrección según su caso de uso.
Si continúa enfrentando problemas más allá de los cambios de configuración, comuníquese con su proveedor de alojamiento o con el soporte de Discourse para garantizar la salud del servidor y la configuración de conectividad correcta. También puede explorar más información en la documentación externa sobre problemas de SPF o en los foros de la comunidad de postfix/policyd.
Y aquí tienes un enlace a la respuesta de Perplexity.ai…
Intenté lo que pude basándome en estas respuestas, pero nada parece solucionar el problema. Creo que lo más útil sería que alguien me dijera cómo obtener el contenido de los rastreos de Python de policyd-spf en los archivos de registro. ¿Alguna sugerencia? ¿Es esto solo una pista falsa?