Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
Postfix De Comunidad Molinux
Tabla de contenidos contenidos 1 Instalación 2 Configuración 2.1 Parámetro Myorigin 2.2 Parámetro mydestination 2.3 Parámetro mynetworks 2.4 Parámetro relay_domains 2.5 Parámetro relay_host 2.6 Cómo ponerse en contacto con el administrador de correo 2.7 Configuración de Proxy/NAT 2.8 Ficheros log 2.9 Parámetro myhostname 2.10 Párametro mydomain 2.11 Parámetro inet_interfaces 3 Ejem Ej emplos plos de configuración típicos 3.1 Postfix Postfix en un host de Internet independiente 3.2 Postfix Postfix en un cliente null 3.3 Postfix en red local 3.4 Postfix detrás de un cortafuegos 4 Referencias
Instalación Para realizar la instalación de Postfix diríjase a Instalacion_Molinux-Pyme
Configuración De forma predeterminada, los archivos de configuración de Postfix están en /etc/postfix. Los dos archivos más importantes son main.cf y master.cf. Estos archivos deben ser propiedad de root.
1 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
En /etc/postfix/main.cf tendrá que configurar un número mínimo de parámetros. Los parámetros de configuración de Postfix se asemejan a las variables de la Shell. Especifique un parámetro de configuración como se muestra en los ejemplos: Parametro=valor Otro_parametro=$parametro
Postfix utiliza los archivos de base de datos para control de acceso, la reescritura de direcciones y otras acciones. acciones. El archivo DATABASE_README DA TABASE_README proporciona una introducción a cómo Postfix trabaja con Berkeley DB, LDAP o SQL y otros tipos. Aquí está un ejemplo de cómo Postfix invoca una base de datos: virtual_alias_maps = hash:/etc/postfix/virtual
Siempre que realice un cambio en el archivo main.cf o master.cf, ejecute el siguiente comando como root con el fin de actualizar el sistema de correo: # postfix reload
Parámetro Myorigin El parámetro myorigin especifica el dominio que aparece en el correo que se registra en este equipo. El valor predeterminado es el nombre de la máquina local, $myhostname, que utiliza de forma predeterminada el nombre de la máquina. A menos que se está ejecutando un sitio realmente pequeño, probablemente desee cambiar el valor de $mydomain. Por ejemplo: /etc/postfix/main.cf: myorigin = $myhostname (por defecto: envía emails como "user@$myhostname") myorigin = $mydomain (mandará emails como: "user@$mydomain")
Parámetro mydestination El parámetro mydestination especifica el dominio de la máquina en la que lo entregará localmente. Por defecto, se recibirá el email en la máquina servidor.
2 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
Puede especificar cero o más dominios, con el patrón “/archivo/nombre” y/o “tipo:tabla” (como hash:, btree:, mysql:) separado por espacios en blanco y/o comas. Ejemplo 1: /etc/postfix/main.cf: mydestination = $myhostname localhost.$mydomain localhost
Ejemplo 2: /etc/postfix/main.cf: mydestination = $myhostname localhost.$mydomain localhost $mydomain
Ejemplo 3: /etc/postfix/main.cf: mydestination = $myhostname localhost.$mydomain localhost www.$mydomain ftp.$mydomain
Parámetro mynetworks De forma predeterminada, Postfix reenvía el correo de los clientes en bloques de red autorizados a cualquier destino. Las redes autorizadas se definen con el parámetro mynetworks. El valor predeterminado es autorizar todos los clientes de las subredes IP que está vinculado el equipo local. Ejemplos: /etc/postfix/main.cf: mynetworks_style = host (autoriza únicamente a la máquina local) mynetworks = 127.0.0.0/8 (autoriza únicamente a la máquina local) mynetworks = 127.0.0.0/8 168.100.189.2/32 (autoriza a la máquina local) mynetworks = 168.100.189.0/28, 127.0.0.0/8
Parámetro relay_domains De forma predeterminada, Postfix reenviará correo de extraños sólo a los destinos remotos autorizados. Los destinos remotos autorizados se definen con el parámetro de configuración de relay_domains. El valor predeterminado es autorizar todos los dominios y subdominios de los dominios que aparecen con el
3 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
parámetro mydestination. Ejemplos: /etc/postfix/main.cf: relay_domains = $mydestination (por defecto) relay_domains = (seguro: nunca reenvíe correos de extraños)
Parámetro relay_host De forma predeterminada, Postfix intenta entregar correo directamente a Internet. Dependiendo de las condiciones locales, esto no puede ser posible o deseable. Por ejemplo, el sistema puede desactivarse fuera de horas de oficina, puede estar detrás de un firewall o puede estar conectado a través de un proveedor que no permite correo directo a Internet. En aquellos casos en que se necesita configurar Postfix para entregar correo indirectamente es necesario configurar un relay_host. relay_host. Ejemplos: /etc/postfix/main.cf: relayhost = relayhost = $mydomain relayhost = [mail.$mydomain] relayhost = [mail.isp.tld]
(por defecto, directamente a internet) (entregar a través de un mailhub local) (entregar a través de un mailhub local) (entregar a través de un mailhub de un proveedor)
Cómo ponerse en cont c ontacto acto con el administrador administrador de cor c orreo reo Debe configurar un alias de administrador de correo en la tabla de aliases(5). Cuando actualice la tabla de aliases(5), asegúrese de dirigir el correo para el superusuario a una persona también. /etc/aliases: postmaster: you root: you
Ejecute el comando "newaliases" después de cambiar el archivo de alias. El sistema de Postfix informa de problemas con el alias de administrador de correo. Es posible que no esté interesado en todos los tipos de informes de problemas, por lo que este mecanismo de presentación de informes es configurable. El valor predeterminado es informar sólo de problemas serios de
4 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
recursos (software) al administrador de correo. Valores por defecto: /etc/postfix/main.cf: notify_classes = resource, software
Configuración Configuración de Proxy/NAT Si ejecuta un servidor Postfix detrás de un proxy o NAT, necesita configurar el parámetro proxy_interfaces y especificar a todos los proxy externos o direcciones NAT que Postfix recibe correo. Puede especificar los nombres de host simbólico en lugar de d e direcciones de red. Ejemplo: host detrás de una NAT. /etc/postfix/main.cf: proxy_interfaces = 1.2.3.4 (la dirección externa del proxy/NAT)
Ficheros log Postfix tiene procesos demonio que registran los problemas. El proceso syslogd ordena los eventos por clase y gravedad y los anexa a ficheros de log. El registro de clases, niveles y nombres de archivo de registro se especifican normalmente en/etc/syslog.conf. /etc/syslog.conf: mail.err mail.debug
/dev/console /var/log/maillog
Tras realizar cambios en el archive syslog.conf, envíe una señal “HUP” al proceso syslogd.
Parámetro myhostname El parámetro myhostname especifica el nombre de dominio completo de la máquina que ejecuta el sistema de Postfix. $myhostname aparece como el valor predeterminado de muchos otros parámetros de configuración de Postfix. Por defecto, myhostname se establece con el nombre del equipo local. Si el nombre de su equipo local no es FQDN, o si ejecuta Postfix en una interfaz 5 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
virtual, vir tual, tendrá t endrá que q ue especificar el FQDN que debe deb e utilizar utili zar el sistema de correo. Como alternativa, si especifica mydomain en main.cf, a continuación, Postfix utilizará su valor para generar un valor completo predeterminado para el parámetro de myhostname. Ejemplos: /etc/postfix/main.cf: myhostname = host.local.domain (el nombre de la máquina no es FQDN) myhostname = host.virtual.domain (interfaz virtual) myhostname = virtual.domain (interfaz virtual)
Párametro mydomain El parámetro de mydomain especifica el dominio principal de $myhostname. De forma predeterminada, se deriva de $myhostname. Por el contrario, si especifica mydomain en main.cf, Postfix usará su valor para generar un valor completo predeterminado para el parámetro de myhostname. Ejemplos: /etc/postfix/main.cf: mydomain = local.domain mydomain = virtual.domain (interfaz virtual)
Parámetro inet_interfaces inet_interfaces El parámetro inet_interfaces especifica todas las direcciones de interfaz de red en las que el sistema de Postfix debería escuchar, los correos dirigidos a la " user@[network address]" se entregarán localmente. Se puede reemplazar la configuración de inet_interfaces en el archivo de master.cf de Postfix anteponiendo una dirección IP al nombre de servidor. El valor predeterminado es escuchar en todas las interfaces activas. Si se ejecuta sobre interfaces virtuales, tendrá que especificar en qué interfaces quiere escuchar. Ejemplo: por defecto.
6 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
/etc/postfix/main.cf: inet_interfaces = all
Ejemplo: host con una o varios mailers virtuales. /etc/postfix/main.cf: inet_interfaces = virtual.host.tld (Postfix virtual) inet_interfaces = $myhostname localhost... (Postfix no virtual)
Nota: necesita detener e iniciar Postfix tras cambiar este parámetro.
Ejemplos de configuración típicos En esta sección se verán los ejemplos básicos más comunes de configuración de Postfix.
Postfix en un host de Intern I nternet et independiente /etc/postfix/main.cf: # Opcional: envía mails como user@domainname en lugar de user@hostname. #myorigin = $mydomain # Opcional: especifica la dirección externa del NAT/proxy. #proxy_interfaces = 1.2.3.4 # Alternativa 1: no pasa el mail a otros hosts. mynetworks_style = host relay_domains = # Alternativa 2: pasa el mail solo a los clientes locales. # mynetworks = 192.168.1.0/28 # relay_domains =
Postfix en un cliente null Un cliente null es una máquina máquina que sólo puede enviar correo. No recibe ningún ning ún correo de la red, y n o entrega ningún correo c orreo de forma forma local. local. Un cliente null normalmente utiliza POP, IMAP o NFS para el acceso al buzón. En este ejemplo se asume que el nombre de dominio de Internet es "example.com" y que la máquina se denomina "nullclient.example.com". Como es habitual, en los ejemplos se muestran sólo los parámetros que no se queden en sus valores predeterminados.
7 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
1 2 3 4 5 6 7 8
http://c omunidad.molinux.inf o/index.php?title=Post...
/etc/postfix/main.cf: myorigin = $mydomain relayhost = $mydomain inet_interfaces = loopback-only local_transport = error:local delivery is disabled /etc/postfix/master.cf: comente la entrada de agente de entrega local
Traducción: Línea 2: Enviar correo como "
[email protected]" (en lugar de "
[email protected] "
[email protected] ple.com"), "), por lo que no hay una razón para enviar correo a "
[email protected]". Línea 3: Reenviar todo el correo al servidor de correo. Línea 4: No aceptar correo de la red. Líneas 5-8: deshabilitar la entrega de correo local. Todo el correo pasa al servidor de correo como se especifica en la línea 3.
Postfix en red local Esta sección sección describe un entorno de red de área local local de un servidor principal y varios otros sistemas que envían y reciben recib en correo corr eo electrónico. electrónic o. Como de costumbre, se asume que el nombre de dominio de Internet es "example.com". Todos los sistemas están configurados para enviar correo como "
[email protected]", y todos los sistemas de recepción de correo para "
[email protected]". El servidor principal también recibe correo para "
[email protected]". Llamamos a este equipo con el nombre de mailhost.example.com. Un inconveniente al enviar correo como "
[email protected]" es que también se envía correo para "root" y otras cuentas de sistema al correo central. Como es habitual, en los ejemplos se muestran sólo los parámetros que no tienen sus valores predeterminados. 1 2 3 4 5 6
/etc/postfix/main.cf: myorigin = $mydomain mynetworks = 127.0.0.0/8 10.0.0.0/24 relay_domains = # Optional: forward all non-local mail to mailhost #relayhost = $mydomain
Traducción: Línea 2: Enviar correo como "
[email protected]".
8 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
Línea 3: Especificar las redes de confianza. Línea 4: Este host no retransmite correo de extraños. Línea 6: Esto es necesario si no hay acceso directo a Internet disponible. A continu c ontinuación ación presentamos p resentamos la configuración configur ación del d el mailhost. 1 2 3 4 5 6 7 8 9 10
DNS: example.com
IN
MX
10 mailhost.example.com.
/etc/postfix/main.cf: myorigin = $mydomain mydestination = $myhostname localhost.$mydomain localhost $mydomain mynetworks = 127.0.0.0/8 10.0.0.0/24 relay_domains = # Optional: forward all non-local mail to firewall #relayhost = [firewall.example.com]
Traducción: Línea 2: Enviar correo para el dominio "example.com" a la máquina mailhost.example.com. Recuerde especificar el "." al final de la línea. Línea 5: Enviar correo como "
[email protected]". Línea 6: Este host es el destino final de correo para el dominio "example.com", además de los nombres de la misma máquina. Línea 7: Especificar las redes de confianza. Línea 8: Este host no retransmite correo de extraños. En un entorno como éste, los usuarios tienen acceso a su buzón de varias formas: Acceso al buzón bu zón a través de NFS N FS o equivalente. Acceso al buzón bu zón a través de POP o IMAP. Buzón de correo en el equipo del usuario preferido. En este último caso, cada usuario tiene un alias en el host de correo que reenvía el correo a su equipo preferido: /etc/aliases: joe:
[email protected] jane:
[email protected]
Postfix detrás de un cortafuegos cortafuegos La idea es establecer un Postfix en el cortafuegos/gateway que reenvíe el correo para "example.com" al interior de la red pero que rechace el correo para "anything.example.com". Hay sólo un problema: con "relay_domains = 9 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
example.com", el servidor de seguridad normalmente también acepta correo para "anything.exam "anything .example.com ple.com". ". No sería lo correcto. 1 2 3 4 5 6 7 8
/etc/postfix/main.cf: myorigin = example.com mydestination = local_recipient_maps = local_transport = error:local mail delivery is disabled /etc/postfix/master.cf: Comment out the local delivery agent
Traducción: Línea 2: Enviar correo desde este equipo como "
[email protected]", por lo que no existe ninguna ningu na razón razón para enviar correo a "
[email protected]". Líneas 3-8: Deshabilitar la entrega de correo local en la máquina cortafuegos. El cortafuegos debe ser capaz de recibir correo para postmaster@[dirección ip del firewall]. Todo el correo de popmaster y abuse se reenvía a una dirección interior. 1 2 3 4 5 6
/etc/postfix/main.cf: virtual_alias_maps = hash:/etc/postfix/virtual /etc/postfix/virtual: postmaster
[email protected] abuse
[email protected]
La última parte de la solución hace el reenvío del correo electrónico. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
/etc/postfix/main.cf: mynetworks = 127.0.0.0/8 12.34.56.0/24 relay_domains = example.com parent_domain_matches_subdomains = debug_peer_list smtpd_access_maps smtpd_recipient_restrictions = permit_mynetworks reject_unauth_destination relay_recipient_maps = hash:/etc/postfix/relay_recipients transport_maps = hash:/etc/postfix/transport /etc/postfix/relay_recipients:
[email protected] x
[email protected] x . . . /etc/postfix/transport: example.com smtp:[inside-gateway.example.com]
Traducción: 10 de 11
22/11/11 11:40
Postfix - Comunidad Molinux
http://c omunidad.molinux.inf o/index.php?title=Post...
Líneas 1-7: aceptar correo de sistemas locales en $mynetworks y aceptar correo de fuera para "
[email protected]" pero no para "
[email protected]". Líneas 9, 12-14: definición de la lista de direcciones válidas en el dominio de "ejemplo.com" "ejemplo.com" que puede p uede recibir correo de Internet. Líneas 10, 17 y 18: ruta ru ta de correo para "example.com "example.com"" en el interior de la puerta de enlace. Los corchetes [] fuerzan a Postfix a no hacer ninguna búsqueda de MX.
Referencias http://www.postfix.org/BASIC_CONFIGURATION_README.html Obtenido de "http://comunidad.molinux.info/ "http://comunidad.molinux.info/index.php/Postf index.php/Postfix" ix" Esta página fue modificada por última vez el 08:18, 29 dic 2010. El contenido está disponible bajo los términos de la GNU Free Documentation License 1 .2
11 de 11
22/11/11 11:40