Postfix detrás de un relé para manejar el correo entrante y saliente con /etc/aliases

Postfix detrás de un relé para manejar el correo entrante y saliente con /etc/aliases

Estoy intentando realizar la instalación postfixen una máquina Linux (Debian 8 con Postfix 2.11). Pero tengo algunos problemas para /etc/aliasestrabajar correctamente.

La configuración es la siguiente: Un servidor MS Exchange es el servidor de correo real: recibe y envía correos electrónicos y está en la misma red local que la máquina Linux. Postfix en la máquina Linux utiliza esta máquina Exchange como host de retransmisión para enviar correos electrónicos. Esto funciona, por ejemplo llega.mail [email protected]

Ahora en Exchange existe una dirección de correo que se reenvía a la máquina Linux. Tengo /etc/aliasesun alias para esto que es una tubería a un programa, porque los correos electrónicos que van a esta dirección contienen algún código que el programa debe analizar.

Para que esto funcione, tengo que modificar la mydestinationconfiguración en main.cf. Pero tan pronto como lo hago, Postfix deja de retransmitir correos cuando /etc/aliasesse utiliza su alias. Sólo funciona escribir el nombre largo. Esta es mi configuración (empecé desde cero):

# main.cf
# our internet domain name (the thing after the "@")
mydomain = example.com

# this is the critical setting
mydestination = linuxmachine, 192.168.1.200, $mydomain

# IP of Exchange
relayhost = 192.168.1.100

# so that addresses look correct
masquerade_domains = $mydomain

# in order to make the pipe programm work with correct permission
default_privs = myuser

Con esta configuración la canalización del correo entrante funciona, pero el envío de correo a un alias no funciona:

# /etc/alias
# none of the entries are actual users on the linux machine!

#works when mail to [email protected] comes from external through Exchange to Linux
parser: |/home/user/programname 

# command "mail external" does not work! It sends to external@linuxmachine"
external: [email protected] 

Si comento la línea mydestination, main.cfenvío mail externalun correo a [email protected](que llega), pero el correo entrante [email protected]no se envía a través de la tubería. Entonces, justo al revés.

¿Qué tengo que ingresar main.cfpara /etc/aliasespoder enviar correos desde mi máquina Linux usando nombres cortos y al mismo tiempo poder recibir correo a una tubería? Todo lo que quiero es que se analice una dirección especial en la máquina Linux y que los usuarios de Linux puedan enviar correos electrónicos a direcciones seleccionadas usando nombres cortos como un "lujo" (en lugar de tener que escribir direcciones de correo electrónico completas).

Actualización: postconf -nsalida:

config_directory = /etc/postfix
default_privs = myuser
masquerade_domains = $mydomain
mydestination = linuxmachine, 192.168.1.200, $mydomain
mydomain = example.com
relayhost = 192.168.1.100

Actualización 2: Salida /var/log/mail.infoal hacer mail external(correo a alias) con mydestinationun conjunto como el anterior:

Jun 19 10:45:27 linuxmachine postfix/smtp[26425]: 6DFE02003AD: to=<[email protected]>, orig_to=<external>, relay=192.168.1.100[192.168.1.100]:25, delay=0.24, delays=0/0/0/0.24, dsn=2.6.0, status=sent (250 2.6.0 <[email protected]> [InternalId=162319] Queued mail for delivery)

Actualización 3, después de cambiar mydestinationde acuerdo con la respuesta propuesta, el mail.inforegistro muestra la siguiente línea al hacer mail external:

Jun 19 16:07:31 linuxmachine postfix/smtp[2299]: B562720039C: to=<[email protected]>, orig_to=<external>, relay=192.168.1.100[192.168.1.100]:25, delay=2.6, delays=0/0/0/2.5, dsn=2.6.0, status=sent (250 2.6.0 <[email protected]> [InternalId=162971] Queued mail for delivery)

Respuesta1

La solución obvia es poner $myhostnameo linuxmachine.example.com en el mydestinationparámetro.

explicación

Antes de la modificación de la configuración, aquí el evento en segundo plano después de enviar el correo electrónico a través demail external

Ahora, después de la modificación de la configuración, esto es lo que sucede

  • Postfix recibe correo electrónico a través del servicio de recogida.
  • Porque el destinatario no tiene partes de dominio y parámetros (por defecto)append_at_myorigintiene valor yes, entonces postfix reescribirá la dirección del destinatario en[correo electrónico protegido](puedes verlo en mail.log arriba)
  • Ahora mydestinationno contiene $myhostnameo linuxmachine.example.com, por lo que postfix no aplicará alias en/etc/aliases

información relacionada