// cómo solucionarlo
Postfix "553 5.7.1 Sender address rejected: not owned by user": cómo solucionarlo
¿Postfix rechaza tu dirección From con 553 5.7.1 not owned by user o not logged in? Corrige smtpd_sender_login_maps o envía con el usuario correcto.
Qué significa
Tu servidor Postfix comprueba que la persona que ha iniciado sesión tiene permiso para enviar con la dirección de remitente que usa. Cuando no lo tiene, rechaza el mensaje:
553 5.7.1 <info@yourdomain.com>: Sender address rejected: not owned by user john@yourdomain.com
Aparece un mensaje relacionado cuando alguien usa una de tus direcciones sin haber iniciado sesión:
553 5.7.1 <info@yourdomain.com>: Sender address rejected: not logged in
Es una protección, no un fallo: impide que un usuario (o una contraseña robada) envíe haciéndose pasar por otra persona. La solución es indicar a Postfix quién puede usar cada dirección, o enviar con la cuenta correcta.
Por qué ocurre
La comprobación viene de la restricción reject_sender_login_mismatch (o de sus variantes reject_authenticated_sender_login_mismatch y reject_known_sender_login_mismatch). Compara dos cosas:
- el remitente del sobre (la dirección
MAIL FROMque indica el programa de correo, no siempre la cabecera From visible), y - el nombre de usuario usado para la autenticación SMTP.
Postfix busca el remitente en la tabla definida por smtpd_sender_login_maps. Si el usuario no figura como propietario, rechaza el mensaje. Situaciones típicas:
- Un usuario envía desde una dirección compartida o un alias (
info@,sales@) que no está asociado a su usuario. - Una web, una impresora o un script inicia sesión con una cuenta pero envía con otra dirección.
- El usuario es
john, pero la tabla indicajohn@yourdomain.com(o al revés). - Se editó la tabla pero no se ejecutó
postmap, así que Postfix sigue leyendo la versión antigua. - Una aplicación define un remitente del sobre (dirección de rebote) distinto de la dirección From.
Cómo comprobarlo
- Lee el registro de correo para ver el remitente y el usuario exactos:
grep "not owned by user" /var/log/mail.log | tail
- Mira la configuración activa:
postconf smtpd_sender_login_maps smtpd_sender_restrictions postconf -M submission/inet
El segundo comando muestra las anulaciones-odel servicio submission (puerto 587) enmaster.cf, donde suele definirse esta restricción. - Consulta directamente la tabla:
postmap -q info@yourdomain.com hash:/etc/postfix/sender_login
Muestra los usuarios autorizados para esa dirección, o nada. - Reprodúcelo con swaks:
swaks --server mail.yourdomain.com:587 --tls \ --auth LOGIN --auth-user john@yourdomain.com \ --from info@yourdomain.com --to you@example.com
Cómo solucionarlo
Autoriza al usuario a usar la dirección
Edita la tabla de remitentes, un remitente por línea seguido de los usuarios autorizados separados por comas:
# /etc/postfix/sender_login john@yourdomain.com john@yourdomain.com info@yourdomain.com john@yourdomain.com, mary@yourdomain.com @yourdomain.com admin@yourdomain.com
La última línea permite a admin@yourdomain.com enviar con cualquier dirección del dominio; úsala con cuidado. Después reconstruye la tabla y recarga:
postmap /etc/postfix/sender_login systemctl reload postfix
Asegúrate de que main.cf apunta a ella:
smtpd_sender_login_maps = hash:/etc/postfix/sender_login
Si tus usuarios están en una base de datos (MySQL, PostgreSQL, LDAP), la tabla es una consulta; añade allí el permiso del alias. Los paneles de control y los paquetes de servidor de correo suelen ofrecerlo como permiso "send as" (enviar como) o de alias para cada buzón.
O inicia sesión con la cuenta correcta
Para una web o un dispositivo, la solución más sencilla suele ser iniciar sesión con la cuenta propietaria de la dirección, o crear un buzón para la dirección desde la que envía.
Corrige el remitente del sobre de las aplicaciones
Si el From visible es correcto pero el registro muestra otro remitente, la aplicación define un remitente del sobre distinto. Ponle una dirección que pertenezca al usuario (en PHPMailer, $mail->Sender; en nodemailer, la opción envelope). Consulta Return-Path, remitente del sobre y From.
No te limites a quitar la restricción
Quitar reject_sender_login_mismatch hace desaparecer el error, pero permite a cualquier usuario enviar como cualquier otro. Tampoco uses la dirección de los visitantes como remitente en los formularios de contacto (consulta emails de formulario de contacto enviados "From" el visitante). Si el error es "Relay access denied", consulta 554 5.7.1 Relay access denied.
Comprueba que está solucionado
Ejecuta el mismo comando swaks: debe terminar con 250 2.0.0 Ok: queued. Después envía desde la aplicación o el cliente de correo real a la dirección única de la página de inicio de Delivmail y comprueba en el informe que SPF, DKIM y DMARC pasan para la dirección de remitente. Por último, reenvía el mensaje que se rechazó.
Comprueba que está solucionado
Un cambio de DNS puede tardar de unos minutos a unas horas. Después, envía un nuevo email de prueba o vuelve a escanear tu dominio.
Guías relacionadas
- Rebote de Gmail «550 5.7.26»: email no autenticadoGmail rechazó tu email porque no pudo confirmar que viene de tu dominio. SPF, DKIM o DMARC falta o falla. Así puedes solucionarlo.
- Rebote «550 5.7.1»: mensaje rechazado o bloqueado por políticaUn rebote 5.7.1 significa que el servidor receptor rechazó tu email a propósito. Aprende a leer los mensajes de rebote, a encontrar el motivo real y a solucionarlo.
- Tasa de rebote alta: limpia tu lista de correoEnviar a direcciones que ya no existen daña tu reputación muy rápido. Aprende la diferencia entre rebotes duros y blandos, y elimina las direcciones malas después de cada envío.
- Emails con retraso: greylisting y errores temporales 4xxAlgunos servidores responden «inténtalo más tarde» a propósito. Un servidor de correo normal lo reintenta y el email llega unos minutos tarde. Así distingues un retraso normal de un problema real.
- Tener tu propio servidor de correo: la checklist de entregabilidadUn servidor Postfix autoalojado puede entregar bien, pero solo si todo lo básico está bien: DNS inverso, SPF, DKIM, DMARC, TLS y nada de open relay.