2.9. Configuración preliminar para Postfix

En la Sección 2.8, “Modificación de la configuración de Postfix” se mostraron las opciones necesarias para utilizar el servidor de correo Postfix con LDAP y alias de correo, entre otros. A continuación se verá un archivo de configuración completo, integrando todas las opciones vistas en la Sección 2.8, “Modificación de la configuración de Postfix”:

# see /usr/share/postfix/main.cf.dist for a commented, fuller
# version of this file.

# Do not change these directory settings - they are critical to Postfix
# operation.
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
program_directory = /usr/lib/postfix
setgid_group = postdrop

# appending .domain is the MUA's job.
append_dot_mydomain = no

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no

# Uncomment the next line to generate delayed mail warnings
#delay_warning_time = 4h

myhostname = todoscsi.gsr.pt
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mynetworks = 127.0.0.0/8

#Alias virtuales
virtual_maps = ldap:valiases
valiases_server_host = gsr.pt
valiases_search_base = ou=alias,ou=postfix,dc=gsr,dc=pt
valiases_query_filter = (&(mail=%s)(objectClass=CourierMailAlias))
valiases_result_attribute = maildrop
valiases_bind = no

# Todos los dominios y los usuarios entragados por el agente de entrega local
# local_recipient_maps es usado por el servidor SMTP para rechazar el correo
# de los usuarios no conocidos
local_transport = local
mydestination = $myhostname $localhost.$mydomain localhost.gsr.pt
local_recipient_maps = unix:passwd.byname $alias_maps

mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +

Una vez modificado el archivo de configuración de Postfix, este ha de releer su configuración, para ello teclee:

Ejemplo 2.13. Releyendo la configuración de Postfix

# /etc/init.d/postfix reload
Reloading Postfix configuration...done.

Ahora se puede probar el envío de un correo para la cuenta <[email protected]>:

Ejemplo 2.14. Envío de un correo a <[email protected]>

$ /usr/bin/mail [email protected]
Subject: Prueba
Cuerpo del mensaje
.
Cc: [enter]

Si tras ejecutar el Ejemplo 2.14, “Envío de un correo a <[email protected]>” se mira en el archivo de log /var/log/mail.log se verá una entrada parecida a:

Ejemplo 2.15. Entrada en el log indicando el envío de un correo

Jun  4 11:29:06 todoscsi postfix/pickup[4799]: 89FC13A: uid=1000 from=<sergio>
Jun  4 11:29:06 todoscsi postfix/cleanup[4807]: 89FC13A: \
                                  message-id=<[email protected]>
Jun  4 11:29:06 todoscsi postfix/qmgr[4800]: 89FC13A: from=<[email protected]>, \
                                                      size=328, nrcpt=1 (queue active)
Jun  4 11:29:06 todoscsi postfix/local[4809]: 89FC13A: to=<[email protected]>, \
                     orig_to=<[email protected]>, relay=local, delay=0, status=sent \
                     (delivered to command: procmail -a "$EXTENSION")
Jun  4 11:29:06 todoscsi postfix/qmgr[4800]: 89FC13A: removed
Jun  4 11:29:40 todoscsi postfix/smtpd[4738]: disconnect from gsr.pt[x.x.x.x]

Como se puede comprobar, el correo ha sido enviado a la dirección [email protected], ya que [email protected] es un alias para esa cuenta.

Con esto quedaría finalizada la parte de la configuración de Postfix con soporte de LDAP.