Guía de Instalación de Postfix con DoveCot

Imagen de BitFrost

Parte 1:
Guía de Instalación de Postfix con DoveCot
Articulo Original:

http://www.hughesjr.com/content/view/40/2/Site_News

Traducido por: Andrés Genovez T. (12-13 de Julio de 2005) andresgenovez@linuxmail.org
http://www.geocities.com/andres_genovez
http://www.ecualug.org

Debajo se encuentra el texto entero de la primera parte de la guía. Si tiene alguna pregunta concerniente a este articulo, por favor pregunte en la sección de Postfix Mail Server de los foros de HUghesJR.com

Nota: El programa UQ imapd en EL-3 ha sido remplazado por una de las siguientes opciones en las distribuciones EL-4. Las opciones son dovecot y cyrus-imapd. Cada una tiene sus pro y contra. Dovecot utiliza usuarios regulares de Linux y es similar al previo UW imapd, cyrus-imapd utiliza usuarios virtuales y puede guardar la información de mail y de usuarios en una base de datos MySQL. Yo tratare estas dos diferentes opciones como diferentes “partes” de la misma guía. Esta “Parte” es la Parte 1, la guía de Postfix – DoveCot. Si usted en cambio utiliza cruz-impad, salte a la parte 2, la guía postfix – CyrsuImapd.

Usted necesitara seguir cualquiera de la “Parte 1” o “Parte 2” para tener la instalación inicial completada…entonces salte a la “parte3” para Webmail Squirrelmail y “parte 4” si desea integrar MailScanner, SpamAssassin, ClamAV para escanear correos.

Esta va a ser una instalación de un servidor mail Postfix en CentOS-4.x (o WBEL-4, TaoLinux4…Yo utilizare el nombre de CentOS-4 a través del resto de la guía). El primer paso será realizar una instalación mínima de CentOS-4. Esto se lo logra seleccionando instalación personalizada y deseleccionando todo. También se debe apagar el SELinux de igual manera. Esto debería dar una instalación de alrededor de 698MB de paquetes. (Esto cambiara cuando estén listas nuevas distribuciones). Es la misma mínima instalación recomendada por Red Hat y su producto Enterprise.

Existen algunos ítems que pueden ser borrados si no son absolutamente necesarios, pero, nosotros solamente quitaremos sendmail, porque nosotros vamos a instalar PostFix como MTA. Esta guía también asume que SELinux esta deshabilitado, si deseas utilizar postfix junto con SElinux, mira esta guía (link) luego de que ha completado la instalación básica a continuación. Esta guía asume también que IPV6 esta deshabilitado.

Usted puede deshabilitar SELinux editando el archivo /etc/sysconfig/selinux, encontrando la línea:


SELINUX= y cambiándola a

SELINUX=disabled

Usted puede deshabilitar IPv6 editando el archivo /etc/modprobe.conf y agregando esta línea al principio


Alias net-pf-10 off

Luego de haber hecho los cambios, reinicie la maquina.

Esta instalación es lo mas sencilla posible, y no contiene un GUI o interfaz de usuario, así que necesitara tener conocimientos de cómo utilizar un editor en modo consola. Hay varios, yo utilizo vi o nano que también esta en esta instalación. Cualquiera de los dos puede ser utilizado, por favor hágase familiar con un editor de consola, antes de intentar esta instalación. Usted vera pasos en los que le indique que edite el archivo /xxx/xxx usted deberá utilizar su editor preferido para realizar estos pasos.

Todos los pasos de esta guía son realizados en la línea de comandos como el usuario root.

1. Ahora es un buen tiempo para discutir que se necesita para configurar el nombramiento. Existen requisitos específicos de nombramiento para un servidor e-mail. El primero es el nombre mismo del servidor. En CentOS existen dos lugares en donde el nombre del servidor debe de ir… y debe de ser lo mismo en cada lugar. Los lugares son:

1. El archivo /etc/sysconfig/network … el mío dice:


NETWORKING=yes

HOSTNAME=mail2.home.local

(mail2 es el nombre del computador… home.local es el nombre del dominio)

2. El archivo /etc/hosts debe tener la misma entrada…aquí esta mi /etc/hosts


# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
192.168.0.72 mail2.home.local mail2

2. Otro requerimiento para un servidor mail es tener un registro DNS MX para el dominio (en mi caso home.local) que apunte a mi servidor de mail (en mi caso mail2.home.local). Este dominio no es real aparte de mi red de pruebas, funciona dentro de mi red (en una red 192.168.0.0) porque tengo un servidor DNS para pruebas. Usted (o su ISP) necesitara agregar un registro MX para su dominio. Aquí esta una verificación que nos da el comando dig para mi registro MX en home.local


dig -t mx home.local

; <<>> DiG 9.2.2 <<>> -t mx home.local
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16265
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; QUESTION SECTION:
;home.local. IN MX

;; ANSWER SECTION:
home.local. 3600 IN MX 10 mail2.home.local.

;; ADDITIONAL SECTION:
mail2.home.local. 3600 IN A 192.168.0.72

;; Query time: 2 msec
;; SERVER: 192.168.0.2#53(192.168.0.1)
;; WHEN: Mon May 17 21:12:39 2004
;; MSG SIZE rcvd: 65

La pregunta en la sección QUESTION es el registro mx de home.local... La sección ANSWER o respuesta dice que el servidor mail de home.local es mail2.home.local... y la sección ADITIONAL o adicional dice que mail2.home.local es 192.168.0.72. Yo tengo un registro A separado para 192.168.0.72 atado al nombra mail2.home.local en el servidor DNS.

Para que su servidor e-mail realmente funcione (para recibir mail desde el Internet), usted necesita un verdadero nombre de dominio que le pertenezca, una dirección IP, y un registro DNS MX y A valido apuntando a su servidor de mail. Usted puede utilizar servicios como zoneedit.com y dyndns.org (o otros) para aplicar un nombre de dominio a una dirección IP dinámica (como una cuenta cable o DSL) y entonces configurar los registros A y MX ahí.

Aquí esta el procedimiento (Usted ya debería tener una instalación mínima de EL-4)

1. Ahora usted necesita instalar, o verificar todos los paquetes necesarios para la configuración de Postfix con SASL, SMTP AUTH, IMAP y POP3. Esto instalara todos lo paquetes requeridos:


yum install postfix postfix-pflogsumm dovecot cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-ntlm cyrus-sasl-plain cyrus-sasl-sql

(La línea de arriba es una sola línea con espacios en cada nombre (si se juntan), los paquetes cyrus-sasldevel y cyrus-sasl-sql son opcionales, pero serán utilizados después si usted instala MailScanner y ClamAV.

2. Ahora necesitamos quitar sendmail, porque ahora postfix es el nuevo MTA.


yum remove sendmail

3. Hasta que tenga los registros DNS MX y A listos (anteriormente), usted esta listo para configurar Postfix… primeramente nosotros editaremos el archivo /etc/postfix/main.cf y configuraremos los parámetros importantes. Yo solamente listare los parámetros para tener trabajando un dominio completamente funcional en donde no existe relay exceptuando a los usuarios que han se han registrado en el sistema. Solamente discutiré los parámetros por defecto que se deben cambiar:


myhostname = mail2.home.local
mydomain = home.local
myorigin = $mydomain
inet_interfaces = $myhostname, localhost
mydestination = $myhostname, $mydomain, localhost
local_recipient_maps = unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
mynetworks_style = subnet

(esto permitirá hacer relay en mi subred 192.168.0.0/255.255.255.0…si usted solamente posee una Ip .. usted deberá dejar esto comentado y utilizar en cambio mynetworks_style = host)


relay_domains = $mydestination
mail_spool_directory = /var/spool/mail

Esos son todos los cambios originales que necesitan realizarse…aquí hay algunos ítems añadidos para SASL / SMTP AUTH (añadidos al final del archivo /etc/postfix/main.cf):


smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes

smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

También al final del archivo /etc/postfix/main.cf, usted puede añadir una configuración para el máximo tamaño del buzón de mensajes y archivos adjuntos…Yo asumiré un máximo de 20mb para archivos adjuntos y 100mb para el buzón de mensajes… aquí esta lo que hay que añadir para ello:


message_size_limit = 20971520
mailbox_size_limit = 104857600

Aquí esta mi archivo /etc/postfix/main.cf actual para esta instalación..

http://www.hughesjr.com/centos/4/postfix/main.cf.txt

4. Ahora nosotros necesitamos activar los servicios de IMAP, POP3, IMAPs, POP3s. Todos estos son opcionales pero usted necesitara leer o recibir su mail de alguna manera. Fuera de los limites de esta guía esta el generar un certificado TLS y usar POP3s o POP3s. Nosotros simplemente activaremos en esta guía el estándar POP3 e IMAP

Nosotros instalamos Dovecot como nuestro demonio de pop/imap, y necesitamos configurarle(si usted esta tratando de usar cyrus-imap, entonces esta en la sección equivocada)

a. Edite el archivo /etc/dovecot.conf y cambie las siguientes líneas (están son simplemente las líneas que hay que cambiar por defecto):


protocols = imap pop3
imap_listen = *
pop3_listen = *

#imaps_listen = *
#pop3s_listen = *
ssl_disable = yes
#ssl_cert_file = /usr/share/ssl/certs/dovecot.pem
#ssl_key_file = /usr/share/ssl/private/dovecot.pem

Aquí esta una copia del archivo /etc/dovecot.conf usado en esta guía:

http://www.hughesjr.com/centos/4/postfix/dovecot.cf.txt

5. Ahora queremos que funcione saslauthd. Necesitamos editar el archivo /etc/sysconfig/saslauthd y estar seguros de que dice esto:


MECH=pam

Ahora necesitamos editar el archivo /usr/lib/sasl2/smtpd.conf e igualmente asegurarnos que dice:


pwcheck_method: saslauthd

Ahora necesitamos configurar postfix como MTA…haga esto:


alternatives --config mta

…seleccione postfix (en mi configuración numero 1)

Ahora necesitamos reiniciar el servicio saslauthd con este comando:


/etc/init.d/saslauthd restart

(si no estuvo ejecutándose en primera instancia, la primera parada fallara…pero el arranque dirá OK

Reinicie postfix con el comando:


/etc/init.d/postfix restart

Reinicie dovecot con el comando:


/etc/init.d/dovecot restart

6. Ahora debemos estar seguros de que postfix, dovecot y saslauthd se iniciaran en cada reinicio al menos en los runlevels 3 y 5 …para realizar esto ejecute el siguiente comando


chkconfig --list | grep postfix

La salida debe ser similar a esto:


postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off

Entonces haga:

chkconfig --list | grep saslauthd

también debe ser similar a:


saslauthd 0:off 1:off 2:off 3:on 4:on 5:on 6:off

Entonces haga:


chkconfig --list | grep dovecot

Debe parecerse a esto:


dovecot 0:off 1:off 2:off 3:on 4:on 5:on 6:off

Si en cualquiera de los anteriores esta off 3: o 5:; ejecute el comando


chkconfig saslauthd on

(o dovecot o postfix cuando sea necesario)

Entonces vuelva a ejecutar el comando chkconfig --list | grep saslauthd o el que necesite asegurarse que esta encendido, se realizo el paso anterior debería de decir que esta en on 3: y 5:

7. Si tiene activado Iptables, puede ajustar los puertos abiertos con el siguiente comando


system-config-securitylevel-tui

Seleccione habilitar (si esta desactivado) y luego en Personalizar…

Usted necesitara abrir los puestos imap:tcp pop3:tcp https:tcp en a parte inferior, como también habilitar ssh y www en la parte superior (eso incluye el agregarle a squirrelmail luego) y también le permite conectarse mediante SSH al servidor o puede utilizar el siguiente archivo en /etc/sysconfig/iptables

http://www.hughesjr.com/centos/4/postfix/iptables.txt

Esta es una configuración iptables algo segura para su servidor mail único dentro de su red, la seguridad de su servidor dependerá de usted no de mi, esta es solamente una configuración sugerida que le permitirá tener un servidor mail que funcione y este algo asegurado.

8. En disposición de utilizar PAM (por ejemplo, usuarios Linux normales usuario/contraseña con passwd/shadow) como su método SMTP de autentificación, usted deberá permitir (y usar) método de autentificación en texto PLANO de su cliente MAIL.

9. En esta configuración, todos los usuarios que tienen cuentas con contraseñas en este servidor pueden enviar y recibir correo.

10. Si tiene preguntas acerca de esta guía o de su implementación, por favor agregue sus comentarios en la sección de los foros referente a Postfix Mail Server.

Enseguida añadiré httpd(apache), php y squirrelmail a este servidor en otra guía, para que de esa manera los usuarios tengan Webmail

Comentarios

hola andrés

Imagen de Epe

hola andrés

me parece bien la guía, sólo quiero indicar algunas cosas:

1- a la hora de instalar rhel4 (centos4, wbel4) se puede escoger no habilitar selinux (secure enhanced linux) y así te evitas el ponerlo en off, pero es válida tu afirmación. SELinux es una de las características claves implementadas en RHEL4, pero todavía hay mucha incomprensión sobre el SELinux y mucha gente prefiere así como dices tu el deshabilitarla para evitar complicarse. Supongo que con el transcurso del tiempo el selinux será bien comprendido y brindará una muy buena ayuda a la seguridad en linux.

2- el dovecot acepta una variadísima gama de opciones de autenticación y de opciones para leer mails almacenados, revisa eso a ver si es lo que querrías probar con mysql. Pero si es almacenar, sugiero almacenes los mails en formato maildir que es mucho más rápido y eficiente por un enorme porcentaje. Y el dovecot lo leerá, imapd-2000 sólo lee formato mailbox y este formato es un poco más lentón y propenso a corrupciones.

saludos
epe
--
EcuaLinux.com
(02)3412402 - (09)9246504

Saludos
epe

EcuaLinux.com

+(593) 9 9924 6504

Servicios en Software Libre

No aparece todo, como en mi

Imagen de BitFrost

No aparece todo, como en mi direccion

http://www.geocities.com/andres_genovez/part1spanish.htm

Porque??

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein
[img]http://counter.li.org/cgi-bin/certificate.cgi/345468[/img]

edita nuevamente el

Imagen de Epe

edita nuevamente el artículo y recuerda que los signos de "menor que" se hacen poniendo & l t ; (unido todo) mira el ejemplo: <

sino lo haces así te arma esta desagradable a partir de que encuentre un signo de menor que, ya me pasó el otro día y en efecto el artículo se te corta por esa razón. Pero es fácil de arreglar.

saludos
epe
--
EcuaLinux.com
(02)3412402 - (09)9246504

Saludos
epe

EcuaLinux.com

+(593) 9 9924 6504

Servicios en Software Libre

Je je je quien me lo dia

Imagen de BitFrost

Je je je quien me lo dio arreglando???

Gracias!!! muchas gracias de verdad a ese heroe anonimo!!

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein
[img]http://counter.li.org/cgi-bin/certificate.cgi/345468[/img]

mailserver postfix en suse10

Imagen de yoirear

yo tengo intalado Postfix con pop3 y smtp. Todo me pincha bien, pero quiero instalar el servicio imap y me da un error:
*********************************
LOGIN failed

Configuración:
Cuenta: proxy
Servidor: proxy
Nombre de usuario: yoirear
Protocolo: IMAP
Puerto: 143
Seguridad (SSL): 0
Código: 800cccd1
*********************************

que sera? todavia soy un novato en Linux, pero ya he instalado en mi server (firewall con nat y redireccion , samba pdc, dns, dhcp, vnc, ftp, directorios virtuales www), squid, ...

Me gustaria intercambiar informacion!!!

yoirear arrova pescambray punto co punto cu

saludos!!! seguimos con Linux!!!

yoirear

Pregunta para Andres

Hola Andres, hemos intentado (yo y otro compañero) en una configuraciòn POSTFIX+ DOVECOT, hemos intentado cambiar la configuraciòn del default mbox, indicando donde estará el correo y donde estarán las carpetas borradores+enviados+papelera.
Actualmente el servicio está ok. ubicando los correos de inbox en /var/mail/usuario
y el resto de las carpetas en /home/usuario.
El caso es que requerimos colocar las carpetas de /home/usuario en /var/mail/INDEX; pero al intentar indicarle esto a dovecot; el servicio comienza a enviar mensajes de error.
/var/mail/usuario/inbox/./imap/usuario doesn't exist or permission denied, what ever.
So, we can't change the configuration.
You have an idea about it? which will be your consideration?

Saludos.

Saludos El mismo te esta

Imagen de BitFrost

Saludos
El mismo te esta indicando que no tiene permisos para poder grabar o acceder a el archivo INDEX, intenta cambiando los permisos

Buena Suerte

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein
[img]http://counter.li.org/cgi-bin/certificate.cgi/345468[/img]
[img]http://www.geocities.com/andres_genovez/mail.png[/img]

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein
[img]http://counter.li.org/cgi-bin/certificate.cgi/345468[/img]

Parte 3 y 4

Imagen de misho

Oye mensionas que hay una parte 3 y parte 4 para integrar MailScanner, SpamAssassin y ClamAV , donde estan esos documentos, o donde me recomiendas ke le busque

Para Andres

Hola Andres, disculpa la molestia, es que segui las instrucciones de tu "como" de ecualug para instalar Postfix con Dovecot para configurar mi servidor de correos en un Centos 5, el problema que se me ha presentado es que no puedo enviar mails fuera de mi LAN, lei algo sobre relayhost pero para ser sincero soy nuevo en Linux y en realidad no entiendo esto del Relay, asi que despues de mucho buscar e investigar me propuse a escribirte para pedirte una ayudita. Desde ya muchas gracias.

Hola

Imagen de BitFrost

La verdad este manualsito ya es un poco antiguo jejeje :)

Pero me puedes decir en que parte te esta dando el error?

Puedes guiarte tambien en:

http://www.howtoforge.com/perfect-server-centos-5.2

Saludos a todos espero volver a Ecualug con fuerzas jejee

"Education is what remains after one has forgotten everything he learned in school." - Albert Einstein
[img]http://counter.li.org/cgi-bin/certificate.cgi/345468[/img]

Páginas