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

respuesta

Imagen de miguelbaum

hola segui todos los pasos e instale con el squirrelmail y cuando ingreso en forma local al webmail intento enviar un mail a un user interno o a un user externo y me arroja este error.

Mensaje no enviado. Respuesta del servidor:

Informe de error en entrega
75 No puedo ejecutar el comado '/usr/sbin/sendmail -i -t -fsistemas@andeslogistics.com.py'

podrian ayudarme, con esto.
saludos

jajajajajajaja ... pues si es

Imagen de deathUser

jajajajajajaja ...

pues si es que el sendmail te instala el comando en /usr/sbin ya no te saldrá el mensaje ...

pero no creería que sería necesario, a no ser que ya no quieras postfix, en primer lugar, por qué seleccionaste postfix ...???

bye
;)

respuesta

Imagen de miguelbaum

alguien tiene algun howto para instalar zimbra? voy a probar si puedo con eso, que dependencias necesito y todo eso, estuve viendo otros foros pero ninguno de los demas me convence, confio mas en lo que digan aqui en Ecualug.
saludos

Te recomendaría que sigas los

Imagen de deathUser

Te recomendaría que sigas los howtos de EPE sobre sendmail y demás, o que instales una de las suites que han recomendado como reemplazo de zimbra (busca en el foro), si quieres instalar zimbra, la mejor fuente de información es el wiki de zimbra ...

bye
;)

Brother en esto de instalar

Imagen de DRLice@82
Brother en esto de instalar un server de correo soy totalmente novato, tengo instalado el server en Debian Jessie y quiero instalrlo pero para que me funcione solo en mi LAN su porposito es solo de instruccion para mis alumnos, si puedes ayudame en esto pero para debian.

Salu2 a todos

Páginas