Professional Documents
Culture Documents
Tutor
Felipe Londoo
Introduccin
El siguiente manuel es una guia basica de la instalacin y configuracion de una plataforma de correo segura cuya estructura es basada en cliente servidor. Integrando 3 agentes importantes para el desarrollo de dicho servidor de correo los cuales son postfix, dovecot y ldap. Cabe aclarar que no sera lo unico que instalaremos puesto que este tema es bastante extenso y nesecitaremos muchas mas herramientas que nos ayudaran con la infraestructura planteada que la mencionare mas adelante. Qu es un servidor de correo? Para todos aquellos que no conocen o nunca han instalado un servidor de correo lo explicare lo mas breve posible. Es una aplicacin informatica que atravez de nuestra redes de transmicion de datos nos permite enviar , recibir y almacenar informacion atravez de correos electronicos entre multiples usuarios. Es basada en un conjunto de servicios los cuales complementan y hacen funcional una estructura de correo.
Objetivo
El objetivo principal y fundamental es dar a conocer un sistema de correo seguro basado en software libre con la intencion de aportar a la comunidad la terminologia, conceptos y el conjunto de servicios y aplicaciones que hacen de esta plataforma de correo segura y funcional.
Terminologa CentOS: (Community enterprise Operating Sistem) CentOS es una distribucin de Linux basada en
Red Hat enterprise compilado por voluntarios a partir del codigo feunte liberado por Red Hat.
LDAP: Protocolo de acceso ligero a directorios, permite el acceso a un servicio de directorio ligero y
ordenado, tambien es denominado como una base de datos.
Apache Directory Studio: es una herramienta enfocada a su aplicacin sobre cualquier servidor
LDAP y en especial sobre Apache Directory Server, Es de codigo abierto.
Postfix: es un servidor de correo de software libre / codigo abierto, un programa informatico para el
enrutamiento y envo de correo electrnico.
Dovecot: es un servidor de IMAP y POP3 de codigo abierto para sistemas GNU/linux escrito
fundamentalmente pensando en seguridad. rpido, fcil de instalar y por sobre todo seguro.
Wireshark: es un analizador de protocolos utilizado para realizar anlisis y solucionar problemas en redes de comunicaciones para desarrollo de software y protocolos. Web Mail: es un cliente de correo electronico, que provee una interfaz web por la que acceder al
correo electronico.
CentOS 389
En la consola nos logiamos como root su instalaremos el servidor y el cliente openLdap
generaremos un password para nuestro root del Ldap la cual utilizaremos cuando modifiquemos el archivo de configuracion para el OpenLdap.
nuestra contrasea ha sido cifrada en SSHA la copiaremos para aadirla en el siguiente archivo de configuracion modificaremos el archivo principal del ldap slapd.conf que se encuentra en la ruta /etc/openldap/
modificaremos las siguientes lineas database (base de datos) suffix (dominio) rootdn (dn para el dominio) rootpw password para el root del ldap descomentaremos la linea directory /var/lib/ldap cerramos y guardamos ctrl x s
copiamos la base de datos que trae como ejemplo en /etc/openldap/DB_CONFIG.example al directorio /var/lib/ldap
En este archivo con extencion .ldif crearemos 3 entradas que son Una entrada padre en la que se define el componente de dominio y la organizacin Una unidad organizativa llamada usuarios Una unidad organizativa llamada grupos
reiniciamos de nuevo el servidor # service ldap restart Es importante aclarar que no creare usuarios para el ldap en el momento puesto que considero mas comodo y facil crearlos mediante un administrador grafico del ldap y definirles sus respectivos atributos para autenticarlos contra el servidor de correo.
Ejecutando
nos conectaremos con el ldap por medio de nuestro dominio y contrasea puesta anteriormente en nuestra maquina local, Cabe aclarar que el cn es admin por defecto.
al momento de conectarnos tendremos nuestro grupo y unidad organizativa creada anteriormente en el ldap basta con administrarla y crear usuarios dentro de dicha unidad los cuales autenticaremos mas adelante contra el servidor de correo.
Creando Nuevo Usuario dentro de un grupo o unidad organizativa crearemos un usuario. Si no tenemos unidades organizativas podemos crearlas graficamente.
Es importante crearlo y agregarle estos atributos para asi hacer una mejor autenticacin.
Agregando atributos
asi como este agregaremos los demas hasta tenerlos todos, es importante agregarle un userpassword al usuario. (se agrega igual que un atributo)
verificamos que el puerto por defecto del servicio se haya iniciado # netstat -tan
creamos un usuario para hacer una prueba basica con postfix # useradd -m (usuario)
enviamos un mensaje apartir del siguiente comando #echo 'asunto' mail -s cuerpo del mensaje user1@localhost
verificamos que haya llegado nos logiamos como user1 entramos al home al user1, al Maildir y a new y lo que vemos en verde es el mensaje; lo podemos ver con cualquier editor de texto.
la entrega del mensaje fue exitosa pero fue entregada por el agente MTA Sendmail mas no por el postfix; detenemos el servicio sendmail para encender el postfix. # service sendmail stop # chkconfig sendmail off (detener el servicio) ( apagar el servicio para que no inicie con el arranque del SO)
(encender el servicio)
para mirar el agente que esta encargado del MTA # alternatives --displaymta lo podemos configurar con # alternatives -config seleccionandolo como agente MTA con el numero 2
si enviamos de nuevo un correo al user1 verificamos que la entrega ahora la hace el postfix
configuramos el main.cf que se encuentra en /etc/postfix este archivo de configuracion es bastante extenso por lo cual muestro solo las lineas que tengo descomentadas, algunas configuradas por defecto y otras a proposito. # nano /etc/postfix/main.cf
guardamos y salimos.
Crearemos el usuario que contendra los usuarios virtuales en mi caso lo llame 'vmail'
el usuario quedara en nuestro home y dentro de este quedaran los usuarios virtuales de correo electronico creados anteriormente en el Ldap. Para que se creen dentro de cada usuario un buzon de almacenamiento llamado en mi caso /Maildir. vemos en la imagen que dentro del home existe el usuario vmail y dentro de el existen unos usuarios que he creado en el ldap anteriormente y dentro de cada usuario existe el buzon Maildir que es donde se almacenaran los usuarios.
lo dejamos asi
estoy indicando que el servidor del ldap estara en una maquina diferente 192.168.3.185, conectandose por el puerto 389 con el dominio jonas.com que lo establecere en el dns como dominio principal. Tambien se define la clase de objecto que buscara para autenticar los usuarios en el ldap, el uid como atributo resultante. Verificamos que nos este creando el buzon Maildir para cada usuario asi
editamos las siguientes lineas donde definiremos los protocolos por donde se comunicara los puertos, las cuotas para los usuarios entre otras. Como este archivo de configuracion es bastante extenso cree una copia donde solo muestro las lineas configuradas.
dovecot.conf -protocolos a utilizar -protocolo imap -plugin para la cuota del imap -escuchando por el puerto 143 -habilitado para la seguridad ssl por el puerto 993 -protocolo pop3 -plugin para cuota de pop3 -escuchando por el puerto 110 -host o ip para ssl -certificados por defecto publico y privado obtenidos al instalar crytoutils -dirigimos la ruta o locacion para el buzon dentro de vmail para cada usuario. - protocolo imap abierto -protocolo pop3 abierto
-protocolo lda abierto -plugin para la cuota desde el lda -correo de usuario para recibir notificaciones -ruta para el socket de comunicacin
configuracion en conexin con ldap. ( configurado mas adelante) -socket de comunicacin por medio del modo, usuario y grupo
- nombre para la quota del buzon (puede ser cualquiera) -maxima cantidad de mensajes recibidos -maximo tamao en megabyes -que ignore spam
si para alguna configuracin extra es necesario agregar una o mas lineas en este archivo de configuracion lo hare mas adelante dando su debida explicacin.
crear el archivo dovecot-ldap.conf para la comunicacin del ldap con dovecot. Editamos las siguientes lineas dejandolo asi:
en estas lineas indicamos al dovecot cual sera la direccion ip del ldap, el dominio, la contrasea del administrador del ldap en texto plano, la version del ldap, la base que buscaremos como dominio y el filtro para los usuarios tal y con los atributos que los buscaremos en el ldap. Es importante saber la linea de user_filter maneja los atributos creados anteriormente en los usuarios describiendo los mas importantes para la ubicacin de ellos. Reiniciamos el dovecot # /etc/init.d/dovecot restart
verificamos que esten escuchando los puertos 110 y 143 que son los del imap y pop3 # netstat -antp | grep dovecot
Pruebas de envio por el dovecot. Para esto es necesario tener un MUA (cliente de correo electronico) el sistema linux trae por defecto l lciente de correo evolution pero en mi caso lo hare con el thunderbird y lo instalare en la maquina cliente.
Cliente XP
instalamos thunderbird lo podemos descargar de la pagina oficial, de softonic o de muchas otras es totalmente gratuito y de codigo abierto.
lo instalamos como un programa mas para windows, debemos tener en cuenta que este cliente XP ya tenga comunicacin con el servidor de correo y con el ldap, tambien que nos este resoliviendo por nuestro dominio en mi caso jonas.com
la contrasea es la dada anteriormente en el ldap, recordemos que los usuarios que crearemos son los usuarios creados anteriormente en el ldap con sus atributos.
y asi mismo creamos los de mas usuarios para enviar correos electronicos entre ellos mismos. Enviando un correo entre usuarios virtuales por medio del MUA thunderbird
podemos ver que le mensaje ha llegado exitosamente en el buzon del usuario felipe desde el usuario david.
al final del archivo agregamos la siguiente linea para que la entrega de correo las haga el dovecot.
Probando Quotas
Probamos que no lleguen mas de tres mensajes a cualquier usuario en su buzon devolviendo una notificacion asi: para probar si la quota funciona envie varios mensajes a felipe desde el usuario david y en el cuarto le reboto el mensaje a david con esta notificacion.
Listas de correo
las listas de correo es una forma de enlazar un conjunto de usuarios dentro de un grupo o asi mismo llamado lista con la facilidad de recibir correos electronicos, notificaciones sin la nesecidad de estar acudiendose individualmente.
aadimos estas lineas para la comunicacin con el ldap, donde el resultado del atributo sera
maildrop.
Editamos el main.cf
Editamos esta linea en los virtuals indicando la ruta del archivo creado anteriormente
reinicamos postfix
en el apachedirectorystudio (administrador grafico del ldap) creamos una nueva clase de objecto como si fuera una unidad organizativa donde el RDN sera mailalias y el nombre@dominio
tras aver creado el grupo listas en cada usuarios que queramos meter a la lista de correo debemos agregarle varios maildrop con el correo de los usuarios.
al terminar la instalacion nos debe generar automaticamente los certificados publicos y privados con respecto a nuestro dominio. Estos certificados son visibles en certificado privado certificado publico es necesario agregar las lineas de ruta de los certificados en el dovecot.conf y agregar la ruta en el main.cf asi # nano /etc/docecot.conf
guardamos y salimos.
# nano /etc/postfix/main.cf
se deben agregar tal y como esta la ruta con el nombre exacto de los certificados.
capturamos por la interface 127.0.0.1 que en este caso sera localmente el envio de correos.
Enviamos un correo entre dos usuarios mientras el wireshark captura el trafico y identificamos que
Instalando Endian
podemos descargar la imagen iso desde la pagina oficial. Lo instalamos con una distribucion normal de linux, 256 Mb de ram son adecuados. Sera administrado graficamente desde el Cliente XP por que el endian por defecto no trae entorno grafico. Al ser instalado nos arrojara una direccion ip con un puerto por donde se comunicara el sistema que lo administrara. Tambien dara las opciones para entrar a la shell, reiniciar, cargar el roo, entre otras.
Ese es el entorno grafico del endian quien sera nuestro firewall y proxy smtp, por medio de esta ventana administraremos todo. en servicios activamos el antivirus y el antispam
el cual pegaremos en un archivo creado en cualquier editor de texto en mi caso lo hice en el blog de notas, lo guardamos con una extencion .exe y lo enviamos por correo enter dos usuarios. Nos debera arrojar una notificacion a nuestro web master diciendo que se ha intentado enviar un virus o archivo malicioso, asi compravamos que el clamav (antivuirus) esta funcionando.