Guia rápida de Postfix
Paco Brufal <2:346/7.68>
[email protected]
Versión: 0.3, Octubre 2002
Esta guia rápida explica cómo instalar y configurar el servidor de correo Postfix. Se basa en la distribución
Debian Sid. Cualquier comentario será bienvenido. Esta guia se distribuye SIN NINGUNA GARANTIA. No me
responsabilizo de los posibles problemas que conlleve el ejecutar todos los pasos que se describen. Esta guia se
distribuye bajo licencia GPL ( http://www.gnu.org/ ). La última versión de esta guia siempre estará disponible
en http://pbrufal.kleenux.org/
Contents
1 Introducción
2 Paquetes Debian
3 Instalación
4 Comandos básicos de Postfix
5 Modos de ejecución del servidor
5.1
5.2
internet site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
internet site with smarthost
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 Seguridad
6.1 Listas RBL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Control de envíos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.1 Por host o redes
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.2
relay-host
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2.3 ACL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 Configuraciones avanzadas
7.1 Servidores Virtuales
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.2 Medios de transporte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3 Antivirus
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.3.1 Mediante expresiones regulares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8 Configuración completa
2
2
2
3
3
3
3
4
4
4
4
5
5
6
6
6
7
7
8
1.
Introducción
1 Introducción
2
Postfix es un servidor de correo (MTA) muy potente, programado por Wietse Venema , y cuya página web
es http://www.postfix.org/ . En este documento voy a explicar cómo instalar el MTA Postfix en una Debian
Sid (inestable), pero es totalmente válido para otras versiones de Debian, incluso para otras distribuciones
de Linux.
Cada vez que quieras comprobar que tu servidor está funcionando de manera correcta, tanto para enviar
como para recibir, puedes enviar un mensaje de correo a la siguiente dirección:
[email protected] . Cualquier
mensaje que envíes a esta dirección te será devuelto.
2 Paquetes Debian
Los paquetes de Postfix para Debian que existen en este momento son (apt-cache search postfix)
postfix - A high-performance mail transport agent
postfix-dev - Postfix loadable modules development environment
postfix-doc - Postfix documentation
postfix-ldap - LDAP map support for Postfix
postfix-mysql - MYSQL map support for Postfix
postfix-pcre - PCRE map support for Postfix
postfix-snap - Postfix Mail Transport Agent - snapshot release
postfix-snap-dev - Postfix-snap loadable modules development environment
postfix-snap-doc - Postfix-snap documentation
postfix-snap-ldap - LDAP map support for Postfix-snap
postfix-snap-mysql - MYSQL map support for Postfix-snap
postfix-snap-pcre - PCRE map support for Postfix-snap
postfix-snap-tls - TLS and SASL support for Postfix snapshots
postfix-tls - TLS and SASL support for Postfix
Voy a dar una explicación rápida de qué es cada paquete. Los paquetes necesarios están marcados con un
asterisco (*).
• postfix. Este es el paquete principal de Postfix. (*)
• postfix-dev. Entorno de desarrollo.
• postfix-doc. Documentación. (*)
• postfix-ldap. Soporte LDAP.
• postfix-mysql. Soporte MySQL.
• postfix-pcre. Soporte de expresiones regulares. (*)
• postfix-snap-*. Versiones snapshot. Pueden ser inestables.
• postfix-tls. Soporte TLS y SASL (SMTP autentificado).
3 Instalación
La instalación de los paquetes Debian se puede realizar de manera sencilla con el comando
4. Comandos básicos de Postfix
3
apt-get install postfix postfix-doc postfix-pcre
Si existen dependencias con otros paquetes, apt-get también las instalará. Después de bajarse los paquetes
de Internet, y antes de instalarlos, posiblemente se nos preguntarán una serie de cosas (relativas a la config-
uración). Respoderemos a esas preguntas, ya que son muy sencillas y nos permitiran crear una configuración
base. Luego podemos depurar más la configuración siguiendo esta guia.
El directorio donde se encuentran los ficheros de configuración de Postfix es /etc/postfix/, y el fichero
principal de configuración se llama main.cf.
4 Comandos básicos de Postfix
Existen varios comandos que nos pueden ser útiles mientras usemos Postfix. Una breve lista sería
• postfix stop. Este comando para el servidor.
• postfix start. Este comando arranca el servidor.
• postfix reload. Este comando hace que el servidor relea la configuración sin parar el servicio.
• mailq. Para ver la cola de mensajes.
• sendmail -q. Fuerza el envío de mensajes de la cola de espera.
• postmap. Este comando sirve para construir los ficheros auxiliares de Postfix.
• postconf . Muestra toda la configuración de Postfix.
• newaliases. Este comando reconstruye la base de datos de alias.
5 Modos de ejecución del servidor
Existen 2 modos de ejecución, por así decirlo. El modo internet site y el modo internet site with smarthost
5.1 internet site
El modo internet site se caracteriza porque el propio servidor se encarga de repartir los mensajes a sus
destinatarios directamente, sin pasar por otro servidor predefinido. Para usar este modo, en el fichero de
configuración /etc/postfix/main.cf NO debe estar definida la opción relayhost
relayhost =
Esta configuración es util para ordenadores individuales que no están en una red local o tienen conexión
permanente a Internet (como ADSL, cable, ...).
5.2 internet site with smarthost
El modo internet site with smarthost se caracteriza porque el servidor no envía los mensajes directamente
a sus destinatarios, sino que los envia a otro servidor de correo, y aquel ya se encargará de enviarlo. Para
usar este modo, hay que definir la opción relayhost y ponerle como argumento la dirección IP o el nombre
de host del servidor SMTP que queramos
6. Seguridad
4
relayhost = smtp.mi-red-local.com
Esta configuración se suele dar en redes locales que ya tienen un servidor SMTP o en conexiones esporádicas
a Internet con módem, por ejemplo (el servidor definido sería el de tu proveedor).
6 Seguridad
Por seguridad me refiero a configurar el servidor para que solo lo usen las personas que nosotros queremos,
y no abusen de él para enviar spam.
6.1 Listas RBL
Las listas RBL (Realtime Blackhole Lists) son unas listas de dominios que envian spam. Configurando Postfix
para que use estas listas significa que cada vez que llegue un correo a nuestro servidor, Postfix comprobará
que el dominio del correo que llega no se encuentra en esas listas. Una configuración típica en el main.cf
sería
maps_rbl_domains =
blackholes.mail-abuse.org
dialups.mail-abuse.org
relays.mail-abuse.org
smtpd_client_restrictions =
permit_mynetworks
reject_maps_rbl
check_relay_domains
NOTA. El uso de listas RBL está mal visto, puesto que dichas listas no garantizan que el remitente sea un
spammer. Se desaconseja su uso.
6.2 Control de envíos
El control de envios significa que se pueden definir qué direcciones de correo pueden enviar correo a través
de nuestro servidor, y qué direcciones de correo no pueden enviar correo a nuestro servidor.
6.2.1 Por host o redes
Mediante la directiva mynetworks definimos qué redes o hosts pueden enviar correo a través de nuestro
Postfix. Un ejemplo sería
mynetworks = 127.0.0.0/8, 192.168.2.0/24, 172.16.3.4/32
Con esta configuración estamos definiendo:
• La red 127.0.0.0 puede enviar. Esta red siempre será nuestra propia máquina (localhost).
• Los 254 hosts de la red 192.168.2.0 pueden usar nuestro servidor.
• Solo el host 172.16.3.4 puede usar nuestro servidor, y ninguno más de la red 172.16.3.0. Por ejemplo,
el 172.16.3.14 no podría.
6. Seguridad
6.2.2 relay-host
5
Mediante el sistema relay-host definimos que direcciones de correo pueden enviar a través de nuestro servidor.
Esto es util si las personas que queremos que envien correo tienen una dirección e-mail estable, pero una IP
que cambia muy a menudo. Una configuración típica sería esta
smtpd_recipient_restrictions =
permit_mynetworks,
check_sender_access hash:/etc/postfix/usuarios
reject_unauth_pipelining,
reject_non_fqdn_recipient,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_unknown_sender_domain,
check_relay_domains
la
directiva
En
/etc/postfix/usuarios. Este fichero contiene algo parecido a esto:
check sender access
vemos
que
hace
referencia
a
un
fichero
llamado
[email protected]
[email protected]
[email protected]
OK
OK
OK
Esta lista de e-mails significa que dichas direcciones pueden enviar a través de nuestro servidor, independi-
entemente de la IP que tengan. Cada vez que se modifique este fichero se debe ejecutar el comando
cd /etc/postfix && postmap usuarios && postfix reload
6.2.3 ACL
Las ACL, o listas de control de acceso, son las direcciones de e-mail que NO pueden enviar correo a nuestro
servidor. Si llega un mensaje con alguna de esas direcciones, el servidor lo rechazará. La configuración de
las ACL sería
smtpd_sender_restrictions =
hash:/etc/postfix/access
reject_unknown_sender_domain
permit_mynetworks
Y el fichero /etc/postfix/access contendría
[email protected]
METHOSYSTEM.IT
techemail.com
trafficmagnet.net
email.com
seekercenter.net
icai.ie
REJECT
REJECT
REJECT
REJECT
REJECT
REJECT
REJECT
Como vemos se pueden denegar direcciones e-mail concretas (
[email protected]), o dominios enteros
(techemail.com). Cada vez que se modifique este fichero debemos ejecutar
cd /etc/pos
Comentarios de: guia rápida postfix (0)
No hay comentarios