15 votos

Obtener postfix para adelante root de correo

Tengo un Ubuntu server que se ejecuta en postfix. No es el servidor de correo de mi dominio.

Cada vez que un cron que se ejecuta el trabajo para el usuario root, la salida de correo no entregado localmente, en lugar de enviarla a root@mydomain.com a través de la principal servidor de correo. Esto no es lo que quiero.

Quiero el correo de root para ser entregado localmente o reenviados a anothermail@anotherdomain.com.

He tratado de modificar tanto ~root/.forward y /etc/aliases (y se ejecuta newaliases), pero nada ayuda (supongo que estos archivos sólo se verifica cuando postfix intenta entregar el correo de forma local).

¿Qué puedo hacer?

Este es /etc/postfix/main.cf:

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname = linux1.mydomain.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = linux1.mydomain.com, localhost.linux1.mydomain.com, localhost
relayhost = my.isps.relayhost.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only

Editar:

Al enviar correo a la root, esto va en /var/log/mail.log:

Mar  7 09:39:17 linux1 postfix/pickup[31381]: F3B9C98025E: uid=1000 from=<ct>
Mar  7 09:39:18 linux1 postfix/cleanup[31556]: F3B9C98025E: message-id=<20130307083917.F3B9C98025E@linux1.mydomain.com>
Mar  7 09:39:18 linux1 postfix/qmgr[28525]: F3B9C98025E: from=<ct@mydomain.com>, size=283, nrcpt=1 (queue active)
Mar  7 09:39:18 linux1 postfix/smtp[31558]: F3B9C98025E: to=<root@mydomain.com>, orig_to=<root>, relay=my.isps.relayhost.com[<IP address omitted>]:25, delay=0.72, delays=0.19/0.02/0.27/0.25, dsn=2.0.0, status=sent (250 Ok: queued as A97F5D8126)
Mar  7 09:39:18 linux1 postfix/qmgr[28525]: F3B9C98025E: removed

El nombre "ct" es mi nombre de usuario. Me genera el texto anterior a través de este comando:

echo test | mail -s test root

El contenido de /etc/mailname está:

mydomain.com

El contenido de /etc/aliases está:

root: anothermail@anotherdomain.com
postmaster:    root

donde anothermail@anotherdomain.com es donde me gustaría root de correo sea enviado.

El contenido de /etc/hosts realmente me sorprende un poco:

127.0.0.1 localhost
127.0.1.1 linux1.mylinux.mydomain.com linux1

donde "mylinux" es el nombre de un sistema operativo anfitrión en virtud de la cual linux1 se ejecuta en una máquina virtual. No estoy seguro de cómo "mylinux" metimos. (Pero esto realmente podría ser la razón de mi problema?)

15voto

Hallgrim Puntos 7198

Como dolores, compruebe los registros.

En su caso, el postfix demonio creo que el correo no es para ella y enviarla sin usar /etc/aliases

Primero revisa tu /etc/hosts archivo : debe tener el nombre de su equipo correspondiente a 127.0.1.1 : 127.0.1.1 linux1.mydomain.com linux1

Revise su /etc/mailname demasiado, y que debe ser constante.

Revise su /etc/aliases a ver si la root usuario es enviado a otra gente, y hacer de la newaliases comando.

Y se debe trabajar !

8voto

Sylvain Puntos 740

Si mydestination está vacío o no contener $myhostname entonces el /etc/aliases será ignorado porque postfix piensa que el correo electrónico no es un local de entrega y, por tanto, no se aplican los alias locales. Así, deje mydestination en el valor predeterminado (postconf -d mydestination o retirar main.cf) y los registros deben mostrar el to=<...> como su alias de direcciones.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: