You are on page 1of 63

IMPLEMENTACIÓN DE UNA PLATAFORMA DE CORREO SEGURA

CON MANDRIVA DIRECTORY SERVER BAJO CENTOS 5.4.

CARLOS MARIO GÓMEZ MEJÍA

GIOVANNY STIVEN ECHEVERRY MEJÍA

ANDRES FELIPE GALLEGO ARBOLEDA

ADMINISTRACIÓN DE REDES DE COMPUTADORES

INSTRUCTOR:

MAURICIO ORTIZ MOLINA

SENA

REGIONAL ANTIOQUIA

CENTRO DE SERVICIOS Y GESTIÓN EMPRESARIAL

1
2010.

Contenido
1. INTRODUCCIÓN ................................................................................................................4
2. OBEJTIVOS .......................................................................................................................5
2.1 OBJETIVO GENERAL.........................................................................................................5
2.2 OBJETIVOS ESPECÍFICOS ..................................................................................................5
3. MARCO TEÓRICO ..............................................................................................................7
3.1CentOS............................................................................................................................7
3.2 PDC ................................................................................................................................7
3.2.1SAMBA .........................................................................................................................7
3.3 MDS ...............................................................................................................................7
3.4 OpenLDAP......................................................................................................................7
3.5 PLUGINS .........................................................................................................................8
3.6 SID .................................................................................................................................8
3.7 MMC..............................................................................................................................8
3.8 Tipo de buzon.................................................................................................................8
3.8.1 MailDir ........................................................................................................................8
3.8.2 Mbox...........................................................................................................................8
3.9 Bind ...............................................................................................................................9
3.10 Dhcpd ..........................................................................................................................9
3.11 MTA .............................................................................................................................9
3.12.1 Postfix .......................................................................................................................9
3.11.1.1 SMTP ......................................................................................................................9
3.12 MDA...........................................................................................................................10
3.12.1Dovecot....................................................................................................................10
3.12.1.1 IMAP ....................................................................................................................10
3.12.1.2 POP ......................................................................................................................10
3.13 WebMail ....................................................................................................................10
3.13.1 SquirrelMail .............................................................................................................10
3.14 MUA ..........................................................................................................................10
3.14.1 Mozilla Thunderbird .................................................................................................11
3.15 SASL ...........................................................................................................................11
3.16 SSL\TLS.......................................................................................................................11

2
3.17 Amavis .......................................................................................................................11
3.17.1 ClamAV....................................................................................................................11
3.17.2 SpamAssasing ..........................................................................................................11
4. INICIO DE INSTALACION DEL CORREO ..............................................................................12
4.1 CONFIGURACIÓN DE OPENLDAP Y SAMBA......................................................................12
4.1.1 INSTALACIÓN DEL REPOSITORIO RPMFORGE ...............................................................14
4.1.2 CREACIÓN DEL REPOSITORIO DAG...............................................................................14
4.1.3 INSTALACIÓN DE LAS LIBRERIÁS NECESARIAS ...............................................................15
4.1.4 CONFIGURACIÓN DEL SAMBA .....................................................................................16
4.1.5 INSTALACIÓN DE SMBLDAP-TOOLS..............................................................................19
4.1.6 POBLANDO LDAP .......................................................................................................21
4.1.7 CONFIGURACION DE NSSWITCH.CONF ........................................................................22
5. INSTALACIÓN DEL MMC-AGENT-2.3.2 ..............................................................................25
5.1 INSTALACIÓN DE PLUGINS .............................................................................................25
5.2 INSTALCIÓN DEL PLUGIN BASE.......................................................................................26
5.3 INSTALACIÓN DEL PLUGIN DEL SAMBA...........................................................................27
6.1 INSTALACION BIND .......................................................................................................31
6.2 DHCPD instalación ........................................................................................................35
6.3 CONFIGURACION DEL PLUGIN NETWORK .......................................................................36
7. CONFIGURACION POSTFIX Y DOVECOT.............................................................................40
7.1 INSTALACION DEL PLUGIN MAIL ....................................................................................40
7.2 CONFIGURACION POSTFIX Y DOVECOT...........................................................................41
7.3 CONFIGURANDO SQUIRRELMAIL ...................................................................................46
8. CONFIGURANDO SASL, SSL Y TLS......................................................................................51
8.1 CERTIFICADOS SSL/TLS ..................................................................................................52
9. CONFIGURANDO AMAVIS, CLAMAV Y SPAMASSASING......................................................58
9.1 INSTALACION................................................................................................................58
9.2 CONFIGURACION ..........................................................................................................58
9.3 PRUEBAS ......................................................................................................................60
10. CONCLUSION ................................................................................................................62
11. WEBGRAFIA..................................................................................................................63

3
1. INTRODUCCIÓN

En este trabajo se mostrara de una forma completa la implementación de una


infraestructura de correo segura en el sistema operativo libre CentOS,
utilizando el gestor grafico de Mandriva Directory Server (MDS), como
administrador de los principales servicios como lo son el PDC
(openLDAP/SAMBA), BIND, DHCP, MAIL (Postfix y Dovecot); el servicio de
directorio que se utilizara será el openLDAP en el cual se almacenara la
información de usuarios. Por otro lado se hará la implementación de sasl, ssl y
tls, haciendo funcionar los protocolos smtp, pop3 e imap, de manera segura,
para ello será necesaria la implementación de una entidad certificadora la cual
permitirá encriptar la información enviada a través de estos protocolos.

Este proyecto tiene como finalidad brindar una solución para las empresas que
implementen servidores de correos en Linux ya que el administrador de MDS,
hace más fácil las administración y el buen funcionamiento de los principales
servicios que tiene el servidor de correos.

4
2. OBEJTIVOS

2.1 OBJETIVO GENERAL


Implementar, configurar y gestionar una plataforma de correo segura bajo el
sistema operativo centOS, administrando los recursos de la red por medio de
un servicio de directorio, y manipulando una herramienta vía web llamada
Mandriva Directory Server la cual me permitirá administrar gráficamente
servicios utilizados para el correo.

2.2 OBJETIVOS ESPECÍFICOS

Comprender cada uno de los términos encontrados en el desarrollo del


proyecto, de esta forma tener mas claro lo que estamos implementando.

Instalación de un sistema operativo libre CentOS, en el cual será desarrollado


el montaje del correo seguro.

Instalar y configurar el servicio de directorio ldap y en el almacenar todos los


datos de usuarios y grupos usados para el sistema de correo.

Configurar un PDC utilizando samba, así poblar la base de datos del ldap para
administrar los recursos de red de una manera centralizada.

Desarrollar exitosamente la configuracion del agente y cada uno de los plugins,


así poder ingresar vía web al administrador grafico Mandriva Directory Server.

Configurar e instalar los servicios de red tales como DNS y DHCP, de esta
forma centralizar toda la red en un solo ámbito de direcciones y con el mismo
servidor de resolución de nombres.

Montar el agente de transferencia de correo (MTA) llamado postfix usado en los


sistema libres, para poder enviar correos a través del protocolo smtp utilizado
para el envió de estos.

Configurar el agente de entrega de correo (MDA) llamado Dovecot, para así


obtener de una buena manera la entrega de cada uno de los correos enviados
por el MTA.

Implementar una entidad certificadora la cual permita encriptar cada una de


nuestras comunicaciones, de esta forma permitir la transmisión segura de los
correos.

5
Instalar y configurar lo referente con Antivirus y AntiSpam, para lograr una
mayor seguridad en cada uno de los correos recibidos.

6
3. MARCO TEÓRICO

3.1CentOS
(Community ENTerprise Operating System) sistema operativo compuesto por
software libre y código abierto. Es un clon de Linux Red Had Enterprise, el cual
fue retomado por voluntarios para compilarlo a partir del código fuente que
libero Red Hat.

3.2 PDC
Es un Primary Domain Controller, se trata del controlador de domino principal,
de el dependen los BDC's de tu dominio, solo puede existir un PDC por
dominio y "n" BDC's.

3.2.1SAMBA Es una implementación libre del protocolo de archivos


compartidos de Microsoft Windows (antiguamente llamado SMB,
renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta
forma, es posible que ordenadores con GNU/Linux, Mac OS X o Unix en
general se vean como servidores o actúen como clientes en redes de
Windows. Samba también permite validar usuarios haciendo de
Controlador Principal de Dominio (PDC), como miembro de dominio e
incluso como un dominio Active Directory para redes basadas en
Windows

3.3 MDS
Es una plataforma de directorio o servicio de directorio basado en OpenLDAP,
esta diseñada para cumplir la función de gestionar identidades, control de
acceso a la información, definir políticas administrativas en la red,
administración de servicios de red, las aplicaciones y la configuración de los
usuarios. Este servicio puede correr en diferentes distribuciones de Linux.
Funciona en conjunto con otros servicios, tales como:

3.4 OpenLDAP
(Lightweight Directory Acces Protocol, Protocolo Ligero de Acceso a
Directorios). Como sus siglas lo indica, es un protocolo de tipo Cliente-Servidor
utilizado para acceder a un servicio de directorio; trabaja por el puerto 389.
OpenLDAP se puede definir como una tipo de base de datos. LDAP es el
protocolo propietario de Microsoft, en cambio OpenLDAP hace parte del
software libre o de licencia libre.

7
3.5 PLUGINS
Es una aplicación que se relaciona con otra para aportarle una función nueva y
generalmente muy especifica. Esta aplicación adicional es ejecutada por la
aplicación principal e interactúan por medio de la API.

3.6 SID
(Security Identifier) es un nombre único (una cadena de caracteres
alfanuméricos) que es asignado por controlador de un dominio durante el
registro del proceso que se utiliza para identificar un tema, tal como un usuario
o un grupo perteneciente a la red.

3.7 MMC

Mandriva Management Console hospeda y muestra herramientas


administrativas creadas por Mandriva y por otros proveedores de software.

Estas herramientas se conocen como complementos y sirven para administrar


los componentes de hardware, software y red del sistema. Varias herramientas
de la carpeta Herramientas administrativas, como Administración de equipos,
son complementos MMC.

3.8 Tipo de buzon

Existen dos tipos de buzones utilizados por los servidores de correo: MailDir y
Mbox.

3.8.1 MailDir

Es un tipo de buzon el cual consiste en un directorio ramificado por otros


subdirectorios (tmp, new y cur) de esta forma los mensajes son guardados en
diferentes archivos. Este no bloquea los ficheros para mantener la integridad de
los mensajes puesto que almacena varios ficheros con diferentes nombres.
Generalmente es encontrado en la ruta /home/[USUARIO]/Maildir.

3.8.2 Mbox

Otro tipo de buzon el cual almacena los correos en forma de cola, es decir, este
almancena todos los corres de cierto usuario en un solo archivo; todos los
mensajes que llegan siempre serán almacenados en un solo archivo. Por lo
general se encuentra ubicado en la ruya /var/spool/mail[USUARIO].

8
3.9 Bind

(Berkeley Internet Name Domain) es el servidor de DNS más comúnmente


usado en Internet, especialmente en sistemas Unix. Proporciona una
plataforma sólida y estable sobre la cual las organizaciones pueden crear
sistemas de computación distribuida con el conocimiento de que esos sistemas
son totalmente compatibles con el estándar DNS publicado.

3.10 Dhcpd

(Dynamic Host Configuration Protocol Daemon) es un nombre común para el


demonio que permite a un servidor para proporcionar un servicio DHCP a una
red.

Los clientes pueden solicitar una dirección IP de un servidor DHCP cuando lo


necesitan. El servidor DHCP ofrece el "arrendamiento" de una dirección IP
para el cliente, que el cliente es libre de solicitar o ignorar. Si el cliente lo
solicita y el servidor reconoce que, a continuación, el cliente tiene autorización
para utilizar la dirección IP por el tiempo del "arrendamiento", especificado por
el servidor. En algún momento antes de que expire el contrato de
arrendamiento, el cliente debe volver a solicitar la misma dirección IP si desea
continuar usándolo.

3.11 MTA

Mail Transportation Agent, Aplicación que tiene la función de transmitir correos


electrónicos entre clientes de una red (de un computador a otro).Este es el
servidor de correo que utiliza el protocolo SMTP. Ejemplos de MTA, son:
Microsoft Exchange, Postfix, Sendmail, Qmail, entre otros.

3.12.1 Postfix

Es un Agente de Transporte de Correo (MTA), basado en software libre y


código abierto, es un programa informático para el enrutamiento y envió de
correo electrónico, creado con la intención de que sea una alternativa mas
rápida, fácil de administrar y segura.

3.11.1.1 SMTP (Simple Mail Transfer Protocol, Protocolo Simple de


Transferencia de Correo). Es basado en el intercambio de correos
electrónicos entre computadores, u otros equipos de computo domo
celulares, PDA’s, etc. Tiene un funcionamiento cliente-servidor y utiliza el
puerto 25.

9
3.12 MDA

Mail Delivery Agent. Es un software, el cual permite la entrega del correo


entrante y los distribuye a los buzones de los destinatarios (si la cuenta se
encuentra en la maquina local) o reenvía el correo entrante a un servidor SMTP
(si los destinatarios están en maquinas remotas)

3.12.1Dovecot

Servidor IMAP y POP3 de código abierto para sistemas basados en software


libre. Escrito fundamentalmente para la seguridad. Puede trabajar con mbox,
Maildir y sus propios formatos nativos dbox de alto desempeño.

3.12.1.1 IMAP (Internet Message Acces Protocol, Protocolo de Internet


de Acceso a Mensajes). Es más complejo y mejor que el POP, ya que
permite ver los correos remotamente y no descárgalos al equipo cliente
como lo hace POP, de esta forma si se borra un mensaje desde el
usuario, también se borrara en el servidor, si abrimos un mensaje desde
el cliente también se abrirá en el servidor. Trabaja por el puerto 143.

3.12.1.2 POP (Post Office Protocol, Protocolo de Oficina de Correo). Se


utiliza en los clientes locales de correo con el fin de obtener los correos
que hay almacenados en el servidor remoto, y así, hacer que los correos
se puedan guardar en el equipo cliente. Esta diseñado para recibir, mas
no para enviar correos y utiliza el puerto 110.

3.13 WebMail

Cliente de correo, que utiliza una interfaz vía Web por la cual podemos acceder
a correo electrónico. Es decir, por de un navegador web podemos listar,
desplegar, leer, borrar y enviar correos electrónicos.

3.13.1 SquirrelMail

Es una aplicación WebMail creada por Nathan y Luke Ehresman, escrita en


php. Puede ser instalado en casi todos los servidores web siempre y cuando
tengan soporte para PHP y este tenga acceso a un servidor IMAP y a otro
SMTP.

3.14 MUA

(Mail User Agent), más conocido como Cliente de correo electrónico. Es una
aplicación que se instala en el computador cliente, para así realizar las
funciones de leer y enviar correos electrónicos. Existen varios tipos de MUA’s
como lo son: Microsoft Outlook, Thunderbird, Eudora Mail, Lotus Notes, entre
otros.

10
3.14.1 Mozilla Thunderbird

Es un cliente de correo electrónico de la Fundación Mozilla. El objetivo de


Thunderbird es desarrollar un Mozilla más liviano y rápido mediante la
extracción y rediseño del gestor de correo del Mozilla oficial. Es
multiplataforma, utiliza el lenguaje de interfaz XUL y es software libre.

Thunderbird soporta IMAP/POP, correo HTML, noticias, RSS, etiquetas,


corrector ortográfico incorporado, soporte de extensiones y skins, buscadores,
cifrado PGP, un filtro bayesiano de spam entre otras características.

3.15 SASL

Es un Framework usado para la autenticación y autorización de protocolos de


red. A pesar de ello requiere mecanismos de ayuda tales como TLS para
realizar el cifrado de los datos al momento de ser transferidos.

3.16 SSL\TLS

(Secure Sockets Layer/Protocolo de Capa de Conexión Segura y


Transportation Layer Security/Seguridad de la Capa de Transporte).
Proporcionan seguridad en la red mediante el cifrado de la comunicación.
Postfix/TLS no implementa por sí mismo TLS, éste debe utilizar un paquete
adicional: OpenSSL. Corren por el puerto 636.

3.17 Amavis

Es una interfaz entre el MTA y los filtros de contenido (ClamAV Y


Spamassassin). Éste se comunica con el MTA mediante el protocolo SMTP o
LMTP. Trabajan por el puerto 10025

3.17.1 ClamAV Éste paquete cumple la función de escanear el texto y


los archivos adjuntos del mensaje, de ésta forma el ClamAV bloquea los
malware o códigos maliciosos. La base de datos de éste se encuentra
permanentemente actualizada.

3.17.2 SpamAssasing Es un filtro de correos, el cual cumple la función


de identificar el spam mediante el análisis del texto contenido en el
mensaje.

11
4. INICIO DE INSTALACION DEL CORREO

4.1 CONFIGURACIÓN DE OPENLDAP Y SAMBA

Lo primero que debemos de configurar es el PDC, el cual va ser la aplicación


que administrará los recursos de red.

Procedemos a descargar los paquetes necesarios con la siguiente sintaxis, el –


y significa que a todas las confirmaciones que haga la petición de instalación se
escriba automáticamente y.

>yum install –y openldap openldap-clients openLDAP-servers authconfig


authconfig-gtk samba samba-client samba-common.

Luego de haber instalado los paquetes necesarios para el PDC, copiamos el


archivo DB_CONFIG.EXAMPLE en la ruta /var/lib/ldap/ pero sin la extension
.EXAMPLE. El archivo inicial es un ejemplo de una configuración necesaria
para para las bases de datos del ldap. El fin de realizar esta copia es para que
el servidor realice desde cero las bases de datos del ldap con la configuracion
ya existente en este archivo. Lo copiamos en la ruta indicada porque allí es
donde encuentran las bases de datos ya nombradas.

Luego procedemos a generar la clave para openLDAP en /usr/sbin, ejecutamos


el comando >./slappasswd –s sena2010. (sena2010 es la clave que
generaremos para el administrador del ldap.

Al ejecutar el comando nos aparecerá la contraseña encriptada en la parte de


abajo, esta la copiamos para luego edita el archivo slapd.conf.

Con nano procedemos a editar e archivo slapd.conf.

En este archivo determinamos el nombre del dominio y e l usuario administrador


del LDAP.

En rootpw pegamos la contraseña que copiamos encriptada. Guardamos y


salimos.

12
Lo siguiente a hacer es un archivo llamado >ldap-init.ldif en la ruta /tmp. Este
archivo es necesario crearlo para poder crear la arquitectura de la base del
directorio ldap, es decir, en este archivo se creara la entrada padre y de esta
partirá el proceso para crear las demás entradas y poder poblar el servicio de
directorio.

El archivo debe de contener las siguientes líneas, la contraseña encriptada no


se copia con el {SSHA}. Guardamos y salimos.

Ahora procedemos a configurar el cliente LDAP.

A este archivo especificamos el dominio más la ruta de acceso al servidor.


Guardamos y salimos.

13
Luego reiniciamos el servicio con el comando >etc/init.d/ldap restart. El servicio
al reiniciarse nos pide que le demos permisos a las bases de datos. Para darle
permisos lo hacemos así:

>chown –R ldap:ldap /var/lib/ldap

Procedemos a reiniciar el ldap.

4.1.1 INSTALACIÓN DEL REPOSITORIO RPMFORGE

El uso principal de agregar estos repositorios rpmforge y DAG es para poder


instalar las librerías requeridas para el Mandriva Directory Server.

Este repositorio es indispensable para instalar todas las librerías necesarias


para la ejecución de MDS.

Este repositorio lo buscamos en DAG.

4.1.2 CREACIÓN DEL REPOSITORIO DAG.

14
Es necesario agregar este repositorio para poder instalar ciertos paquetes, lo
hacemos porque los repositorios que vienen por defecto en el CentOS no
tienen los paquetes que necesitamos.

Este repositorio lo agregamos creando un archivo llamado DAG.repo en la ruta


> /etc/yum.reposd. Con las siguientes líneas.

Luego de haber añadido el repositorio RPMFORGE DAG.repo, ejecutamos el


comando

>yum update y cuando cargue le decimos que no especificando la letra N

4.1.3 INSTALACIÓN DE LAS LIBRERIÁS NECESARIAS

Para la implementación del Mandriva Directory Server instalamos las siguientes


librerías:

redhat-lsb
python-twisted
python-ldap
python-libacl
python-psycopg
postgresql-python
squid squidguard

15
mx
python-twisted-web
PyXML
python-fpconst
python-soap
php-xml
php-xmlrpc

4.1.4 CONFIGURACIÓN DEL SAMBA

Para la configuración del archivo smb.conf de SAMBA, debemos descargar de


la pagina ftp://mds.mandriva.org/pub/mds/sources/current/

La carpeta mmc-agent-2.3.2.tar.gz

Clic en aceptar.

16
Procedemos a descomprimirla con el comando > tar –xzvf

En la ruta mmc-agent-2.3.2/contrib/ldap buscamos el mmc.schema y el


samba.schema y los copiamos en /etc/openldap/schema.

Luego de haberos copiado editamos el archivo slapd.conf para que los


reconozca, haciéndole >include a la ruta en donde se encuentran.

Algo que debemos de tener en cuenta es que el include de mmc.schema tiene


que estar debajo de inetorgperson.schema. Guardamos y salimos

17
Luego procedemos a configurar el SAMBA, para esto tenemos que copiar el
archivo smb.conf que esta en la carpeta mmc-agent y luego proceder a editarlo.

Cambiamos los valores Workgroup y Netbiosname por el nombre de nuestro


dominio.

Además especificamos el usuario del LDAP y el dominio nuevamente.

Detenemos el servicio de SAMBA con el comando >etc/init.d/smb stop.

18
Ejecutamos el comando >smbpasswd –w sena2010 en la ruta /usr/sbin. El
comando smbpasswd se utiliza para proporcionarle al samba la contraseña que
tenemos en el administrador del ldap, esto es necesario hacerlo ya que
debemos tener privilegios en el samba para poder poblar el almacén del
directorio.

Luego ejecutamos el comando >net getlocalsid REDES

Para crear un identificador de red para nuestro servidor.

Con el comando >./slapcat | grep sambaDomainName

Podemos ver el nombre de dominio del SAMBA.

Luego iniciamos el servicio >etc/init.d/smb start.

4.1.5 INSTALACIÓN DE SMBLDAP-TOOLS

Esta aplicación la descargamos para poblar la base de datos del LDAP, para
tener mas seguridad al instalarlo ejecutamos el comando >yum search smb-
ldap-tools.

Luego ejecutamos el comando >yum install smbldap-tools.noarch

Ya que tenemos instalado el smbldap-tools, nos vamos a > /etc/smbldap-tools/


y editamos el archivo smbldap_bind.conf.

19
Este archivo contiene las credenciales que necesitamos para poder escribir en
nuestro directorio, y el password necesario para ingresar y hacer la operación
nombrada anteriormente. En nuestro caso el cn=sena, el dc=redes, dc=com. Y
el password es sena2010.

Luego procedemos a editar el archivo smbldap.conf. en este archivo


cambiamos los valores por los nuestros:

SID

sambaDomainName

LdapTLS

Suffix

sambaUnixIdpooldn

20
4.1.6 POBLANDO LDAP

Procederemos a poblar la base de datos y simultáneamente crear un usuario


llamado administrator en el mismo directorio; lo hacemos con el
comando>./smbldap-populate –m 512 –a administrator;

21
4.1.7 CONFIGURACION DE NSSWITCH.CONF

Para la configuracion del nss primero modificaremos el archivo que se


encuentra en /etc, llamado nsswitch.conf este archivo lo modificamos porque
allí se encuentran las bases de datos del sistema y el sistema de conmutación
del servicio de nombres, es decir, al modificar este archivo permitiremos al
sistema operativo utilizar las cuentas de usuarios y grupos que se encuentran
en el directorio ldap.

22
Luego de tener listo la configuracion del nsswitch.conf procedemos a editar el
ldap.conf que se encuentra en /etc.

En este archivo editamos la linea base y especificamos el dominio de nuestro


equipo.

23
Luego de haber hecho esto procedemos a darle privilegios al usuario
administrator con el siguiente comando.

>net -U administrator rpc rights grant 'REDES\Domain Admins'


SeMachineAccountPrivilege

24
5. INSTALACIÓN DEL MMC-AGENT-2.3.2

Nos dirigimos a la ruta donde esta descargado el paquete y luego lo


descomprimimos con la sintaxis >tar xzvf, entramos a la carpeta del mmc.

tar xzvf mmc-agent-2.3.2.tar.gz


Luego ingresamos al directorio que acabamos de descomprimir, y allí
realizamos el comando make install.

cd mmc-agent-2.3.2 y luego make install


Y ya hemos instalado el mmc-agnet-2.3.2

Algo primordial es crear las siguientes carpetas, la más importante es


>archives. Si no se crean el mmc-agent nunca correrá.

5.1 INSTALACIÓN DE PLUGINS

Después de haber instalado nuestro agente (mmc-agent-2.3.2), procedemos a


instalar los plugins necesarios para su correcto funcionamiento, para ello
descargamos los siguientes plugins:

ftp://mds.mandriva.org/pub/mds/sources/current/
En esta dirección podemos descargar todos los plugins.

mmc-web-base-2.3.2

mmc-web-samba-2.3.2
mmc-web-network-2.3.2

mmc-web-mail-2.3.2

En el orden que los mencioné procedere a configurarlos para hacerlo mas


ordenado.

25
5.2 INSTALCIÓN DEL PLUGIN BASE

Este es el plugin más importante al momento de ejecutar el mmc -agent, ya que


si el base no carga no podrán cargar ninguno de los demás plugins.

Una vez hayamos descargado el paquete, procedemos a descomprimirlo de la


siguiente forma:

Luego entramos en la carpeta descomprimida

Luego hacemos >make install HTTPDUSER=apache.

Con este comando ya queda instalado el mmc -web-base, ahora procedemos a


configurar el archivo base.ini en /etc/mmc/plugins/base.ini.

Procedemos a editarlo.

En este archivo modificaremos el host, el baseDN (entrada padre), rootName


(el cn) y el password del cn. Todo esto nos sirve para poder cargar las
configuraciones del plugin base con las configuraciones del ldap.

26
5.3 INSTALACIÓN DEL PLUGIN DEL SAMBA

Para la instalación de mmc-web-samba-2.3.2, lo descomprimimos con el


comando >tar xzvf y luego entramos a la carpeta para hacer >make install

Luego procedemos a editar el archivo en /etc/mmc/plugins/samba.ini

El principal cambio es en el script de inicio el cual siempre será >smb, y


obviamente especificamos nuestro dominio y donde se encuentra el archivo de
configuración, como podemos observar en la siguiente imagen.

27
Luego en el archivo de configuración de samba editamos la ruta de los
siguientes ficheros, la cual es /usr/local/lib/mmc. Por defecto viene configuradas
sin el local este se lo debemos de especificar.

28
Luego iniciamos el modo debug para probar si los plugins están cargando.

29
6. CONFIGURACION DE BIND_LDAP Y DHCPD_LDAP

Debemos configurar en nuestro servidor una ip estática.

También modificamos los archivos hosts y resolv.conf de la siguiente manera:

Este debe llevar un nombre de equipo y el dominio.

El resolv.conf debe llevar la dirección del servidor de nombres y el dominio.

Luego reiniciamos los servicios del network (para que tome los cambios
realizados en la dirección ip).

30
6.1 INSTALACION BIND

Cuando vamos a trabajar con Bind y Dhcpd, estos paquetes deben de estar
previamente parchados para que funciones con ldap ya que a los paquetes
comunes se le debe de hacer el parche manualmente.
Para compilar el bind_ldap debemos de instalar estas librerías, que son las que
harán posible la instalación del bind_ldap.

Ya que las tengamos procedemos con la instalación

BIND primeros pasos:

Uno de los primeros pasos es enjaular el usuario named en la ruta


/chroot/named.

Luego procedemos a crear el grupo named. En /etc/group.

Ahora procedemos a crear las rutas donde trabajará nuestro servidor, y


asignamos permisos así como se muestra.

Luego procedemos a modificar el archivo s yslog, en /etc/sysconfig/syslog.

Modificamos la linea de SYSLOGD_OPTIONS.

31
Reiniciamos el servicio syslog y asignamos permisos a la carpeta del bind
como se ve en la imagen:

Asignamos permisos al usuario y grupo named, al directorio named.

BIND instalación:

Ya que tengamos el paquete del bind_ldap descargado, procedemos a


descomprimirlo.

Entramos a la carpeta descomprimida del bind y compilamos con el comando


./configure.

Luego hacemos make install

Limpiamos el archivo de configuración del Bind para agregar nuestras nuevas


líneas. Y luego lo editamos.

32
El archivo debe llevar la siguiente configuracion:
#!/bin/sh
#
# named This shell script takes care of starting and stopping
# named (BIND DNS server).
#
# chkconfig: 345 55 45
# description: named (BIND) is a Domain Name Server (DNS) \
# that is used to resolve host names to IP addresses.
# probe: true
#
# Source function library.
. /etc/rc.d/init.d/functions
#
# Source networking configuration.
. /etc/sysconfig/network
#
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
#
[ -f /usr/local/sbin/named ] || exit 0
[ -f /chroot/named/etc/named.conf ] || exit 0
#
# See how we were called.
case "$1" in
start)
# Start daemons.
echo -n "Starting named: "
daemon /usr/local/sbin/named -u named -t /chroot/named -c /etc/named.conf
echo
touch /var/lock/subsys/named
;;
stop)
# Stop daemons.
echo -n "Shutting down named: "
kill `pidof named`
echo
rm -f /var/lock/subsys/named
;;
status)
status named
exit $?
;;
restart)
$0 stop
$0 start
exit $?

33
;;
reload)
/usr/local/sbin/rndc reload
exit $?
;;
probe)
# named knows how to reload intelligently; we don't want linuxconf
# to offer to restart every time
/usr/local/sbin/rndc reload >/dev/null 2>&1 || echo start
exit 0
;;
#
*)
echo "Usage: named {start|stop|status|restart|reload}"
exit 1
esac
#
exit 0

Ejecutamos el siguiente comando y añadimos el bind que en CentOS se


llamará named a la lista de arranque. Este se agregar en /sbin.

Ahora vamos a modificar el archivo named.conf, el cuál contendrá las rutas de


las zonas.

34
6.2 DHCPD instalación

El dhcp lo instalamos desde un paquete .rpm previamente parchado, el


comando para instalarlo es: rpm-Uvh

El archivo de configuración del dhcp se encuentra en la carpeta del mmc-agent


en /contrib/dhcpd. El archivo dhcpd.conf lo copiamos en /etc.

Procedemos a editarlo.

35
En este archivo se llevara las configuraciones para que el dhcp trabaje junto
con el ldap, allí indicaremos el servidor ldap, también el puerto utilizado, el cn
del directorio y su password, la base de su dn, un método dinamico del ldap, un
lugar en el que se encuentran los logs del dhcp y que permita actualizaciones
con el dns.

Editamos el archivo de inicio del dhcpd.

En este archivo moficamos la línea que muestra el archivo en donde se dan las
concepciones del dhcp, ya que por defecto viene configurado con la ruta
/var/lib/dhcp/dhcp.leases, el cambio a realizar será añadir una d al final de
dhcp, ya que nuestra carpeta de concepciones se llama dhcpd y su archivo es
nombrado dhcpd.leases

6.3 CONFIGURACION DEL PLUGIN NETWORK

Copiar los schemas de DNS y Dhcp en /etc/openldap/schema.


Luego hacemos los includes en el archivo slapd.conf.

36
Agregamos las siguientes líneas necesarias para el funcionamiento del plugin
de network. Estas líneas indican el nombre de la unidad organizativa creada
para ambos servicios, también un numero de proceso, su ruta para reiniciar su
servicio, donde están ubicados los logs, por parte del dhcp en donde se brindan
las concepciones, y por el caso del bind donde esta enjaulado este y su grupo.

37
Reiniciamos el ldap para que tome los cambios que hemos realizado.

Lo siguiente será ingresar al Mandriva Directory Server, y desde allí crear las
zonas y el ámbito del dhcp para que estos servicios queden totalmente
configurados. Ingresamos por medio de http://localhost/mmc y luego el usuario
root y la contraseña (credencial del ldap).

Lo siguiente será crear el ámbito y la zona del dhcp y DNS respectivamente.


Esta lo hacemos por medio del ámbito grafico de Mandriva Directory Server.
Damos clic en añadir zona DNS; y allí llenaremos lo indicado que son:
FQDN, descripción (opcional), nombre del equipo (el agregado en hosts), la ip
del servidor, la dirección de red (este tiene la función de crear el ámbito
automáticamente), y la mascara de red.

38
Luego iniciamos los servicios de DNS y dhcp, por medio de la consola de mds.
Damos clic en gestión de servicios de red y allí iniciamos los servicios.

39
7. CONFIGURACION POSTFIX Y DOVECOT

7.1 INSTALACION DEL PLUGIN MAIL

Lo primero será descomprimir el plugin del mail. Y luego instalarlo.

Luego modificamos las siguientes líneas en el archivo que se encuentra en


/etc/mmc/plugins/mail.ini
Ejecutamos nano /etc/mmc/plugins/mail.ini
Y luego procedemos a modificarlo. Los parámetros modificados son los que
esta encerrados en el recuadro azul, los cuales son habilitar el plugin e indicar
el dominio.

Después ingresamos a la carpeta /home/sena/Desktop/mmc-agent-


2.3.2/contrib/ldap y desde allí copiamos el schema del mail.

Lo siguiente será agregar el include en el archivo sladp.conf

40
Luego reiniciamos para que el ldap cree las unidades organizativas para el
plugin del mail. Damos el comando reboot.

Después de que vuelva a iniciar el sistema, reiniciamos todos los servicios e


ingresamos al Mandriva Directory server y observamos que las ou del mail han
sido creadas.

7.2 CONFIGURACION POSTFIX Y DOVECOT

Primero instalaremos el paquete del postfix

Luego procedemos a copiar los archivos necesarios que se encuentran en la


capeta mmc-agent

41
Entramos en la carpeta with-virtual-domains copiamos todos los archivos que
allí aparecen a la carpeta /etc/postfix.

Luego vamos a la carpeta del postfix en /etc/postfix.

Y editamos el archivo main.cf

En este archivo modificamos unas linease necesarias para el funcionamiento


del postfix las cuales son: el nombre de host, el destino al cual se enviaran los
correos y unos enlaces creados para que se enlacen los archivos que inician
con el nombre de ldap___.cf, dichos archivos mencionados tienen un uso
especifico, el cual es que permite trabajar con dominios virtuales y permite al
postfix almacenar datos en el servicio de directorio. El archivo debe quedar de
la siguiente forma:

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)


biff = no

# appending .domain is the MUA's job.


append_at_myorigin = yes
append_dot_mydomain = no

myhostname = sena.redes.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = sena.redes.com,sena,localhost.localdomain,localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
luser_relay =

# Virtual Domains Control


virtual_mailbox_domains = ldap:/etc/postfix/ldap-domains.cf

42
virtual_mailbox_maps = ldap:/etc/postfix/ldap-accounts.cf
virtual_alias_maps = ldap:/etc/postfix/ldap-aliases.cf, ldap:/etc/postfix/ldap-
maildrop.cf
virtual_mailbox_base = /
virtual_alias_domains =
virtual_minimum_uid = 100
virtual_uid_maps = ldap:/etc/postfix/ldap-uid.cf
virtual_gid_maps = ldap:/etc/postfix/ldap-gid.cf

También debemos editar los archivos que copiamos, los cuales son llamados
ldap...

En estos archivos editaremos la configuracion de nuestro dominio, lo mismo


para todos.

Luego editaremos el archivo dovecot.conf

Editaremos las siguientes líneas: (por lo general los cambios son o des
comentar las líneas o cambiar cierto parámetro)

base_dir = /var/run/dovecot/

protocols = imap imaps

protocol imap {
listen = *:143
}
listen = 0.0.0.0
disable_plaintext_auth = no
log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot-info.log
log_timestamp = "%b %d %H:%M:%S "
login_dir = /var/run/dovecot/login
login_chroot = yes
login_user = dovecot
login_processes_count = 3
login_max_connections = 110
login_greeting = sena.redes.com mailserver is ready.
mail_location = maildir:~/Maildir
mail_debug = yes
mail_debug = yes
maildir_copy_with_hardlinks = yes
protocol imap {
imap_client_workarounds = outlook-idle
}
protocol lda {
postmaster_address = administrator@redes.com
hostname = sena.redes.com
}

43
auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
auth default {
mechanisms = plain login
}
passdb ldap {
args = /etc/dovecot.ldap
}
userdb pass wd {
args = /etc/dovecot.ldap
}
userdb ldap {
args = /etc/dovecot.ldap
}
user = root
socket listen {
master {
path = /var/run/dovecot/auth-master
mode = 0600
user = postfix
group = postfix
}
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}

Luego crearemos el archivo dovecot.ldap

En este archivo se almacenan las claves del ldap, para permitirle al dovecot
ingresar a las bases de datos del ldap.

Modificaremos los parámetros hosts, el dn y el password del cn para ingresar al


servicio de directorio.

44
También debemos añadir unas líneas en el archivo /etc/postfix/master.cf, las
cuales sirven para que el postfix trabaje junto con el dovecot.

Debemos deshabilitar y desinstalar el Sendmail, para que el postfix sea el único


que quede habilitado en el sistema y no se cause conflicto.

Primero detendremos el servicio.

Luego lo deshabilitamos.

Y procedemos a desinstalar.

Después de esto probaremos el postfix y el dovecot por medio de consola.

Primero el postfix, con el comando telnet (nombre del equipo) (protocolo)

45
Luego el dovecot con el mismo comando.

7.3 CONFIGURANDO SQUIRRELMAIL

Instalaremos el SquirrelMail, con el comando yum install SquirrelMail

Luego de que finalice la instalación configuraremos el SquirrelMail, el cual lo


hacemos por medio del siguiente comando

Se inicia un tipo de consola en el cual lo primero que haremos será dar C para
que podamos observar los parámetros.

46
Damos 2 para ingresar a las configuraciones del server.

Y allí modificaremos el dominio, y elegir entre Sendmail, smtp (en nuestro caso
será smtp)

Lo siguiente será ingresar al SquirrelMail, y probar que si se pueda enviar y


recibir un correo (de esta manera estaremos comprobando el correcto
funcionamiento en conjunto del dovecot, postfix y SquirrelMail)

47
Ingresamos a http://localhost/webmail y luego nos logueamos con mario y le
enviaremos un correo a giovanny@redes.com, después ingresaremos al
WebMail con giovanny y el correo enviado nos debe haber llegado.

48
49
50
8. CONFIGURANDO SASL, SSL Y TLS

Lo primero que haremos será configurar el sasl, lo hacemos añadiendo unos


parámetros en el archivo /etc/postfix/main.cf

Los parámetros a añadir son los siguientes. Estos parámetros sirven para
permitirle al servidor y cliente trabajar con sasl.

smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous

smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination

Luego reiniciamos los servicios del dovecot y el postfix.

/etc/init.d/postfix restart

/etc/init.d/dovecot restart

Para sasl realizamos estas pruebas codificando y decodificando los password,


si todo funciona bien aparecera como la siguiente imagen. De allí
procederemos a probar el postfix.

Para probar el postfix accederemos a el por medio de consola con el comando


telnet sena smtp. Luego ejecutamos el comando ehlo sena, y observamos que
el servicio AUTH PLAIN este iniciado. Y de allí autenticaremos con el usuario y
password encriptado y nos debe permitir hacer esta operación.

51
8.1 CERTIFICADOS SSL/TLS

Primero instalamos la herramienta para generar certificados con el comando


yum install crypto-utils.

Luego de instalar esta herramienta continuamos generando el certificado con el


comando genkey --days 365 sena.redes.com (nuestro dominio)

Se inicia el asistente para generación de certificados:

Seguimos los pasos indicados en las siguientes imágenes

52
Acá observamos cuando esta generando el certificado

En el siguiente pantallazo se muestra cuando elegimos la entidad certificadora,


en este caso es Equifax.

53
En este paso del asistente, llenamos los parámetros con nuestra información.

Acá podemos observar el certificado generado.

54
Lo siguiente será agregar unos parámetros al archivo main.cf que se encuentra
en /etc/postfix.

Añadimos las siguientes líneas.

Nota: las rutas indicadas en los parámetros smtpd_tls_key y cert, son las que
rutas que nos dio la generación de los certificados digitales.

Reiniciamos el postfix, y continuamos probándolo, por medio de telnet y con el


comando ehlo sena. (Allí nos debe aparecer iniciado el STARTTLS).

55
Luego configuraremos unos parámetros en el archivo del dovecot que se
encuentra en /etc/dovecot.conf.

Cambiamos y des comentamos las siguientes líneas. En estas líneas son


indicadas las rutas donde se encuentran la llave y el certificado generado.

56
Reiniciamos el servicio del dovecot.

57
9. CONFIGURANDO AMAVIS, CLAMAV Y SPAMASSASING

9.1 INSTALACION

Primero instalaremos los siguientes paquetes con el comando

“yum install amavisd-new clamav clamav-devel clamd spamassassin”

Si todo quedo instalado correctamente 2 usuarios nuevos debieron haber sido


creados en el sistema ClamAV y Amavis como lo vemos en la imagen.

El usuario ClamAV debe pertenecer al grupo Amavis esto se hace


automáticamente después de la instalación si no lo pueden hacer con el
siguiente comando

“gpasswd-a clamav amavis”

9.2 CONFIGURACION

La configuración del ClamAV se almacena etc / clamd.conf

Y entramos con el comando nano /etc/clamd.conf y editamos la siguiente línea.

58
La configuración de Amavisd-new la vamos a encontrar en / etc / amavisd.conf

Con el comando nano /etc/amavisd.conf des comentamos esta linea y la


cambiamos por el nombre de FQDN.

Esta línea también esta en amavisd.conf, la des comentamos y colocamos el


nombre de nuestro dominio.

En esta parte tenemos q des comentar estas líneas dentro del mismo archivo
de configuración amavisd.conf

Ahora procedemos a configurar el postfix, para que el correo pueda pasar a


amavisd-new y sea filtrado, agregamos estas líneas dentro del archivo de
configuración /etc/postfix/master.cf este servicio que agregamos es conocido
como "amavisfeed".

Despues de haber hecho todos los cambios necesarios en el postfix


procedemos a reiniciar el servicio con el comando /etc/init.d/postfix restart.

Ya después de que en el postfix todo este funcionando correctamente


procedemos a agregar una linea al archivo de configuración /etc/postfix/main.cf.

59
Después de haber agregado esta linea volvemos de nuevo a reiniciar el postfix.

Después de haber reiniciado el postfix listamos los logs para ver si todo esta
funcionando correctamente, con el siguiente comando miramos los logs del
correo

Tail –f /var/log/maillog.

9.3 PRUEBAS

Ya todo esta bien configurado y a continuación haremos las pruebas de los


servicios que hemos acabado de instalar y configurar.

Primero tenemos que iniciar el servicio del clamd con el comando


/etc/init.d/clamd start

Ahora probamos que el amavisd este escuchando por el puerto 10024.

Esto lo probaremos con el comando “Telnet localhost 10024”

60
Si todo esta funcionando correctamente debemos ver lo anterior.

61
10. CONCLUSION

Es muy importante resaltar que gracias a este proyecto hemos adquirido


conocimientos más extensos en lo relacionado a servicio de directorios, samba,
mta, mda, mua, antispam, antivirus, tls/ssl, entre otros.

Al desarrollar la implementación de este servidor de correo, nos damos por


enterado como configurar la plataforma de correo basada en centOS para que
su funcionamiento sea totalmente correcto y utilice la autenticación de sus
usuarios, sus buzones, los protocolos usados para la comunicación del
servidor-cliente, su filtro AntiSpam y AntiVirus, la forma de las bases de datos
usadas por el servicio de directorio ldap y los servicios de red tales como DNS
y DHCP.

Por otro lado nos dimos cuenta de la gran importancia de tener la seguridad
habilitada en este servidor de correo, ya que gracias a ella la conexión del
cliente con el servidor se ejecuta por una conexión segura y con la ayuda de
esta se hace la comunicación cifrada y es enviada por medio de un canal
seguro (SSL/TLS) de esta manera evitaremos sufragios de información,
suplantación y robo de las cuentas de correo de los clientes. También cabe
afirmar que un paso muy importante para un servidor de correo es tener la
configuración del antivirus y el antispam de una manera correcta ya que de
esta forma, evitaríamos daños en los equipos clientes y en el servidor, y con
respecto al spam no tendríamos tanta información “basura” en cada buzón de
los usuarios.

Es muy importante nombrar la importancia de utilizar la administración grafica


Mandriva Directory Server, ya que por medio de ella se facilito mas el uso de
los servicios de red tales como DNS y DHCP, también se permitió administrar
gráficamente cada uno de los usuarios y grupos utilizados en el servicio de
directorio.

Para concluir, bastaría con decir que este trabajo ha sido uno de los mas
complicados de desarrollar, ya que no se esta acostumbrado al sistema
operativo manejado, se presentan demasiados errores en la instalación del
servidor de correo, pero a pesar de ello estas dificultades se convierten en
fortalezas, ya que así desarrollamos mas el aprendizaje y manejo para los logs,
y demás cosas de importancia para el desarrollo del proyecto. A pesar de estas
dificultades es muy importante decir que cada uno de los objetivos planteados
para este proyecto fueron logrado con éxito y de esta forma adquirimos
habilidades en todo lo relacionado con correo seguro.

62
11. WEBGRAFIA

http://wiki.centos.org/HowTos/

http://pheriko.blogspot.com/

http://mds.mandriva.org/wiki/Documentation

http://www.wikipedia.org/

http://www.linuxparatodos.net/portal/staticpages/index.php?page=como-squirrelmail

http://negociomivida.com/

http://crazytoon.com/2007/06/21/bind-quick-install-guide-to-install-and-setup-bind-
dnsserver-in-secure-chroot-environment-in-linux-centos-redhat-enterprise-rhel-fedora/

63

You might also like