SlideShare una empresa de Scribd logo
1 de 92
Descargar para leer sin conexión
PROYECTO
      PLATAFORMA DE CORREOS SOBRE LINUX DEBIAN


                Administración de Redes de Computadores




Presentado por:
                          Rafael Emiro Vega Tirado.
                        Jeyson Andrey Henao Alvarez.
                       Jonathan Andrés Loaiza García.
                      César Augusto Pineda González.
                        Leidy Marcela Martinez Alzate.


                            Grupo: 9 HELP LAN




Presentado a:
                         Prof. Andrés Mauricio Ortiz.




            Servicio Nacional de Aprendizaje “SENA”
                            Regional Antioquia
                  Centro de Servicios y Gestión Empresarial.


                                    2008
Proyecto Plataforma de Correos.


                                     ÍNDICE


                                                           Página.
1 Introducción.                                            4
2 Objetivos.                                               5
       2.1 Objetivo General.                               5
       2.3 Objetivos Específicos.                          5
3 Conceptos Teóricos.                                      6
       3.1 MTA.                                            6
       3.2 MDA.                                            6
       3.3 MUA.                                            6
       3.4 WEBMAIL.                                        7
       3.5 Postfix.                                        7
       3.6 Dovecot.                                        7
       3.7 Amavis-New.                                     8
       3.8 SASL.                                           8
       3.9 SSL Y TLS.                                      8
       3.10 Squirrelmail.                                  8
       3.11 Tipos De Buzones Para El Correo.               9
                 3.11.1 Mailbox.                           9
                 3.11.2 Maildir.                           9
       3.12 Mandriva Directory Server “MDS”.               10
       3.13 Cómo Trabaja El Servidor De Correos.           11
4 Descripición De Los Paquetes A Utilizar.                 12
5 Instalación.                                             14
       5.1 Preparación Del Sistema.                        14
       5.2 Hostname.                                       14
       5.3 Filesystem ACL´s.                               15
       5.4 Repositorios.                                   16
       5.5 Instalación De Los Paquetes A Utilizar.         18
6 Configuraciones.                                         27
       6.1 Configuración Del LDAP.                         27
       6.2 Configuración De Samba.                         33



                                                                             2
Proyecto Plataforma de Correos.

       6.3 Configuración Del PAM LDAP.                    43
       6.4 Configuración DNS (BIND9).                     46
       6.5 Configuración DHCP.                            46
       6.6 SSL Para El Correo (Entidad Certificador).     47
       6.7 Configuración SASL.                            48
       6.8 Configuración Postfix.                         50
       6.9 Configuración De Dovecot.                      55
       6.10 Configuración De Amavis.                      58
       6.11 Configuración De Spamassassin.                60
       6.12 Certificados SSL.                             62
       6.13 Configuración Sitio Web MMC.                  62
       6.14 Configuración Sitio Web Squirrelmail.         65
       6.15 Configuración Plugin MMC.                     68
       6.16 Interfaz MMC.                                 71
7 Configuración Del Lado Del Cliente.                     83
8 Comprobación Del Servidor De Correos.                   86
       8.1 Usuarios Y Dominios Virtuales.                 86
       8.2 Comprobación Antispam.                         89
       8.3 Comprobación Antivirus.                        90
9 Conclusión.                                             91
10 Bibliografía.                                          92




                                                                            3
Proyecto Plataforma de Correos.


                            1 INTRODUCCIÓN

En éste proyecto presentaremos una guía avanzada de cómo instalar y
configurar una plataforma o sistema de correos segura utilizando el MTA
Postfix, Dovecot (IMAP y POP3), Amavis-New (Spamassassin y ClamAV), TLS,
OpenSSL, SASL, Squirrelmail. De igual forma, se debe instalar y configurar un
Servicio de Directorios para poder autenticar y almacenar la base de datos de
los usuarios, para esto se utilizará la base de datos de OpenLDAP la cual será
administrada desde el servicio de directorio de Mandriva Directory Server. Todo
lo anterior estará instalado y configurado sobre el Sistema Operativo
GNU/Linux Debian.




                                                                             4
Proyecto Plataforma de Correos.


                                 2 OBJETIVOS


2.1 OBJETIVO GENERAL


Se debe diseñar, implementar y gestionar un sistema o plataforma de correos
en el Sistema Operativo GNU/Linux Debian.


2.2 OBJETIVOS ESPECÍFICOS


Se debe presentar un manual de configuración del sistema de correos. En cuyo
manual se debe tener en cuenta los siguientes objetivos en lo que se enfocará
el proyecto.
   •   Cifrar el tráfico entre usuarios y servidor.
   •   Validar los usuarios contra un sistema de directorios.
   •   Almacene los correos de los usuarios en un sistema de directorios.
   •   Permita configurar usuarios y dominios virtuales.
   •   Soporte un sistema de antivirus, antispam y antimawalre.
   •   Soporte administración gráfica.
   •   Soporte acceso POP, IMAP y Webmail (Realizarlo de forma segura con
       SSL).




                                                                                5
Proyecto Plataforma de Correos.


                         3 CONCEPTOS TEÓRICOS


3.1 MTA
Mail Transportation Agent, Agente de Transporte de Correo. Es una aplicación
que cumple la función de transferir correos electrónicos de una computadora a
otra. En si, éste es el servidor de correos que utiliza el protocolo SMTP. Dentro
de MTA´s están: Microsoft Exchange, Postfix, Sendmail, Qmail, Exim, entre
otros.


   •     SMTP:    (Simple    Mail   Transfer   Protocol,   Protocolo   Simple   de
         Transferencia de Correos). El cual se basa en el intercambio de correos
         electrónicos entre equipos de cómputo, entre otros dispositivos como los
         son los celulares, PDA´s, etc. Éste se basa en la estructura Cliente-
         Servidor. Trabaja por el puerto 25


3.2 MDA


Mail Delivery Agente, Agente de Entrega de Correo. Un MTA del destinatario
entrega el correo electrónico al servidor de correo entrante (Otro MTA), cuando
esto sucede, servidor de correo entrante recibirá el nombre de MDA, el cual
almacena el correo electrónico mientras espera que el usuario lo acepte.


3.3 MUA


Mail User Agent, Agente Usuario de Correo. Es un programa, que se instala en
la computadora del usuario, con el fin de realizar las funciones de leer y enviar
correos electrónicos. Dentro de éstas características están: Microsoft Outlook,
Mozilla Thunderbird, Eudora Mail, Incredimail, Lotus Notes, entre otros.




                                                                                 6
Proyecto Plataforma de Correos.


3.4 WEBMAIL


Es un cliente de correo electrónico, el cual provee una interfaz Web con el fin
de acceder a los correos electrónicos; es decir, con ésta aplicación podemos
ingresar, leer, enviar correos electrónicos vía Web.


3.5 Postfix.


Es un MTA de código abierto, utilizado para el envío de correos electrónicos
utilizando el protocolo en SMTP, el cual pretende ser fácil en su administración,
ser rápido y, algo importante, ser compatible con otros MTA como Sendmail,
Qmail, Exim, entre otros.
Postfix no es un programa monolítico, sino que utiliza una gran combinación de
paquetes; dichos paquetes cumple una función específica en los parámetros de
configuración.


3.6 Dovecot.


Simplemente es un Servidor POP/IMAP. Éstos son utilizados para recuperar los
mensajes de los servidores MDA.


   •   POP: (Simple Mail Transfer Protocol), utilizado en los clientes locales de
       correo con el fin de obtener los correos almacenados en un servidor
       remoto, de ésta forma, los correos se pueden guardar en el equipo
       cliente, aunque nada impide dejar los correos en el servidor. Trabaja en
       el puerto 110


   •   IMAP: (Internet Message Access Protocol), Es más complejo y obtiene
       ciertas ventajas sobre POP por ejemplo: Permite visualizar los correos
       remotamente y no descargarlos al equipo cliente como lo hace POP, de
       tal forma que si se borra un mensaje desde un usuario se borrará en el
       servidor, si abrimos un mensaje desde el cliente también se abrirá en el
       servidor. Trabaja en el puerto 143


                                                                               7
Proyecto Plataforma de Correos.


3.7 AMAVIS-NEW


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
   •   Spamassassin: 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.
   •   ClamaAV: É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.8 SASL


Es un Framework utilizado para la autenticación y autorización de protocolos de
red. Sin embargo requiere mecanismos de ayuda como lo es TLS para realizar
el cifrado de los datos al momento de ser transferidos.


3.9 SSL Y 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.10 SQUIRRELMAIL


Es un WebMail o cliente Web, el cual cumple la función de revisar y enviar
correos desde una interfaz Web.




                                                                             8
Proyecto Plataforma de Correos.


3.11 TIPOS DE BUZONES PARA EL CORREO


Los servidores de correo utilizan uno de los dos tipos de buzones: Mailbox y
Maildir.


3.11.1 MAILBOX:
Es un tipo de buzón que almacena los correos en forma de cola, es decir, éste
almacena todos los correos de un respectivo usuario en un solo archivo; de
ésta forma todo correo, sea spam, enviado o recibido se al macerarán en ese
único archvio. Cada usuario, por lógica tiene su propio archivo. En Linux De-
bian éste archivo está ubicado en la siguiente ruta /var/spool/mail/[USUARIO].


3.11.2 MAILDIR:
Es otro tipo de buzón consiste en un directorio, en el cual existen otros
subdirectorios en los que van guardados los mensajes en diferentes archivos.
De ésta forma los mensajes spam, enviados o recibidos se almacenarán en
archivos distintos. En Linux Debian generalmente el archivo Maildir se
encuentra en la siguiente ruta /home/[USUARIO]/Maildir.




                                                                                 9
Proyecto Plataforma de Correos.


3.12 MANDRIVA DIRECTORY SERVER “MDS”


Es una plataforma de directorio o servicio de directorio basado en OpenLDAP
diseñado 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
servios de red, las aplicaciones y la configuración de los usuarios. Éste servicio
de directorio puede correr sobre diferentes distribuciones de Linux, en pocas
palabras, se puede instalar y configurar tanto en la distribución de Linux
Mandriva como en Linux Debian, entre otras.
Se puede dar una breve explicación mediante la siguiente gráfica a cerca del
funcionamiento de éste.


   •   Servicio de Directorios: Es un repositorio de información estructurado
       que cumple la función de almacenar y organizar la información de los
       usuarios en la red de datos. Por medio del SD se logra el acceso a los
       recursos sobre una red.


   •   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.


   •   Directorios: Es una base de datos, que en general contiene información
       más descrita basada en atributos.




                                                                               10
Proyecto Plataforma de Correos.


3.13 CÓMO TRABAJA EL SERVIDOR DE CORREOS


Cuando un correo electrónico es enviado, el mensaje se enruta de servidor al
servidor hasta llegar al servidor de correo destinatario, de ésta forma, el
mensaje se envía al servidor de correo (MTA), el cual tiene como función de
transportar los mensajes hacia el MTA destinatario. En Internet los servidores
MTA se comunican mediante el protocolo SMTP, por lo que también son
llamados servidores SMTP o servidores de correo saliente.


Luego el MTA destinatario entrega el correo electrónico al MDA o servidor de
correo entrante; éste almacena el mensaje mientras espera que el usuario lo
acepte. Los servidores MDA también reciben el nombre de servidores
POP/IMAP.




                                                                           11
Proyecto Plataforma de Correos.


4. DESCRIPCIÓN DE LOS PAQUETES A UTILIZAR


Para la instalación del MDS junto con la plataforma de correo se deben instalar
ciertos paquetes, por consiguiente, se deberá realizar una pequeña explicación
de la función de cada paquete.


   •   Mmc-web-base mmc-web-mail mmc-web-network mmc-web-proxy
       mmc-web-samba mmc-agent: Son los paquetes utilizados para la
       administración gráfica del servicio de directorios como tal.
   •   Python-mmc-plugins-tools        python-mmc-base         python-mmc-mail
       python-mmc-network python-mmc-proxy python-mmc-samba: Son
       las librerías de Python (Lenguaje de programación), utilizados para
       comprender el lenguaje de los paquetes mmc.
   •   Postfix: es el MTA como tal.
   •   Postfix-ldap: es el esquema del Postfix con el fin de ser utilizado para
       ser poblado en la base de datos del LDAP.
   •   Dovecot-common, dovecot-imapd, dovecot-pop3d: Contienen los
       servicios de POP3 e IMAP.
   •   Amavisd-new: Es el paquete que contiene la interfaz entre el MTA y los
       filtros.
   •   Lzop, zoo, unzip, unrar, unzoo, arj, gzip, bzip2, nomarch: Utilidades
       compresor de archivos.
   •   Razor, pyzor, dcc: Son las bases de datos, ubicadas en Internet, que
       contienen las listas de spam. De ésta forma Éstos le indican a
       Spamassassin qué debe detectar como spam.
   •   Sasl2-bin, libsasl2, libsasl2-modules: Utilizado para la autenticación y
       autorización de algunos protocolos de red, depende de sus respectivas
       librerías.
   •   Dhcp3-server, dhcp3-server-ldap, bind9: Son los paquetes que
       contienen los servicios de DHCP y DNS y su respectivos paquetes para
       ser poblados al LDAP.




                                                                             12
Proyecto Plataforma de Correos.


•   Clamav, clamav-daemon: Es el paquete que instala el Antivirus para el
    servidor de correos.
•   Spamassassin: Es el paquete del Antispam para el servidor de correos.
•   Slapd: Es el paquete del LDAP.
•   Samba, smbclient, smbldap-tools: Samba es el servidor como tal,
    smbclient es el cliente de samba y el paquete sambldap-tools es el que
    define cómo se conectará el Samba con el LDAP.
•   Squirrelmail: Es un Webmail tilizado para revisar los correos vía Web.




                                                                             13
Proyecto Plataforma de Correos.


5. INSTALACIÓN.


5.1 Preparación del Sistema.


Nuestra máquina contará con las siguientes especificaciones:


Hostname: server1.grupo9.com
Samba Domain: GRUPO9
IP: 192.168.0.19
Gateway: 192.168.0.1
Passwords Para Todo: sena2008


5.2 Hostname: Editar el archivo hosts con el fin de que nuestra máquina nos
resuelva localmente por ahora.


#pico /etc/hosts


El archive debe quedar de ésta forma:

127.0.0.1   localhost.localdomain localhost
192.168.0.19 server1.grupo9.com server1

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Proceder a poner como nombre a nuestra máquina server1.grupo9.com el cual
se define en el archivo hostname


#echo server1.grupo9.com > /etc/hostname


Luego reiniciamos el sistema para que aplique los cambios efectuados.




                                                                                14
Proyecto Plataforma de Correos.

#reboot


Probamos de la siguiente forma si los cambios fueron aplicados.


Para ver el nombre de nuestra máquina.


#hostname


Para probar si nuestra propia máquina está resolviendo nuestro nombre de
host FQDN.


#hostname -f


      FQDN: Fully Qualified Domain Name, Es el nombre que incluye el
“nombre de equipo” y el “nombre de dominio” asosociado a un equipo. Por
ejemplo, en nuestro caso, nuestro nombre de máquina es server1 cuyo dominio
es grupo9.com, el FQDN será server1.grupo9.com.


En ambos resultados nos debe mostrar lo siguiente.


server1.grupo9.com


5.3 Filesystem ACL´s.


Se debe agregar ACL´s al Filesystem a nuestro punto de montaje “/”.


      ACL: Access Control List, Lista de Control de Acceso. En este sistema
de permisos los ficheros no tienen fijos los permisos (como en el modelo
tradicional, que tiene tres permisos “para el usuario propietario, grupo
propietario y otros”), sino que los permisos del fichero en realidad son una lista
de Entradas de Control de Acceso. Cada una de las ACE´s contiene lo
parámetros de usuario/grupo y permiso que indica un tipo de acceso
determinado para un usuario o grupo; el conjunto de todas éstas forman la ACL
que marca el tipo de acceso permitido en un fichero.


                                                                               15
Proyecto Plataforma de Correos.



Editar el archivo fstab.


#pico /etc/fstab


Agregar la palabra opcion ACL en el punto de montaje. Debe quedar de la
siguiente forma:

# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options>           <dump> <pass>
proc         /proc          proc defaults      0    0
/dev/sda1       /           ext3 defaults,acl,errors=remount-ro 0  1
/dev/sda5       none          swap sw            0    0
/dev/hdc       /media/cdrom0 udf,iso9660 user,noauto 0           0
/dev/fd0       /media/floppy0 auto rw,user,noauto 0        0


Debemos remontar el punto de montaje “/” para que aplique los cambios.


#mount -o remount /


Para probar si los cambios fueron realizados, digitamos el siguiente comando.


#mount -l


Debe aparecer una línea parecida a ésta.


/dev/sda1 on / type ext3 (rw,acl,errors=remount-ro)


5.4 REPOSITORIOS

Para instalar los paquetes requeridos para realizar éste trabajo se deben utili-
zar los siguientes repositorios, los cuales habilitamos en el archivo sources.list

#pico /etc/apt/sources.list

Agregar los siguientes repositorios.



                                                                                   16
Proyecto Plataforma de Correos.

# MDS repository
deb http://mds.mandriva.org/pub/mds/debian etch main
# Debian Volatile
deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free
# Debian Etch Backports
deb http://www.backports.org/debian etch-backports main
#OTROS
deb http://ftp.es.debian.org/debian/ etch main contrib non-free
deb ftp://ftp.us.debian.org/debian sarge main contrib non-free

Antes de actualizar la lista de repositorios, debemos pedir una llave de acceso
para poder descargar los paquetes Backports.

#wget -O - http://backports.org/debian/archive.key | apt-key add -

Luego se procede a actualizar la lista de repositorios.

#apt-get update




                                                                                     17
Proyecto Plataforma de Correos.


5.5 INSTALACIÓN DE LOS PAQUETES A UTILIZAR
Se procede a instalar los siguientes paquetes para luego empezar a configurar
los respectivos archivos de configuración.

apt-get install mmc-web-base mmc-web-mail mmc-web-network mmc-web-proxy
mmc-web-samba mmc-agent python-mmc-plugins-tools python-mmc-base python-
mmc-mail python-mmc-network python-mmc-proxy python-mmc-samba postfix post-
fix-ldap sasl2-bin libsasl2 libsasl2-modules amavisd-new libdbd-ldap-perl libnet-ph-
perl libnet-snpp-perl libnet-telnet-perl lzop nomarch zoo clamav clamav-daemon gzip
bzip2 unzip unrar-free unzoo arj spamassassin squirrelmail libnet-dns-perl razor pyzor
dcc-client slapd ldap-utils libnss-ldap libpam-ldap dhcp3-server dhcp3-server-ldap
bind9 samba smbclient smbldap-tools

En éste paso procedemos a realizar la configuración inicial del LDAP y el Post-
fix.


Digitar la contraseña para la base de datos LDAP “sena2008”.




                                                                                   18
Proyecto Plataforma de Correos.

Confirmamos la contraseña “sena2008”.




                                                                     19
Proyecto Plataforma de Correos.

Seleccionamos “Aceptar”. Lo cual indica la versión del servicio DHCP y anuncia
que el servicio no será autorizado automáticamente.




Digitar el nombre del grupo de trabajo “GRUPO9”. Éste nombre trabaja como
un nombre Netbios.




                                                                           20
Proyecto Plataforma de Correos.

Escoger la opción “<NO>”. Con esto damos la opción que no queremos
actualizaciones dinámicas para el Samba por parte del DHCP.




Se procede a la configuración inicial del servicio de Postfix “Aceptar”.




                                                                             21
Proyecto Plataforma de Correos.

Escogemos la opción “Sitio de Internet”, con el fin de que nuestro servicio de
correo se vea a través de Internet, claro está, por medio de un dominio.




Digitar el nombre de correo “server1.grupo9.com”. Éste nombre indentifica
desde dónde se a originado el correo.




                                                                           22
Proyecto Plataforma de Correos.

Identificado de Recuros para el Servidor LDAP. Digitar “ldap://127.0.0.1/”, con el
fin de contactar al LDAP por medio de dicha IP y pueda ser contactado.




Digitar el Nombre Distintivo (DN) “dc=grupo9,dc=com”, el cual será utilizado
para la base de búsqueda.




                                                                               23
Proyecto Plataforma de Correos.

Vesión de LDAP a utilizar “3” Se debe utilizar la versión más reciente que esté
disponible.




Cuenta LDAP para root “cn=admin.,dc=grupo9,dc=com”. Con el fin de definir la
cuenta para el root, el cual tendrá todos lo privilegios para el LDAP.




                                                                             24
Proyecto Plataforma de Correos.

Contraseña para la cuenta LDAP de root “sena2008”.




Éste   mensaje   indica   que    el   archivo   nsswitch.conf   no   se   gestiona
automáticamente,   por    lo    tanto,   mas    adelante   debemos    modificarlo
manualmente.




                                                                               25
Proyecto Plataforma de Correos.

Make local root Database admin. “<No>”. Indica si solo el root puede ver la
base de datos del LDAP.




¿Hace falta un usuario para acceder a la base de datos LDAP? “<No>” Se
utiliza para permitir a otros usuarios acceder a la base de datos LDAP.




                                                                           26
Proyecto Plataforma de Correos.

Ahora procedemos a instalar los paquetes del Dovecot (POP3 e IMAP).


#apt-get install -t etch-backports dovecot-common dovecot-imapd dovecot-pop3d


El comando “apt-get install -t” da la opción de copiar todas la fuentes de
argumento dentro del directorio; en éste caso copiará todas las fuentes del
direcorio etch-backport, el cual está especificado en la lista de repositorios.


6. CONFIGURACIONES


6.1 CONFIGURACIÓN DEL LDAP


Se procede copiar los el esquema del Mail, Samba, MMC, DNS, DHCP y
agregarlos al squema del LDAP.


#cp /usr/share/doc/python-mmc-base/contrib/ldap/mmc.schema /etc/ldap/schema/
#cp /usr/share/doc/python-mmc-base/contrib/ldap/mail.schema /etc/ldap/schema/
#zcat /usr/share/doc/python-mmc-base/contrib/ldap/samba.schema.gz >
/etc/ldap/schema/samba.schema
#zcat /usr/share/doc/python-mmc-base/contrib/ldap/dnszone.schema.gz >
/etc/ldap/schema/dnszone.schema
#zcat /usr/share/doc/python-mmc-base/contrib/ldap/dhcp.schema.gz >
/etc/ldap/schema/dhcp.schema


Debemos indicarle al LDAP que acepte los esquemas que acabamos de copiar,
para esto editamos el archivo sldap.conf.


#pico /etc/ldap/slapd.conf


De ésta forma, procedemos a incluir las listas de los esquemas que copiamos
anteriormente.




                                                                                  27
Proyecto Plataforma de Correos.

include /etc/ldap/schema/mmc.schema
include /etc/ldap/schema/samba.schema
include /etc/ldap/schema/mail.schema
include /etc/ldap/schema/dnszone.schema
include /etc/ldap/schema/dhcp.schema


Sin embargo, debemos habilitar éstas líneas agregadas, por lo que debemos
incluri la siguiente línea debajo de éstas.


schemacheck on


Se debe cifrar la contraseña del Admin LDAP, ya que en el momento de la
instalación no se cifró. Esto se hace con el fin de darle seguridad a la clave de
acceso para el administrador. La contraseña se encripta en el formato SSHA.


#slappasswd -s sena2008


Deba aparecer algo parecido a esto.


{SSHA}lPd5OeiUGx4lyZUiQ2MFmzXV0JWyKV9A


Abrir el archivo de configuración del LDAP para agregar ésta clave encriptada.


#pico /etc/ldap/sldap.conf


Buscar la línea que dice rootdn, y descoméntela, de tal forma que quede así.
rootdn quot;cn=admin,dc=grupo9,dc=comquot;
Y Agrege debajo de ésta la linea rootpw junto con la clave del Admin LDAP
encriptada que originamos anteriormente.
rootpw {SSHA}lPd5OeiUGx4lyZUiQ2MFmzXV0JWyKV9A


Dentro del mismo archivo, buscar la siguiente opción.
index objectClass eq
Bórrela o coméntela y agregue las siguientes.


                                                                               28
Proyecto Plataforma de Correos.

index objectClass,uidNumber,gidNumber eq
index cn,sn,uid,displayName pres,sub,eq
index memberUid,mail,givenname eq,subinitial
index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq
index zoneName,relativeDomainName eq
index dhcpHWAddress,dhcpClassData eq


Debemos definir las listas de acceso que samba tendrá sobre el LDAP y los
respectiviso atributos de los usuarios. De ésta forma, buscamos y cambiamos
la línea que dice.
access to attrs=userPassword,shadowLastChange
Por ésta.
access to attrs=userPassword,sambaLMPassword,sambaNTPassword

El archive sldap.conf debe de quedar de ésta forma.


# This is the main slapd configuration file. See slapd.conf(5) for more
# info on the configuration options.

######################################################################
#
# Global Directives:

# Features to permit
#allow bind_v2

# Schema and objectClass definitions
include    /etc/ldap/schema/core.schema
include    /etc/ldap/schema/cosine.schema
include    /etc/ldap/schema/nis.schema
include    /etc/ldap/schema/inetorgperson.schema
incluye    /etc/ldap/schema/mmc.schema
include    /etc/ldap/schema/samba.schema
include    /etc/ldap/schema/printer.schema
include    /etc/ldap/schema/mail.schema
include    /etc/ldap/schema/dnszone.schema
include    /etc/ldap/schema/dhcp.schema
schemacheck on

# Where the pid file is put. The init.d script
# will not stop the server if you change this.
pidfile      /var/run/slapd/slapd.pid



                                                                                 29
Proyecto Plataforma de Correos.

# List of arguments that were passed to the server
argsfile     /var/run/slapd/slapd.args

# Read slapd.conf(5) for possible values
loglevel    0

# Where the dynamically loaded modules are stored
modulepath       /usr/lib/ldap
moduleload       back_bdb

# The maximum number of entries that is returned for a search operation
sizelimit 500

# The tool-threads parameter sets the actual amount of cpu's that is used
# for indexing.
tool-threads 1

######################################################################
#
# Specific Backend Directives for bdb:
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
backend             bdb
checkpoint 512 30

######################################################################
#
# Specific Backend Directives for 'other':
# Backend specific directives apply to this backend until another
# 'backend' directive occurs
#backend                     <other>

######################################################################
#
# Specific Directives for database #1, of type bdb:
# Database specific directives apply to this databasse until another
# 'database' directive occurs
database       bdb

# The base of your directory in database #1
suffix      quot;dc=grupo9,dc=comquot;

# rootdn directive for specifying a superuser on the database. This is needed
# for syncrepl.
rootdn              quot;cn=admin,dc=grupo9,dc=comquot;
rootpw              {SSHA}Lc4KZ36flCnEKGVJcVP/uJvCcW8Yg+7B

# Where the database file are physically stored for database #1
directory   quot;/var/lib/ldapquot;



                                                                                  30
Proyecto Plataforma de Correos.

# For the Debian package we use 2MB as default but be sure to update this
# value if you have plenty of RAM
dbconfig set_cachesize 0 2097152 0

# Sven Hartge reported that he had to set this value incredibly high
# to get slapd running at all. See http://bugs.debian.org/303057
# for more information.

# Number of objects that can be locked at the same time.
dbconfig set_lk_max_objects 1500
# Number of locks (both requested and granted)
dbconfig set_lk_max_locks 1500
# Number of lockers
dbconfig set_lk_max_lockers 1500

# Indexing options for database #1
index objectClass,uidNumber,gidNumber eq
index cn,sn,uid,displayName pres,sub,eq
index memberUid,mail,givenname eq,subinitial
index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq
index zoneName,relativeDomainName eq
index dhcpHWAddress,dhcpClassData eq

# Save the time that the entry gets modified, for database #1
lastmod       on

# Where to store the replica logs for database #1
# replogfile       /var/lib/ldap/replog

# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only
access to attrs=userPassword,sambaLMPassword,sambaNTPassword
     by dn=quot;cn=admin,dc=grupo9,dc=comquot; write
     by anonymous auth
     by self write
     by * none

# Ensure read access to the base for things like
# supportedSASLMechanisms. Without this you may
# have problems with SASL not knowing what
# mechanisms are available and the like.
# Note that this is covered by the 'access to *'
# ACL below too but if you change that as people
# are wont to do you'll still need this if you
# want SASL (and possible other things) to work
# happily.
access to dn.base=quot;quot; by * read


                                                                                 31
Proyecto Plataforma de Correos.



# The admin dn has full write access, everyone else
# can read everything.
access to *
     by dn=quot;cn=admin,dc=grupo9,dc=comquot; write
     by * read

# For Netscape Roaming support, each user gets a roaming
# profile for which they have write access to
#access to dn=quot;.*,ou=Roaming,o=morsnetquot;
#     by dn=quot;cn=admin,dc=grupo9,dc=comquot; write
#     by dnattr=owner write

######################################################################
#
# Specific Directives for database #2, of type 'other' (can be bdb too):
# Database specific directives apply to this databasse until another
# 'database' directive occurs
#database       <other>

# The base of your directory for database #2
#suffix            quot;dc=debian,dc=orgquot;

De igual forma, se debe editar el archivo de configuración ldap.conf, con el fin
de especificarle al LDAP la IP y el nombre de dominio con que se quiere que
trabaje.


#pico /etc/ldap/ldap.conf


Agregamos las siguientes líneas al final del archivo.

host 127.0.0.1
base dc=example,dc=com

Reiniciamos el servidor LDAP para que aplique los cambios efectuados.


#/etc/init.d/sldap restart




                                                                                   32
Proyecto Plataforma de Correos.


6.2 CONFIGURACIÓN DE SAMBA


Proceder a configurar el servidor Samba, ya que el LDAP necesita de éste para
poder almacenar los usuarios, password, entre otros, además para poder
integrar las redes de Linux con las de Microsoft.


Primero debemos parar el servicio.


#/etc/init.d/samba stop


Para integrar el servidor Samba con el LDAP debemos copiar el archivo
smb.conf del LDAP y pegarlo en directorio de Samba. Éste archivo es ofrecido
por   las librerías       del   python-mmc-base, las   cuales   fueron   instaladas
anteriormente, dichas librerías se encuentran en la siguiente ruta ya que al
momento de la inatalación se ubican en /usr/share/doc/.


#cp /usr/share/doc/python-mmc-base/contrib/samba/smb.conf /etc/samba/


De ésta forma, editar el archivo de configuración smb.conf.


#pico /etc/samba/smb.conf


En la sección [Global] se deben modificar las siguientes líneas, de tal forma
que se parezcan a éstas.


workgroup = GRUPO9
netbiosname = SRV-GRUPO9
ldap admin dn = cn=admin,dc=grupo9,dc=com
ldap suffix = dc=grupo9,dc=com
logon path = %Nprofiles%U




                                                                                33
Proyecto Plataforma de Correos.

Adicionalmente, en la sección [Global], agregar las siguientes líneas, ya que no
vienen por defecto en el archivo smb.conf del LDAP. Estas líneas representan
el soporte y la integración que el Samba tendrá sobre el LDAP.


preferred master = yes
os level = 65
wins support = yes
timeserver = yes
socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
SO_RCVBUF=8192
logon drive = H:
passwd program = /usr/sbin/smbldap-passwd -u %u
passwd chat = quot;Changing password for*nNew password*quot; %nn quot;*Retype new
password*quot; %nn
add user script = /usr/sbin/smbldap-useradd -m quot;%uquot;
add user to group script = /usr/sbin/smbldap-groupmod -m quot;%uquot; quot;%gquot;
set primary group script = /usr/sbin/smbldap-usermod -g quot;%gquot; quot;%uquot;
add group script = /usr/sbin/ambldap-groupadd -p quot;%gquot;
delete user script = /usr/sbin/smbldap-userdel quot;%uquot;
delete user from group script = /usr/sbin/smbldap-groupmod -x quot;%uquot; quot;%gquot;
delete group script = /usr/sbin/smbldap-groupdel quot;%gquot;
obey pam restrictions = no
ldap idmap suffix = ou=Users
ldap delete dn = no
security = user


En la sección [homes], agregar la siguiente línea. Con ésta línea le estamos
dando la opción al Samba que oculte el Maildir (Buzón) de cada usuario.


hide files = /Maildir/


En la sección [profiles], agregar la siguiente línea, con el fin de que los archivos
de Samba estén ocultos.



                                                                                   34
Proyecto Plataforma de Correos.

hide files = /desktop.ini/ntuser.ini/NTUSER.*/


En la sección [archives], editar la siguiente línea, de ésta forma especificamos
la ruta de los archivos del samba, los cuales estarán ocultos por la opción que
le dimos en el paso anterior.


path = /home/samba/archives


Además, agregar al final del archivo smb.conf el siguiente bloque [partage] que
no viene por defecto. Esto es si queremos, ya que éste bloque no afecta para
nada la configuración; simplemente se utiliza para publicar algunos servicios.


[partage]
  comment = aucun
  path = /home/samba/partage
  browseable = yes
  public = no
  writeable = yes

El archivo de configuración smb.conf debe quedar de ésta forma.

[global]
         preferred master = yes
         os level = 65
         wins support = yes
         timeserver = yes
         socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192
SO_RCVBUF=8192
         logon drive = H:
         passwd program = /usr/sbin/smbldap-passwd -u %u
         passwd chat = quot;Cambiando clave para*nNueva clave*quot; %nn quot;*Confirme
nueva clave*quot; %nn
         add user script = /usr/sbin/smbldap-useradd -m quot;%uquot;
         add user to group script = /usr/sbin/smbldap-groupmod -m quot;%uquot; quot;%gquot;
         set primary group script = /usr/sbin/smbldap-usermod -g quot;%gquot; quot;%uquot;
         add group script = /usr/sbin/ambldap-groupadd -p quot;%gquot;
         delete user script = /usr/sbin/smbldap-userdel quot;%uquot;
         delete user from group script = /usr/sbin/smbldap-groupmod -x quot;%uquot; quot;%gquot;
         delete group script = /usr/sbin/smbldap-groupdel quot;%gquot;
         obey pam restrictions = no
         ldap idmap suffix = ou=Users
         ldap delete dn = no
         security = user



                                                                                 35
Proyecto Plataforma de Correos.

         workgroup = GRUPO9
         netbiosname = SRV-GRUPO9
         server string = Mandriva Directory Server - SAMBA %v
         log level = 3
         null passwords = yes
         # unix charset = ISO8859-1
         name resolve order = bcast host
         domain logons = yes
         domain master = yes
         printing = cups
         printcap name = cups
         logon path = %Nprofiles%u
         logon script = logon.bat
         map acl inherit = yes
         nt acl support = yes
         force unknown acl user = Yes
         passdb backend = ldapsam:ldap://127.0.0.1/
         ldap admin dn = cn=admin,dc=grupo9,dc=com
         ldap suffix = dc=grupo9,dc=com
         ldap group suffix = ou=Groups
         ldap user suffix = ou=Users
         ldap machine suffix = ou=Computers
         ldap idmap suffix = ou=Idmap
         idmap backend = ldap:ldap://127.0.0.1/
         idmap uid = 20000-30000
         idmap gid = 20000-30000

         enable privileges = yes
         add machine script = /usr/lib/mmc/add_machine_script '%u'
         add share command = /usr/lib/mmc/add_change_share_script
         delete share command = /usr/lib/mmc/delete_share_script
         add printer command = /usr/lib/mmc/add_printer_script
         deleteprinter command = /usr/lib/mmc/delete_printer_script


[homes]
    comment = Home directories
    browseable = no
    writeable = yes
    create mask = 0700
    directory mask = 0700
    hide files = /Maildir/
    path = /home/samba/archives

[public]
     comment = Public share
     path = /home/samba/shares/public
     browseable = yes
     public = yes
     writeable = yes


                                                                             36
Proyecto Plataforma de Correos.



[archives]
     comment = Backup share
     path = /home/archives
     browseable = yes
     public = no
     writeable = no

[printers]
     comment = All printers
     path = /var/spool/samba
     public = yes
     guest ok = yes
     browseable = no
     writeable = no
     printable = yes

[print$]
     comment = Printer Driver Download Area
     path = /var/lib/samba/printers
     browseable = no
     guest ok = yes
     read only = yes
     write list = Administrador,root,@lpadmin
     force group = quot;Print Operatorsquot;
     create mask = 0775
     directory mask = 0775

[netlogon]
     path = /home/samba/netlogon
     public = no
     writeable = no
     browseable = no

[profiles]
     path = /home/samba/profiles
     writeable = yes
     create mask = 0700
     directory mask = 0700
     browseable = no
     hide files = /desktop.ini/ntuser.ini/NTUSER.*/

[partage]
     comment = aucun
     path = /home/samba/partage
     browseable = yes
     public = no
     writeable = yes




                                                                             37
Proyecto Plataforma de Correos.

Digitar el siguiente comando con el fin de obtener un sumario de la
configuración de Samba. Al final del sumario no debe presentar errores.


#testparm


Se procede a darle las credenciales a Samba para que pueda escribir sobre
LDAP.


#smbpasswd -w sena2008


Debe aparecer algo como esto, lo cual indica que las credenciales fueron
asignadas correctamente.


Setting stored password for quot;cn=admin,dc=grupo9,dc=comquot; in secrets.tdb


Debemos genera un SID para el grupo de trabajo, con el fin de que el LDAP
reconozca y autorice al Samba con éste identificador.


#net getlocalsid GRUPO9


Debe mostrarnos al final algo como esto. No perdamos éste SID, ya que más
adelante lo debemos utilizar.


SID for domain GRUPO9 is: S-9-5-21-3159899829-923882392-54889933


Para comprobar que el SID fue registrado por el LDAP, digitamos el siguiente
comando.


#slapcat | grep sambaDomainName


Lo más probable es que aparezcan algunas líneas de error, lo cual es normal.
Lo que nos debe interesar es que aparezcan las siguientes líneas.




                                                                             38
Proyecto Plataforma de Correos.

dn: sambaDomainName=GRUPO9,dc=grupo9,dc=com
sambaDomainName: GRUPO9


Luego se procede a iniciar el servicio Samba.


#/etc/init.d/samba start


Debemos       crear        los   archivos   de   configuración   de   smbldap-tools
(smbldap_bind.conf, smbldap.conf), los cuales definen la forma de comunicarse
el Samba con el LDAP.


#pico /etc/smbldap-tools/smbldap_bind.conf


El archivo debe llevar el siguiente contenido.


slaveDN=quot;cn=admin,dc=grupo9,dc=comquot;
slavePw=quot;sena2008quot;
masterDN=quot;cn=admin,dc=grupo9,dc=comquot;
masterPw=quot;sena2008quot;

Ahora procedemos crear el archivo smbldap.conf. El contenido de éste debe
llevar los siguiente (En la línea SID debemos poner nuestro SID, el cual
generamos anteriormente).


SID=quot; S-9-5-21-3159899829-923882392-54889933quot;
sambaDomain=quot;GRUPO9quot;
ldapTLS=quot;0quot;
suffix=quot;dc=grupo9,dc=comquot;
usersdn=quot;ou=Users,${suffix}quot;
computersdn=quot;ou=Computers,${suffix}quot;
groupsdn=quot;ou=Groups,${suffix}quot;
idmapdn=quot;ou=Idmap,${suffix}quot;
sambaUnixIdPooldn=quot;sambaDomainName=GRUPO9,${suffix}quot;
scope=quot;subquot;
hash_encrypt=quot;SSHAquot;
userLoginShell=quot;/bin/bashquot;
userHome=quot;/home/%Uquot;
userHomeDirectoryMode=quot;700quot;
userGecos=quot;System Userquot;
defaultUserGid=quot;513quot;


                                                                                39
Proyecto Plataforma de Correos.

defaultComputerGid=quot;515quot;
skeletonDir=quot;/etc/skelquot;
defaultMaxPasswordAge=quot;45quot;
userSmbHome=quot;PDC-SRV-GRUPO9%Uquot;
userProfile=quot;PDC-SRV-GRUPO9profiles%Uquot;
userHomeDrive=quot;H:quot;
userScript=quot;logon.batquot;
mailDomain=quot;grupo9.comquot;
smbpasswd=quot;/usr/bin/smbpasswdquot;

Procedemos a poblar la base de datos LDAP y a crear la cuenta de
Administrator en el dominio Administrator. Al final no pedirá la contraseña del
Administrator, la cual será “sena2008”.


#smbldap-populate -m 512 -a Administrator


Se procede a cambiar el número UID de la cuenta, de lo contrario el
Administrator no podrá utilizar el servidor de correos con ésta cuenta, además
se debe agregar el usuario Administrador al grupo “Domain Users”.


#smbldap-usermod -u 3000 -G quot;Domain Usersquot; Administrator


Editar el archivo nsswitch.conf, para luego poder visualizar los usuarios y
grupos del LDAP.


#pico /etc/nsswitch.conf


El archivo debe tener el siguiente contenido.


# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc' and `info' packages installed, try:
# `info libc quot;Name Service Switchquot;' for information about this file.
passwd:             compat ldap
group:              compat ldap
shadow:             compat ldap
hosts:              files dns
networks:           files
protocols:          db files


                                                                               40
Proyecto Plataforma de Correos.

services:          db files
ethers:            db files
rpc:               db files
netgroup:          nis

Para comprobar si está en buen funcionamiento, digitamos el siguiente
comando.


#getent group


Debemos cerciorarnos de que al final aparezca algo como esto, lo cual indica
que está visualizando la base de datos LDAP.


Domain Admins:*:512:
Domain Users:*:513:Administrator,mauro,fefe,jona
Domain Guests:*:514:
Domain Computers:*:515:
Administrators:*:544:
Account Operators:*:548:
Print Operators:*:550:
Backup Operators:*:551:
Replicators:*:552:


       Posible Fallo: Si no aparecen las anteriores lìneas, debemos editar
los archivos libnss-ldap y libpam-ldap.



#pico /etc/libnss-ldap.conf



Buscamos las siguientes lineas y las descomentamos. En dichas lìneas
digitaremos los valores correspondientes a nuestro dominio y unidad
orgainizativa.



nss_base_passwd                   ou=users,dc=grupo9,dc=com

nss_base_group                    ou=groups,dc=grupo9,dc=com




                                                                             41
Proyecto Plataforma de Correos.

Editar el siguiente archivo en donde estableceremos el nombre de dominio y
unidades organizativas para los usuarios y grupos. Se deben descomentar.



#pico /etc/pam_ldap.conf



Las lìneas deben quedar de la siguiente forma.



nss_base_passwd             ou=users,dc=grupo9,dc=com?one

nss_base_shadow             ou=users,dc=grupo9,dc=com?one

nss_base_group              ou=groups,dc=grupo9,dc=com?one



Luego se deben reconfigurar el paquete libnss-ldap ylibpam-ldap para que se
apliquen los cambios efectuado en los dos archivos de configuración
anteriores.



#dpkg-reconfigure libnss-ldap



Establecer los valores pertenecientes a nuestro nombre de dominio.



#dpkg-reconfigure libpam-ldap



Establecer los valores pertenecientes a nuestro dominio.



Volver a probar la configuración del nsswitch con el comando tesparm.


Ahora debemos crear unos directorios que Samba necesita para alojar sus
archivos. Dichos directorios fueron los bloques que están descritos en el
archivo smb.conf.


                                                                           42
Proyecto Plataforma de Correos.



#mkdir -p /home/samba/shares/public/
#mkdir /home/samba/netlogon/
#mkdir /home/samba/profiles/
#mkdir /home/samba/partage/
#mkdir /home/samba/archives/


Se debe reiniciar el Samba para que se apliquen los cambios con respecto a
los directorios creados.


#/etc/init.d/samba restart


Algunas veces, al reiniciar más adelante la MMC presenta errores, por esto
debemos crear un directorio adicional “archives” en “/home/”.


#mkdir /home/archives


A los directorios creados en el paso anterior, debemos de darle los permisos
específicos, para que Samba pueda tener derechos sobre dichos directorios.


#chown -R :quot;Domain Usersquot; /home/samba/
#chmod 777 /var/spool/samba/ /home/samba/shares/public/
#chmod 755 /home/samba/netlogon/
#chmod 770 /home/samba/profiles/ /home/samba/partage/
#chmod 700 /home/samba/archives/


6.3 Configuración del PAM LDAP.
Ahora, debemos agregar el módulo del LDPA al PAM. Los cuales serán
utilizados para la autenticación contra el LDAP. Específicamente los archivos
que se modifican son: common-account, common-auth, common-password,
common-session.


Editar el archivo common-account.



                                                                             43
Proyecto Plataforma de Correos.

#pico /etc/pam.d/common-account


El archivo debe quedar de la siguiente forma.


#
# /etc/pam.d/common-account - authorization settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authorization modules that define
# the central access policy for use on the system. The default is to
# only deny service to users whose accounts are expired in /etc/shadow.
#
account required         pam_unix.so
account sufficient      pam_ldap.so

Editar el archivo common-auth.


#pico /etc/pam.d/common-auth


El archivo debe quedar de la siguiente forma.


#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the
# traditional Unix authentication mechanisms.
#
auth sufficient       pam_unix.so nullok_secure
auth sufficient       pam_ldap.so use_first_pass
auth required          pam_deny.so

Editar el archivo common-password.


#pico /etc/pam.d/common-password


El archivo debe quedar de la siguiente forma.


#


                                                                              44
Proyecto Plataforma de Correos.

# /etc/pam.d/common-password - password-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define the services to be
#used to change user passwords. The default is pam_unix
# The quot;nullokquot; option allows users to change an empty password, else
# empty passwords are treated as locked accounts.
#
# (Add `md5' after the module name to enable MD5 passwords)
#
# The quot;obscurequot; option replaces the old `OBSCURE_CHECKS_ENAB' option in
# login.defs. Also the quot;minquot; and quot;maxquot; options enforce the length of the
# new password.
password         sufficient   pam_unix.so nullok obscure min=4 max=8 md5
password         sufficient   pam_ldap.so use_first_pass use_authtok
password         required      pam_deny.so
# Alternate strength checking for password. Note that this
# requires the libpam-cracklib package to be installed.
# You will need to comment out the password line above and
# uncomment the next two in order to use this.
# (Replaces the `OBSCURE_CHECKS_ENAB', `CRACKLIB_DICTPATH')
#
# password required        pam_cracklib.so retry=3 minlen=6 difok=3
# password required        pam_unix.so use_authtok nullok md5

Editar el archivo common-session.


#pico /etc/pam.d/common-session


El archivo debe quedar de la siguiente forma.


#
# /etc/pam.d/common-session - session-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define tasks to be performed
# at the start and end of sessions of *any* kind (both interactive and
# non-interactive). The default is pam_unix.
#
session required        pam_unix.so
session optional       pam_ldap.so

Para que estos cambios realizados, debemos reiniciar nuestro sistema.


#reboot


                                                                                 45
Proyecto Plataforma de Correos.



Luego de haber iniciado el sistema, debemos darle derecho al grupo “Domain
Admins” de agregar máquinas al dominio.


#net -U Administrator rpc rights grant 'GRUPO9Domain Admins'
SeMachineAccountPrivilege


6.4 Configuración DNS (BIND9)


Procedemos a configurar el servicio DNS.


#cp /usr/share/doc/python-mmc-base/contrib/bind/named.conf /etc/bind/


Ahora debemos especificarle al sistema que en la secuencia de inicio “rc.d”
inicie primero el Sldap y luego el BIND.


#update-rc.d -f slapd remove && update-rc.d slapd start 14 2 3 4 5 . stop 86 0 1 6 .


Debemos especificar en la tarjeta de red que seamos nuestro propio registro
DNS.


#pico /etc/resolv.conf


El archivo debe quedar de la siguiente forma.


search grupo9.com
nameserver 127.0.0.1
nameserver 192.168.0.19

6.5 Configuración DHCP


Procedemos a configurara el servicio DHCP.


#cp /usr/share/doc/python-mmc-base/contrib/dhcpd/dhcpd.conf /etc/dhcp3/



                                                                                       46
Proyecto Plataforma de Correos.

Editar el archivo dhcpd.conf.


#pico /etc/dhcp3/dhcpd.conf


El contenido del archivo debe quedar de la siguiente forma.


ldap-server quot;localhostquot;;
ldap-port 389;
ldap-username quot;cn=admin, dc=grupo9, dc=comquot;;
ldap-password quot;sena2008quot;;
ldap-base-dn quot;dc=grupo9, dc=comquot;;
ldap-method dynamic;
ldap-debug-file quot;/var/log/dhcp-ldap-startup.logquot;;



6.6 SSL Para El Correo (Entidad Certificadora).


Se debe instalar una entidad certificadora para obtener los respectivos
certificados y llaves para la seguridad de nuestros dos sitios Web: MMC,
Squirrelmail.


Debemos editar el archivo mail.cnf.


#pico /etc/ssl/mail.cnf


El archivo debe llevar el siguiente contenido.


[ req ]
default_bits                  = 2048
default_keyfile               = privkey.pem
distinguished_name            = req_distinguished_name
prompt                        = no
string_mask                   = nombstr
x509_extensions               = server_cert
[ req_distinguished_name ]
countryName                   = DE
stateOrProvinceName           = Niedersachsen
localityName                  = Lueneburg
organizationName              = Projektfarm GmbH
organizationalUnitName        = IT


                                                                                 47
Proyecto Plataforma de Correos.

commonName                  = server1.grupo9.com
emailAddress                = postmaster@grupo9.com
[ server_cert ]
basicConstraints            = critical, CA:FALSE
subjectKeyIdentifier        = hash
keyUsage                    = digitalSignature, keyEncipherment
extendedKeyUsage            = serverAuth, clientAuth
nsCertType                  = server
nsComment                   = quot;mailserverquot;

Ahora, debemos crear el certificado SSL.


#openssl req -x509 -new -config /etc/ssl/mail.cnf -out /etc/ssl/certs/mail.pem -keyout
/etc/ssl/private/mail.key -days 365 -nodes -batch


Especificar los derechos de la llave, de tal forma que solo el root pueda leerlo.


#chmod 600 /etc/ssl/private/mail.key


6.7 Configuración SASL


Postfix autenticará los usuarios contra la base de datos LDAP. Procedemos a
crear el directorio saslauthd. En éste directorio se almacenará unos archivos,
los cuales permiten la autenticación del Postfix contra el LDAP.


#mkdir -p /var/spool/postfix/var/run/saslauthd/


Editar el archivo saslauthd, el cual debe quedar de la siguiente forma.


START=yes
MECHANISMS=quot;ldapquot;
MECH_OPTIONS=quot;quot;
THREADS=5
OPTIONS=quot;-c -m /var/spool/postfix/var/run/saslauthd -rquot;

Luego, editar el archivo saslauthd.conf con el fin de indicarle a SASL contra
quién va a realizar la autenticación.




                                                                                   48
Proyecto Plataforma de Correos.

#pico /etc/saslauthd.conf


Debe quedar de la siguiente forma.


ldap_servers: ldap://127.0.0.1
ldap_search_base: ou=Users,dc=grupo9,dc=com
ldap_filter: (&(objectClass=mailAccount)(mail=%u@%r)(mailenable=OK))

Debemos crear el archivo smtpd.conf con el fin de indicarle a Postfix cuál va a
hacer el método de autenticación.


#pico /etc/postfix/sasl/smtpd.conf


El contenido de éste archivo debe llevar lo siguiente.


pwcheck_method: saslauthd
mech_list: plain login

Ahora, para que la autenticación se correcta, debemos crear el usuario postfix y
agregarlo al grupo sasl.


#adduser postfix sasl


Debemos reiniciar SASL para que aplique los cambios efectuados.


#/etc/init.d/saslauthd restart




                                                                             49
Proyecto Plataforma de Correos.

6.8 Configuración Postfix


Copiamos los archivo del Postifx con el fin de poder trabajar con lo Usuarios y
Dominios virtuales.


#cp /usr/share/doc/python-mmc-base/contrib/postfix/with-virtual-domain/* /etc/postfix/


Editamos el archivo main.cf para modificar el dominio al que Postfix atenderá,
usuarios y dominios virtuales, entre otros.


#pico /etc/postfix/main.cf


El archivo debe quedar de la siguiente forma.
       Nota: Recomendamos que copien cada una de las líneas que se
representa a continuación, de tal forma que quede como se muestra a
continuación.


# 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_dot_mydomain = yes
append_at_myorigin = yes

# Uncomment the next line to generate quot;delayed mailquot; warnings
#delay_warning_time = 4h

myhostname = server1.grupo9.com
mydomain = grupo9.com
alias_maps = ldap:/etc/postfix/ldap-aliases.cf, hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = server1.grupo9.com,grupo9.com,localhost.localdomain,localhost
mail_destination_recipient_limit = 1
mailbox_command = /usr/lib/dovecot/deliver -d quot;$USERquot;@quot;$DOMAINquot;
relayhost =
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all



                                                                                    50
Proyecto Plataforma de Correos.

# Virtual Domains Control
virtual_mailbox_domains = ldap:/etc/postfix/ldap-domains.cf
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

# Use Maildir
home_mailbox = Maildir/

# Wait until the RCPT TO command before evaluating restrictions
smtpd_delay_reject = yes

# Basics Restrictions
smtpd_helo_required = yes
strict_rfc821_envelopes = yes

# Requirements for the connecting server
smtpd_client_restrictions =
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_rbl_client bl.spamcop.net,
  reject_rbl_client dnsbl.njabl.org,
  reject_rbl_client cbl.abuseat.org,
  reject_rbl_client sbl-xbl.spamhaus.org,
  reject_rbl_client list.dsbl.org,
  permit

# Requirements for the HELO statement
smtpd_helo_restrictions =
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_non_fqdn_hostname,
  reject_invalid_hostname,
  permit

# Requirements for the sender address
smtpd_sender_restrictions =
  permit_mynetworks,
  permit_sasl_authenticated,
  reject_non_fqdn_sender,
  reject_unknown_sender_domain,
  permit

# Requirement for the recipient address
smtpd_recipient_restrictions =
  permit_mynetworks,


                                                                                        51
Proyecto Plataforma de Correos.

 permit_sasl_authenticated,
 reject_non_fqdn_recipient,
 reject_unknown_recipient_domain,
 reject_unauth_destination,
 permit

# Enable SASL authentication for the smtpd daemon
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth

# Fix for outlook
broken_sasl_auth_clients = yes

# Reject anonymous connections
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =

# SSL/TLS
smtpd_tls_security_level = may
smtpd_tls_loglevel = 1
smtpd_tls_cert_file = /etc/ssl/certs/mail.pem
smtpd_tls_key_file = /etc/ssl/private/mail.key
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache

# Amavis
content_filter = amavis:[localhost]:10024
receive_override_options = no_address_mappings

Editar el archivo ldap.aliases.cf con el fin de definir los álias del LDAP en el
Postfix.


#pico /etc/postfix/ldap-aliases.cf


Se debe editar simplemente el dominio con que se está trabajando.


server_host = 127.0.0.1
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mailalias=%s)(mailenable=OK))
result_attribute = maildrop
version = 3

Debemos editar el archivo master.cf en donde se definen qué protocolos y con
qué servicio adicionales trabajará postfix.



                                                                              52
Proyecto Plataforma de Correos.

#pico /etc/postfix/master.cf


Al final del archivo, agregar las siguientes líneas de configuración.

# SMTPS
smtps inet n - - - - smtpd
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes

# Dovecot
dovecot unix - n n - - pipe
  flags=DRhu user=dovecot:mail argv=/usr/lib/dovecot/deliver -d $recipient

# Mail to Amavis
amavis unix - - - - 10 smtp
  -o smtp_data_done_timeout=1200
  -o smtp_send_xforward_command=yes
  -o disable_dns_lookups=yes
  -o max_use=20

# Mail from Amavis
127.0.0.1:10025 inet n - - - - smtpd
  -o content_filter=
  -o local_recipient_maps=
  -o relay_recipient_maps=
  -o smtpd_restriction_classes=
  -o smtpd_delay_reject=no
  -o smtpd_client_restrictions=permit_mynetworks,reject
  -o smtpd_helo_restrictions=
  -o smtpd_sender_restrictions=
  -o smtpd_recipient_restrictions=permit_mynetworks,reject
  -o smtpd_data_restrictions=reject_unauth_pipelining
  -o smtpd_end_of_data_restrictions=
  -o mynetworks=127.0.0.0/8
  -o smtpd_error_sleep_time=0
  -o smtpd_soft_error_limit=1001
  -o smtpd_hard_error_limit=1000
  -o smtpd_client_connection_count_limit=0
  -o smtpd_client_connection_rate_limit=0
  -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks

Debemos de configurar los archivos ldap-accounts, ldap-aliases, ldap-domains,
ldap-gid, ldap-maildrop, ldap-transport, ldap-uid con el fin de habilitar el uso de
los usuarios y dominios virtuales.


#pico /etc/postfix/ ldap-accounts



                                                                                53
Proyecto Plataforma de Correos.

server_host = 127.0.0.1
server_port = 389
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s))
result_attribute = mailbox
version = 3
expansion_limit = 1

#pico /etc/postfix/ ldap-aliases
server_host = 127.0.0.1
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mailalias=%s)(mailenable=OK))
result_attribute = mail
version = 3

#pico /etc/postfix/ ldap-domains
server_host = 127.0.0.1
server_port = 389
search_base = ou=mailDomains,dc=mandriva,dc=com
query_filter = (&(objectClass=mailDomain)(virtualdomain=%s))
result_attribute = virtualdomain
version = 3

#pico /etc/postfix/ ldap-gid
server_host = 127.0.0.1
server_port = 389
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mail=%s)(mailenable=OK))
result_attribute = gidNumber
version = 3
expansion_limit = 1

#pico /etc/postfix/ ldap-maildrop
server_host = 127.0.0.1
server_port = 389
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s))
result_attribute = maildrop
version = 3

#pico /etc/postfix/ ldap-transport
server_host = 127.0.0.1
server_port = 389
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s))
result_attribute = mailhost


                                                                            54
Proyecto Plataforma de Correos.

result_format = smtp:[%s]
version = 3

#pico /etc/postfix/ ldap-uid
server_host = 127.0.0.1
server_port = 389
search_base = ou=Users,dc=grupo9,dc=com
query_filter = (&(objectClass=mailAccount)(mail=%s)(mailenable=OK))
result_attribute = uidNumber
version = 3
expansion_limit = 1


Debemos reiniciar el Postfix para que se apliquen los cambios efectuados.


#/etc/init.d/postfix restart


6.9 Configuración de Dovecot


Debemos borrar todo el contenido del archivo dovecot.conf ya que éste no nos
sirve para lo que queremos realizar.


#echo quot;quot; > /etc/dovecot/dovecot.conf


Procedemos a editar dicho archivo, que debería estar completamente en
blanco.


#pico /etc/dovecot/dovecot.conf


El archivo debe quedar de ésta forma, en donde se debe especificar el dominio,
entre otras cosas.


protocols = imap imaps pop3 pop3s
listen = 0.0.0.0
login_greeting = grupo9.com mailserver ready.
mail_location = maildir:~/Maildir
disable_plaintext_auth = no
ssl_cert_file = /etc/ssl/certs/mail.pem
ssl_key_file = /etc/ssl/private/mail.key
log_path = /var/log/dovecot.log


                                                                             55
Proyecto Plataforma de Correos.

info_log_path = /var/log/dovecot.log

# IMAP configuration
protocol imap {
   mail_plugins = quota imap_quota
}

# POP3 configuration
protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
  mail_plugins = quota
}

# LDA configuration
protocol lda {
  postmaster_address = postmaster
  auth_socket_path = /var/run/dovecot/auth-master
  mail_plugins = quota
}

# LDAP authentication

auth default {
  mechanisms = plain login

    passdb ldap {
      args = /etc/dovecot/dovecot-ldap.conf
    }

    userdb ldap {
      args = /etc/dovecot/dovecot-ldap.conf
    }

    socket listen {
      master {
        path = /var/run/dovecot/auth-master
        mode = 0660
        user = dovecot
        group = mail
      }

        client {
           path = /var/spool/postfix/private/auth
           mode = 0660
           user = postfix
           group = postfix
        }
    }
}



                                                                                 56
Proyecto Plataforma de Correos.

Dejamos en blanco el archivo dovecot-ldap.conf.


#echo quot;quot; > /etc/dovecot/dovecot-ldap.conf


Procedemos a editarlo.


#pico /etc/dovecot/dovecot-ldap.conf


Debemos agregar las siguientes líneas, en donde se debe especificar el
dominio, entre otras cosas.


hosts = 127.0.0.1
auth_bind = yes
ldap_version = 3
base = dc=grupo9,dc=com
scope = subtree
user_attrs =
homeDirectory=home,uidNumber=uid,mailbox=mail,mailuserquota=quota=maildir:stor
age
user_filter = (&(objectClass=mailAccount)(mail=%u)(mailenable=OK))
pass_attrs = mail=user,userPassword=password
pass_filter = (&(objectClass=mailAccount)(mail=%u)(mailenable=OK))
default_pass_scheme = CRYPT
user_global_gid = mail

Ahora debemos ajustar los derechos para poder autorizar a Dovecot, con el fin
de que éste pueda utilizar los derechos UID y GID cuando se almacena el
mensaje en el Maildir de cada usuario.


# dpkg-statoverride --update --add root dovecot 4755 /usr/lib/dovecot/deliver


Reiniciamos el servicio Dovecot.
# /etc/init.d/dovecot restart




                                                                                57
Proyecto Plataforma de Correos.

6.10 Configuración de Amavis.


Se configurará con el fin de que el Postfix pase los correos a Amavis. Éste, de
igual forma lo pasará a Sapamassassin y a CalmAV para que realicen el
respectivo escaneo contra spam y contra antivirus. Luego de haber aprobado el
mensaje por parte del servicio Amavis, éste debe reinyectar el mensaje a
Postfix.


Definir los filtros que utilizará Amavis en el archivo 15-content_filter_mode.


#pico /etc/amavis/conf.d/15-content_filter_mode


Se deben descomentar las siguientes líneas, si se desea, se puede borrar todo
el contenido de éste archivo de tal forma que sólo queden las siguientes líneas.


use strict;
@bypass_virus_checks_maps = (
  %bypass_virus_checks, @bypass_virus_checks_acl, $bypass_virus_checks_re);
@bypass_spam_checks_maps = (
  %bypass_spam_checks, @bypass_spam_checks_acl, $bypass_spam_checks_re);
1;

Editar el archivo 50-user.


#pico /etc/amavis/conf.d/50-user


El archivo debe ser parecido a esto.


use strict;
$pax='pax';
1;

Se debe crear el usuario clamav y agregarlo al grupo amavis.


#adduser clamav amavis




                                                                                 58
Proyecto Plataforma de Correos.

Editar el archivo 05-domain_id para especificar el dominio con que trabajará
Amavis.


#pico /etc/amavis/conf.d/05-domain_id


Debe se parecido a esto.


use strict;

#chomp($mydomain = `head -n 1 /etc/mailname`);
chomp($mydomain = `grupo9.com`);

@local_domains_acl = ( quot;.$mydomainquot; );

1; # insure a defined return

Editar el archivo 20-debian_defaults, con el fin de definir el etiquetado los virus,
spam y los niveles que Amavis utilizará para etiquetar a éstos.


#pico /etc/amavis/conf.d/20-debian_defaults


Debemos asegurarnos que las siguientes líneas estén parecidas a éstas.
        Nota: La plabra ***SPAM*** aparecerá delante del asunto del mensaje
en el caso de que sea un spam. Si todos los mensajes que recibimos o
enviamos los detecta como spam, debemos aumentar los niveles que están en
éste archivo.

$sa_spam_subject_tag = '***SPAM*** ';
$sa_tag_level_deflt       = 0.2; # add spam info headers if at, or above that level
$sa_tag2_level_deflt      = 0.2; # add 'spam detected' headers at that level
$sa_kill_level_deflt      = 0.1; # triggers spam evasive actions
$sa_dsn_cutoff_level      = 10; # spam level beyond which a DSN is not sent

$forward_method = 'smtp:127.0.0.1:10025';
$notify_method = $forward_method;
$final_virus_destiny      = D_DISCARD; # (data not lost, see virus quarantine)
$final_banned_destiny     = D_BOUNCE; # D_REJECT when front-end MTA
$final_spam_destiny       = D_PASS;
$final_bad_header_destiny = D_PASS; # False-positive prone (for spam)




                                                                                      59
Proyecto Plataforma de Correos.

Reiniciar los servicios amavis, clamav-daemon, clamav-freshclam para que se
apliquen los cambios efectuados.


#/etc/init.d/amavis restart
#/etc/init.d/clamav-daemon restart
#/etc/init.d/clamav-freshclam restart


6.11 Configuración Spamassassin


Se edita el archivo local.cf en donde se definirá el nivel de escaneo y las bases
de datos que se utilizarán.


#pico /etc/spamassassin/local.cf


Debemos asegurarnos que las siguientes líneas estén descomentadas.
       Nota: Si los mensajes que recibimos o enviamos los detecta a todos
como spam, debemos aumentar el score.


rewrite_header Subject *****SPAM*****
report_safe 1
required_score 0.3

Dentro del mismo archivo, agregar las siguientes líneas, las cuales son las ba-
ses de datos que contienen el listado de los spam. Estas bases de datos se en-
cuentran ubicadas en Internet.

# dcc
use_dcc 1
dcc_path /usr/bin/dccproc

#pyzor
use_pyzor 1
pyzor_path /usr/bin/pyzor

#razor
use_razor2 1
razor_config /etc/razor/razor-agent.conf

#bayes
use_bayes 1


                                                                              60
Proyecto Plataforma de Correos.

use_bayes_rules 1
bayes_auto_learn 1

Habilitar los plugin de Spamassassin, para esto debemos editar el archivo
v310.pre.


#pico /etc/spamassassin/v310.pre


Asegurarse que las siguientes estén descomentadas.


loadplugin Mail::SpamAssassin::Plugin::DCC
loadplugin Mail::SpamAssassin::Plugin::Pyzor
loadplugin Mail::SpamAssassin::Plugin::Razor2
loadplugin Mail::SpamAssassin::Plugin::SpamCop
loadplugin Mail::SpamAssassin::Plugin::AWL
loadplugin Mail::SpamAssassin::Plugin::AutoLearnThreshold
loadplugin Mail::SpamAssassin::Plugin::WhiteListSubject
loadplugin Mail::SpamAssassin::Plugin::MIMEHeader
loadplugin Mail::SpamAssassin::Plugin::ReplaceTags

Se debe configurar Spamassassin de modo que se ejecute como demonio,
editando el archivo spamassassin.


#pico /etc/default/spamassassin


El archivo debe ser parecido al siguiente.


ENABLED=1
OPTIONS=quot;--create-prefs --max-children 5 --helper-home-dirquot;
PIDFILE=quot;/var/run/spamd.pidquot;
#NICE=quot;--nicelevel 15quot;
CRON=0

Para que se apliquen los cambios efectuados, se debe reiniciar Spamassassin
y Amavis.


#/etc/init.d/spamassassin start
#/etc/init.d/amavis restart




                                                                            61
Proyecto Plataforma de Correos.

6.12 Cetificados SSL


Se procede a darle seguridad a la consola MMC y al Squirrelmail. Para esto se
debe crear el directorio ssl dentro de apache2.


#mkdir /etc/apache2/ssl/


Pedimos el certificado para la MMC.


#openssl req -new -x509 -keyout /etc/apache2/ssl/server.key –out
/etc/apache2/ssl/server.crt -days 365 -nodes


Debemos de darle permisos a la llave server.key, con el fin que solo el root
pueda realizar acción sobre ella.


#chmod 600 /etc/apache2/ssl/server.key


Pedimos el certificado para el Webmail Squirrelmail.


#openssl req -new -x509 -keyout /etc/apache2/ssl/webmail.key –out
/etc/apache2/ssl/webmail.crt -days 365 -nodes


Debemos de darle permisos a la llave webmail.key.


#chmod 600 /etc/apache2/ssl/webmail.key


6.13 Configuraciòn Sitio Web MMC


Se debe tener claro, que para éste caso trabajaremos con Host Virtuales (Un
Vhost para la MMC y otro para el Squirremail).


Crear el sitio Web mmc, el cual cumplirá la función de redireccionar a mmcs
(De forma segura).



                                                                              62
Proyecto Plataforma de Correos.

#pico /etc/apache2/sites-available/mmc


Éste sitio debe contener las siguientes líneas.


<VirtualHost *:80>

 ServerName server1.grupo9.com

 RewriteEngine On
 RewriteCond %{HTTPS} off
 RewriteRule (.*) https://server1.grupo9.com/mmc

</VirtualHost>

Creamos el sitio Web mmcs.


#pico /etc/apache2/sites-available/mmcs


Éste sitio debe contener las siguientes líneas.


NameVirtualHost *:443

<VirtualHost *:443>

 ServerName server1.grupo9.com
 ServerAdmin Administrator@grupo9.com
 DocumentRoot /usr/share/mmc/

 SSLEngine on
 SSLCertificateKeyFile ssl/server.key
 SSLCertificateFile ssl/server.crt
 SSLProtocol all
 SSLCipherSuite
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNU
LL

 <Directory /usr/share/mmc/>
   AllowOverride None
   Order allow,deny
   Allow from all
   php_flag short_open_tag on
   SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128
 </Directory>

 ErrorLog /var/log/apache2/mmc_error.log


                                                                               63
Proyecto Plataforma de Correos.

 CustomLog /var/log/apache2/mmc_access.log combined
 LogLevel warn

</VirtualHost>




                                                                         64
Proyecto Plataforma de Correos.

6.14 Configuración Sitio Web Squirremail


Por defecto, cuando se instala Squirrelmail, éste instala su sitio web escrito en
php, el cual se encuentra en la ruta con el nombre de apache.conf
/usr/share/squirrelmail/config/apache.conf Si deseamos configurar de forma
básica el Squirrelmail, simplemente realizamos un enlace entre éste sitio y el
apache2.


#ln -s /usr/share/squirrelmail/config/apache.conf /etc/apache2/conf.d/apache.conf


Reiniciamos el apache2 para que se apliquen los cambios.


#/etc/init.d/apache2 restart


De éste modo se puede acceder al Squirrelmail via Web digitando en nuestro
navegador localhost.


       Forma Segura (SSL) Se procede a configurar el webmail Squirrelmail
de forma segura.


Crear el sitio Web webmail, el cual cumplirá la función de redireccionar a
webmails (De forma segura). Algo que se debe tener en cuenta, es que si
tenemos configurado el Squirrelmail de forma básica, simplemente debemos
elimnar el archivo /etc/apache2/conf.d/apache2 para que entren en conflicto
con el sitio del Squirrelmail que será configurado en /etc/apache2/sites-
available/


#rm /etc/apache2/conf.d/apache.conf


Luego se procede a configurar el sitio Web del Squirrelmail.


#pico /etc/apache2/sites-available/webmail


Éste sitio debe contener las siguientes líneas.


                                                                                    65
Proyecto Plataforma de Correos.



<VirtualHost *:80>

 ServerName webmail.grupo9.com

 RewriteEngine On
 RewriteCond %{HTTPS} off
 RewriteRule (.*) https://webmail.grupo9.com

</VirtualHost>

Creamos el sitio Web webmails.


#pico /etc/apache2/sites-available/webmails


Éste sitio debe contener las siguientes líneas, en las cuales se define el
respectivo certificado y llave para la seguridad del sitio Web.


Alias /squirrelmail /usr/share/squirrelmail

# users will prefer a simple URL like http://webmail.example.com

NameVirtualHost *:80

<VirtualHost *:443>

 DocumentRoot /usr/share/squirrelmail
 ServerAdmin Administrator@grupo9.com
 ServerName webmail.grupo9.com

SSLEngine on
SSLCertificateKeyFile ssl/webmail.key
SSLCertificateFile ssl/webmail.crt
SSLProtocol all
SSLCipherSuite
ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNU
LL

<Directory /usr/share/squirrelmail>
 Options Indexes FollowSymLinks
 <IfModule mod_php4.c>
  php_flag register_globals off
 </IfModule>
 <IfModule mod_php5.c>
  php_flag register_globals off
 </IfModule>


                                                                              66
Proyecto Plataforma de Correos.

 <IfModule mod_dir.c>
  DirectoryIndex index.php
 </IfModule>

 # access to configtest is limited by default to prevent information leak
 <Files configtest.php>
  order deny,allow
  allow from all
 </Files>
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128
</Directory>


</VirtualHost>

# redirect to https when available (thanks omen@descolada.dartmouth.edu)
#
# Note: There are multiple ways to do this, and which one is suitable for
# your site's configuration depends. Consult the apache documentation if
# you're unsure, as this example might not work everywhere.
#
#<IfModule mod_rewrite.c>
# <IfModule mod_ssl.c>
# <Location /squirrelmail>
#    RewriteEngine on
#    RewriteCond %{HTTPS} !^on$ [NC]
#    RewriteRule . https://%{HTTP_HOST}%{REQUEST_URI} [L]
# </Location>
# </IfModule>
#</IfModule>

Debemos darle la opción a apache2 que además escuche por el puerto 443
(Seguridad). Editar el archivo ports.conf.


#pico /etc/apache2/ports.conf


Agregar la línea Listen 443 de tal forma que el archivo quede de la siguiente
forma.


Listen 80
Listen 443


Procedemos a habilitar los sitios Web creados.



                                                                                 67
Proyecto Plataforma de Correos.

#a2ensite mmc
#a2ensite mmcs
#a2ensite webmail
#a2ensite webmails


Debemos reescribir los módulos de los sitios Web.


# a2enmod rewrite


Cargar el módulo ssl para que pueda funcionar la seguridad de los sitios Web.


# a2enmod ssl


Reinicira el servicio Web para que aplique los cambios efectuados.


# /etc/init.d/apache2 restart


6.15 Configuración Pluging MMC


Procedemos a configurar el plugin-base, el cual comunicará el Samba con la
MMC. Con esto se obtiene el buen funcionamiento de la interfaz web de la
MMC.


#pico /etc/mmc/plugins/base.ini


El contenido debe ser parecido al siguiente.


[ldap]
# LDAP we are connected to
host = 127.0.0.1
# LDAP base DN
baseDN = dc=grupo9, dc=com
# Users location in the LDAP
baseUsersDN = ou=Users, %(basedn)s
# Groups location in the LDAP
baseGroupsDN = ou=Groups, %(basedn)s
# Computers Locations


                                                                            68
Proyecto Plataforma de Correos.

baseComputersDN = ou=Computers, %(basedn)s
# LDAP manager
rootName = cn=admin, %(basedn)s
password = sena2008
# If enabled, the MMC will create/move/delete the home of the users
# Else will do nothing, but only write user informations into LDAP
userHomeAction = 1
# Skeleton directory to populate a new home directory
skelDir = /etc/skel
# If set, all new users will belong to this group when created
defaultUserGroup = Domain Users
# Default home directory for users
defaultHomeDir = /home
# user uid number start
uidStart = 10000
# group gid number start
gidStart = 10000
# LDAP log file path
logfile = /var/log/ldap.log
# FDS log file path
# logfile = /opt/fedora-ds/slapd-hostname/logs/access
# you can specify here where you can authorized creation of your homedir
# default is your defaultHomeDir
# example:
# authorizedHomeDir = /home, /home2, /mnt/depot/newhome
[backup-tools]
# Path of the backup tools
path = /usr/lib/mmc/backup-tools
# Where are put the archives
destpath = /home/samba/archives

Editar el plugin mail.ini para poder trabajar con los usuarios y dominios
virtuales.


#pico /etc/mmc/plugins/mail.ini


El archivo debe ser parecido a éste.


[main]
disable = 0
# Enable virtual domain support
vDomainSupport = 1
# If vdomain enabled, OU where the domain are stored
vDomainDN = ou=mailDomains, dc=grupo9, dc=com
[userDefault]
# For Postfix delivery


                                                                              69
Proyecto Plataforma de Correos.

mailbox = %homeDirectory%/Maildir/
# For Dovecot delivery
mailbox = maildir:%homeDirectory%/Maildir/
# Default quota (200 MBytes) set for user
#Ésta línea indica la cuota en Disco para el buzón de los correos.
mailuserquota = 204800

Editar el plugin network.ini para administrar los servicio DNS y DHCP.


#pico /etc/mmc/plugins/network.ini


El archivo debe ser parecido al siguiente.


[main]
disable = 0
[dhcp]
dn = ou=DHCP,dc=grupo9,dc=com
pidfile = /var/run/dhcpd.pid
init = /etc/init.d/dhcp3-server
logfile = /var/log/daemon.log
leases = /var/lib/dhcp3/dhcpd.leases
[dns]
dn = ou=DNS,dc=grupo9,dc=com
pidfile = /var/run/bind/run/named.pid
init = /etc/init.d/bind9
logfile = /var/log/daemon.log
bindroot = /etc/bind/
bindgroup = bind
# dnsreader = DNS Reader
# dnsreaderpassword = DNSReaderPassword

Iniciar la mmc-agent para que se apliquen los cambios efectuados y se ponga
en funcionamiento.


#/etc/init.d/mmc-agent start


Reiniciar el Servicio DNS.


# /etc/init.d/bind9 restart




                                                                                 70
Proyecto Plataforma de Correos.

6.16 Interfaz MMC


Para conectarse a la interfaz web de la MMC, se debe digitar en nuestro
navegador http://127.0.0.1 ó http://192.168.0.19. Cuando se tenga definido el
nombre de host y el nombre de dominio (FQDN) en la consola de
administración MMC se pueda ingresar con http://server1.grupo9.com/mmc
Como Login digitamos “root” y como password “sena2008”, dicho password es
la contraseña del administrador del LDAP.




Una ves haber ingresado, debe aparecer la consola de administración MMC.




                                                                           71
Proyecto Plataforma de Correos.

Procedemos a configurar la respectiva zona en el DNS. Para esto debemos dar
clic en “Network”, luego “Add DNS Zone”, llene los campos requeridos, luego
“Create” para guardar los cambios.




Se debe crear un alias al primer miembro de la zona DNS, de tal forma que el

host virtual del Squirremail sea accesible. Para esto se debe dar clic en “DNS

Zones”, luego en el ícono de la “Lupa”.




                                                                            72
Proyecto Plataforma de Correos.

Ahora, Dar clic en el icono del quot;lápiz y papelquot;.




Digitar “webmail” como alias del host “server1”, luego dar clic en “Confirm” para

confirmar la configuración.




Al confirmar los cambios aplicados, debe aparecer algo como esto.




                                                                                73
Proyecto Plataforma de Correos.

Se debe editar el ámbito DHCP. Para esto, dar clic en quot;DCHP subnetsquot;, luego

en el icono del quot;lápiz y papelquot;.




                                                                        74
Proyecto Plataforma de Correos.

Llenar los campos requeridos, de tal forma que sea parecida a la ilustración de

la imagen siguiente, luego dar clic en quot;Confirmquot; para guardar los cambios

realizados.




Al confirmar los cambios efectuados, debe aparecer álgo como esto.




                                                                            75
Proyecto Plataforma de Correos.

Hasta éste punto la configuración del servicio DHCP está completa, de ésta

forma y se puede iniciar dicho servicio. Para esto se debe hacer clic en

quot;Network services managementquot;, luego clic en el triángulo verde para iniciar el

servicio DHCP.




Para poder utilizar la cuenta de correo del Administrador se debe habilitar, Para

esto, dar clic en quot;Usersquot;, luego “List”. Dar clic en el icono de quot;Lápiz y Papelquot; en

la cuenta correspondiente del Administrator.




Digitar la dirección de correo en el campo “Mail address”.




      Nota: Se debe habilitar el plugin de correo e ingresar la cuota en disco

deseada, si no se le asigna alguna cuota, ésta cuenta tomará la cuota por

defecto (200 MB), Lugo guarde los cambios los cambios efectuados; ó se le



                                                                                76
Proyecto Plataforma de Correos.

puede dar la opción de la cuota ilimitada. Quizás deba ingresar la cuota

nuevamente (ya que la MMC la sobrescribe con el valor predeterminado) y

guardar los cambios.

Proceder a crear alguna cuenta de usuario del dominio. Dar clic en quot;Addquot;. Se

deben llenar los campos requeridos, sin embargo los campos obligatorios que

debemos llenar son: Login, Password, Confirm Password, Name, Mail address.

Para éste caso, crearemos dos usuarios: rafa, jeyson. Se mostrará primero la

plantilla del usuario rafa y luego la del usuario jeyson.




                                                                              77
Proyecto Plataforma de Correos.




                             78
Proyecto Plataforma de Correos.




                             79
Proyecto Plataforma de Correos.

Para trabajar con dominios virtuales debemos realizar los siguientes pasos. El

dominio virtual será “helplan.com”.




Ahora, procedemos a darle la opción a cada usuario para que pueda trabajar

con usuarios y dominios virtuales.

Usuario rafa.




                                                                           80
Proyecto Plataforma de Correos.

Buscamos la sección de Mail plugin (Editando el usuario rafa). En ésta prueba

trabajaremos de la siguiente forma:

Usuario Real: rafa

Usuario Virtual: rafael

Dominio Real: grupo9.com

Dominio Virtual: helplan.com

Al final, confirmamos los cambios.




                                                                          81
Proyecto Plataforma de Correos.

Buscamos la sección de Mail plugin (Editando el usuario jeyson). En ésta

prueba trabajaremos de la siguiente forma:

Usuario Real: jeyson

Usuario Virtual: jahenaoal

Dominio Real: grupo9.com

Dominio Virtual: helplan.com

Al final, confirmamos los cambios.




                                                                          82
Proyecto Plataforma de Correos.

7 CONFIGURACIÓN DEL LADO DEL CLIENTE (Windows XP. Aplica para

otras versiones de Windows).



Para unir algún equipo cliente XP al dominio grupo9.com debemos realizar los

siguientes pasos.

   •   Se debe cerciorarse que ningún otro DHCP esté corriendo en nuestra

       propia red.

   •   Inicie el Sistema de Windows e ingrese como Administrador local.

   •   Cerciorarse que la configuración de la tarjeta de red esté activada para

       usar DHCP.

   •   Clic derecho en “MI PC”, luego “Propiedades”.

   •   Clic en la pestaña “Nombre de equipo”, luego “Cambiar”.




                                                                            83
Proyecto Plataforma de Correos.


   •   Automáticamente ya debe estar definido el nombre de host “clon”.

       Seleccionar la casilla de “Dominio” y escribir el dominio al que quiere

       pertenece “GRUPO9”. Ojo, se digita como un nombre Netbios. Luego

       “Aceptar”.




Aparecerá la siguiente ventana, en la cual debemos ingresar la cuenta del

“Administrator” y la contraseña “sena2008”.




                                                                           84
Proyecto Plataforma de Correos.

Esperar unos segundos. Debe aparecer una pequeña ventana dándo la

bienvenida al dominio GRUPO9. Luego “Aceptar”.




Luego, el quipo nos pedirá que se deba reiniciar el sistema. Clic en

“Aceptar” para todo.




Luego de que el Sitema haya reiniciardo, ingresar alguna de las cuentas

creada anteriormente (rafa ó jeyson). Además debemos dar la opción al

inico de seción, que nos loguearemos contra un dominio y no contra el

sistema.




                                                                    85
Proyecto Plataforma de Correos.

8 Comprobación del Servidor de Correos.



8.1 Usarios y Dominios Virtuales.

Para ingresar al correo electrónico desde el PDC o desde el cliente XP

debemos realizar los siguientes pasos.

      •   Digitar en nuestro navegador webmail.grupo9.com Nos daremos

          cuenta     que     de     inmediato     se     redireccionará    a

          https://webmail.grupo9.com (De forma segura). Pedirá que se debe

          obtener un certificado para poder visualizar el contenido del sitio

          Web. Clic en OK.




                                                                          86
Proyecto Plataforma de Correos.


•   En la siguiente imagen muestra si aceptamos el respectivo certificado

    para poder conectarce de forma segura al sitio Web. Clic en OK.




•   De ésta forma, iniciamos sesión sesión con la cuenta de correo

    rafa@grupo9.com y con contraseña sena2008 (Password del

    usuario).




                                                                      87
Proyecto Plataforma de Correos.

Una ves de haber ingresado al correo, procedemos a enviar un correo

electrónico a la cuenta jeyson@helplan.com (helplan.com es un dominio virtual)

ó podemos enviar el mensaje a la cuenta jahenaoal@helplan.com




En teoría, el correo ha haberle llegado al buzón del usuario jeyson. Para

probar, ingresamos a la cuenta jeyson@grupo9.com con contraseña sena2008




                                                                           88
Proyecto Plataforma de Correos.

Podemos darnos cuenta que el correo fue recibido.




      •   Nota: Si el correo aún no ha llegado, debemos esperar unos

          minutos, ya que el proceso de enviar y recibir correos electrónicos es

          un suceso que consume recursos de cómputo.



8.2 Comprobación AntiSpam.

Para realizar la comprobación si el antispam spamassassin está en buen

funcionamiento,    debemos      enviar   un     mensaje    desde    la   cuenta

rafa@grupo9.com a la cuenta jeyson@grupo9.com, con la palabra “viagra”

varias veces, y como asunto digitar “viagra”.

Una ves hecho esto, revisamos la cuenta jeyson@grupo9.com y observamos el

siguiente etiquetado que spamassassin le agrega al mensaje.



                                                                             89
Proyecto Plataforma de Correos.




8.3 Comprobación Antivirus.

Para esto, probamos enviando un archivo adjunto .zip o .exe. El antivirus no

acepta estos tipos de extenciones y los reconoce de inmediato como virus.

Enviaremos un mensaje desde la cuenta rafa@grupo9.com a la cuenta

jeyson@grupo9.com con el archivo adjunto prueba.exe.

Una vez hecho esto, en pocos segundos, aparecerá el siguiente mensaje en la

cuenta rafa@grupo9.com anunciando que el mensaje que intentó enviar está

catalogado como virus.




                                                                         90
Proyecto Plataforma de Correos.


                              9 CONCLUSIÓN



Con el desarrollo de éste proyecto nos damos cuenta de que el Software Libre

intenta suplir una de las necesidades mas importantes en una infraestructura

de red como lo es un servicio de directorio, en este caso es MDS el que nos

brinda esa posibilidad de implementar este servicio en una de las distribuciones

mas estables en el mundo del software libre como GNU/DEBIAN.



Además, se logró entender y explicar el funcionamiento, y facil administración

del servidor de correos mediante el MTA Postfix y sus respectivos soportes que

tiene frente a otras aplicaciones como lo son Dovetoc, Amavis, Squirrelmail,

SSL, entre otras.



Con la elaboración de éste proyecto, logramos entender una gran cantidada de

conceptos que no estaban estipulados dentro de los objetivos de éste, por lo

que nos lleva a decir que cumplió satisfactoriamente los objetivos especificados

dentro del proyecto.




                                                                             91
Servidor De Correo En Debian

Más contenido relacionado

La actualidad más candente

Conceptos y Protocolos de Enrutamiento (Capitulo 9)
Conceptos y Protocolos de Enrutamiento (Capitulo 9)Conceptos y Protocolos de Enrutamiento (Capitulo 9)
Conceptos y Protocolos de Enrutamiento (Capitulo 9)Cristiān Villegās
 
Topologia de redes, que es internet, router, swtichs, modems.
Topologia de redes, que es internet, router, swtichs, modems.Topologia de redes, que es internet, router, swtichs, modems.
Topologia de redes, que es internet, router, swtichs, modems.LilianaGordillo25
 
Creacion de una red wan en cisco packet tracer
Creacion de una red wan en cisco packet tracerCreacion de una red wan en cisco packet tracer
Creacion de una red wan en cisco packet tracerJenny Lophezz
 
Trabajo de Redes e Internet
Trabajo de Redes e InternetTrabajo de Redes e Internet
Trabajo de Redes e InternetPirry
 
Diseño y normas para data centers
Diseño y normas para data centersDiseño y normas para data centers
Diseño y normas para data centersCarlos Joa
 
Estaciones de trabajo o workstation
Estaciones de trabajo o workstationEstaciones de trabajo o workstation
Estaciones de trabajo o workstationJICP19
 
Redes Cap4
Redes Cap4Redes Cap4
Redes Cap4CJAO
 
Reto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracerReto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracermictla
 
Adaptadores De Red
Adaptadores De RedAdaptadores De Red
Adaptadores De RedAna kristell
 
Manual Básico de Redes
Manual Básico de RedesManual Básico de Redes
Manual Básico de RedesAntonio Anil
 
(équipements réseau)
(équipements réseau)(équipements réseau)
(équipements réseau)Anouar Abtoy
 
Componentes para una red lan
Componentes para una red lanComponentes para una red lan
Componentes para una red lanCln Landon
 
Taller 1 subnetting
Taller 1  subnettingTaller 1  subnetting
Taller 1 subnettingAlumic S.A
 
Capitulo 2 enrutamiento estatico
Capitulo 2 enrutamiento estaticoCapitulo 2 enrutamiento estatico
Capitulo 2 enrutamiento estaticomalienlaf
 

La actualidad más candente (20)

Conceptos y Protocolos de Enrutamiento (Capitulo 9)
Conceptos y Protocolos de Enrutamiento (Capitulo 9)Conceptos y Protocolos de Enrutamiento (Capitulo 9)
Conceptos y Protocolos de Enrutamiento (Capitulo 9)
 
Topologia de redes, que es internet, router, swtichs, modems.
Topologia de redes, que es internet, router, swtichs, modems.Topologia de redes, que es internet, router, swtichs, modems.
Topologia de redes, que es internet, router, swtichs, modems.
 
Creacion de una red wan en cisco packet tracer
Creacion de una red wan en cisco packet tracerCreacion de una red wan en cisco packet tracer
Creacion de una red wan en cisco packet tracer
 
Trabajo de Redes e Internet
Trabajo de Redes e InternetTrabajo de Redes e Internet
Trabajo de Redes e Internet
 
Diseño y normas para data centers
Diseño y normas para data centersDiseño y normas para data centers
Diseño y normas para data centers
 
Estaciones de trabajo o workstation
Estaciones de trabajo o workstationEstaciones de trabajo o workstation
Estaciones de trabajo o workstation
 
Enlace troncal
Enlace troncalEnlace troncal
Enlace troncal
 
Redes Cap4
Redes Cap4Redes Cap4
Redes Cap4
 
Reto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracerReto resuelto 7.5.2 PacketTracer
Reto resuelto 7.5.2 PacketTracer
 
Respuestas
RespuestasRespuestas
Respuestas
 
Cableado estructurado
Cableado estructuradoCableado estructurado
Cableado estructurado
 
Componenes de una red Wireless
Componenes de una red WirelessComponenes de una red Wireless
Componenes de una red Wireless
 
Cours VTP
Cours VTPCours VTP
Cours VTP
 
Adaptadores De Red
Adaptadores De RedAdaptadores De Red
Adaptadores De Red
 
Manual Básico de Redes
Manual Básico de RedesManual Básico de Redes
Manual Básico de Redes
 
Les vlans
Les vlansLes vlans
Les vlans
 
(équipements réseau)
(équipements réseau)(équipements réseau)
(équipements réseau)
 
Componentes para una red lan
Componentes para una red lanComponentes para una red lan
Componentes para una red lan
 
Taller 1 subnetting
Taller 1  subnettingTaller 1  subnetting
Taller 1 subnetting
 
Capitulo 2 enrutamiento estatico
Capitulo 2 enrutamiento estaticoCapitulo 2 enrutamiento estatico
Capitulo 2 enrutamiento estatico
 

Similar a Servidor De Correo En Debian

Configuracion
ConfiguracionConfiguracion
Configuracion1 2d
 
Postfix
PostfixPostfix
PostfixYapool
 
Servidor de correo exchange 2010
Servidor de correo exchange 2010Servidor de correo exchange 2010
Servidor de correo exchange 2010Vanesa Percy
 
Servidor de correo Exchange 2010 sobre Windows Server 2012
Servidor de correo Exchange 2010 sobre  Windows Server 2012Servidor de correo Exchange 2010 sobre  Windows Server 2012
Servidor de correo Exchange 2010 sobre Windows Server 2012Vanesa Rodríguez Percy
 
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-Sonia Garcia
 
Introducción exchange 2010
Introducción exchange 2010Introducción exchange 2010
Introducción exchange 2010Cation1510
 
Proyecto Aplicaciones Web
Proyecto Aplicaciones WebProyecto Aplicaciones Web
Proyecto Aplicaciones WebCesar Pineda
 
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfEvidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfMontoyaVallejoAngela
 
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfEvidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfMontoyaVallejoAngela
 
Evidencia SUMATIVA Reporte de practica COMP-2.pdf
Evidencia SUMATIVA Reporte de practica COMP-2.pdfEvidencia SUMATIVA Reporte de practica COMP-2.pdf
Evidencia SUMATIVA Reporte de practica COMP-2.pdfMontoyaVallejoAngela
 
Taller sistemas distribuidos linux usando VMWare
Taller sistemas distribuidos linux usando VMWareTaller sistemas distribuidos linux usando VMWare
Taller sistemas distribuidos linux usando VMWareDamian Barrios Castillo
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicsimeonhuamanchao
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicsimeonhuamanchao
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicsimeonhuamanchao
 
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculoJosé Ramón Cerquides Bueno
 

Similar a Servidor De Correo En Debian (20)

Configuracion
ConfiguracionConfiguracion
Configuracion
 
Postfix
PostfixPostfix
Postfix
 
Servidor de correo exchange 2010
Servidor de correo exchange 2010Servidor de correo exchange 2010
Servidor de correo exchange 2010
 
Servidor de correo Exchange 2010 sobre Windows Server 2012
Servidor de correo Exchange 2010 sobre  Windows Server 2012Servidor de correo Exchange 2010 sobre  Windows Server 2012
Servidor de correo Exchange 2010 sobre Windows Server 2012
 
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
8699418 manual-de-instalacion-y-configuracion-del-servidor-de-correo-postfix-
 
Introducción exchange 2010
Introducción exchange 2010Introducción exchange 2010
Introducción exchange 2010
 
Servidor de correo en Zentyal 3.5
Servidor de correo en Zentyal 3.5Servidor de correo en Zentyal 3.5
Servidor de correo en Zentyal 3.5
 
Proyecto Aplicaciones Web
Proyecto Aplicaciones WebProyecto Aplicaciones Web
Proyecto Aplicaciones Web
 
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfEvidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
 
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdfEvidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
Evidencia SUMATIVA Reporte de practica COMP-2 ANMV 3821.pdf
 
Evidencia SUMATIVA Reporte de practica COMP-2.pdf
Evidencia SUMATIVA Reporte de practica COMP-2.pdfEvidencia SUMATIVA Reporte de practica COMP-2.pdf
Evidencia SUMATIVA Reporte de practica COMP-2.pdf
 
Taller sistemas distribuidos linux usando VMWare
Taller sistemas distribuidos linux usando VMWareTaller sistemas distribuidos linux usando VMWare
Taller sistemas distribuidos linux usando VMWare
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Computación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológicComputación distribuida y su aplicación tecnológic
Computación distribuida y su aplicación tecnológic
 
Reporte final
Reporte finalReporte final
Reporte final
 
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo
147755331 presentacion-sistema-de-mensajeria-electronica-del-centro-de-calculo
 
Guia postfix
Guia postfixGuia postfix
Guia postfix
 
Todas
TodasTodas
Todas
 
Autenticacion unica
Autenticacion unicaAutenticacion unica
Autenticacion unica
 

Más de Cesar Pineda

ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEX
ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEXORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEX
ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEXCesar Pineda
 
Manual Zebra ZT230
Manual Zebra ZT230 Manual Zebra ZT230
Manual Zebra ZT230 Cesar Pineda
 
Clonacion disco duro
Clonacion disco duroClonacion disco duro
Clonacion disco duroCesar Pineda
 
Configuracion De Dispositivo Blackberry Como Modem Win Vista
Configuracion De Dispositivo Blackberry Como Modem Win VistaConfiguracion De Dispositivo Blackberry Como Modem Win Vista
Configuracion De Dispositivo Blackberry Como Modem Win VistaCesar Pineda
 
Manual De Isa Server
Manual De Isa ServerManual De Isa Server
Manual De Isa ServerCesar Pineda
 
Manual De Instalacion De Asterisk
Manual De Instalacion De AsteriskManual De Instalacion De Asterisk
Manual De Instalacion De AsteriskCesar Pineda
 
Monitoreo En Windows
Monitoreo En WindowsMonitoreo En Windows
Monitoreo En WindowsCesar Pineda
 

Más de Cesar Pineda (14)

ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEX
ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEXORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEX
ORACLE LINUX 7 + DB 12C + WEBLOGIC + FORMS AND REPORTS 12C + WEBUTIL + APEX
 
Manual Zebra ZT230
Manual Zebra ZT230 Manual Zebra ZT230
Manual Zebra ZT230
 
Clonacion disco duro
Clonacion disco duroClonacion disco duro
Clonacion disco duro
 
Configuracion De Dispositivo Blackberry Como Modem Win Vista
Configuracion De Dispositivo Blackberry Como Modem Win VistaConfiguracion De Dispositivo Blackberry Como Modem Win Vista
Configuracion De Dispositivo Blackberry Como Modem Win Vista
 
Manual Iptables
Manual IptablesManual Iptables
Manual Iptables
 
Manual Endian
Manual EndianManual Endian
Manual Endian
 
Manual De Isa Server
Manual De Isa ServerManual De Isa Server
Manual De Isa Server
 
Manual De Instalacion De Asterisk
Manual De Instalacion De AsteriskManual De Instalacion De Asterisk
Manual De Instalacion De Asterisk
 
Conceptos Vo Ip
Conceptos Vo IpConceptos Vo Ip
Conceptos Vo Ip
 
Paper Final
Paper FinalPaper Final
Paper Final
 
Paper
PaperPaper
Paper
 
Monitoreo En Windows
Monitoreo En WindowsMonitoreo En Windows
Monitoreo En Windows
 
Aplicaciones Web
Aplicaciones WebAplicaciones Web
Aplicaciones Web
 
Zenoss Manual
Zenoss ManualZenoss Manual
Zenoss Manual
 

Último

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel tallerValentinaTabares11
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOnarvaezisabella21
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzzAlexandergo5
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesEdomar AR
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúCEFERINO DELGADO FLORES
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptchaverriemily794
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxtjcesar1
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificialcynserafini89
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfjeondanny1997
 

Último (20)

El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Excel (1) tecnologia.pdf trabajo Excel taller
Excel  (1) tecnologia.pdf trabajo Excel tallerExcel  (1) tecnologia.pdf trabajo Excel taller
Excel (1) tecnologia.pdf trabajo Excel taller
 
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPOAREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
AREA TECNOLOGIA E INFORMATICA TRABAJO EN EQUIPO
 
tarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzztarea de exposicion de senati zzzzzzzzzz
tarea de exposicion de senati zzzzzzzzzz
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
Los Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, AplicacionesLos Microcontroladores PIC, Aplicaciones
Los Microcontroladores PIC, Aplicaciones
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del PerúRed Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
Red Dorsal Nacional de Fibra Óptica y Redes Regionales del Perú
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).pptLUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
LUXOMETRO EN SALUD OCUPACIONAL(FINAL).ppt
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptxModelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
Modelo de Presentacion Feria Robotica Educativa 2024 - Versión3.pptx
 
Presentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia ArtificialPresentación sobre la Inteligencia Artificial
Presentación sobre la Inteligencia Artificial
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdfLa Electricidad Y La Electrónica Trabajo Tecnología.pdf
La Electricidad Y La Electrónica Trabajo Tecnología.pdf
 

Servidor De Correo En Debian

  • 1. PROYECTO PLATAFORMA DE CORREOS SOBRE LINUX DEBIAN Administración de Redes de Computadores Presentado por: Rafael Emiro Vega Tirado. Jeyson Andrey Henao Alvarez. Jonathan Andrés Loaiza García. César Augusto Pineda González. Leidy Marcela Martinez Alzate. Grupo: 9 HELP LAN Presentado a: Prof. Andrés Mauricio Ortiz. Servicio Nacional de Aprendizaje “SENA” Regional Antioquia Centro de Servicios y Gestión Empresarial. 2008
  • 2. Proyecto Plataforma de Correos. ÍNDICE Página. 1 Introducción. 4 2 Objetivos. 5 2.1 Objetivo General. 5 2.3 Objetivos Específicos. 5 3 Conceptos Teóricos. 6 3.1 MTA. 6 3.2 MDA. 6 3.3 MUA. 6 3.4 WEBMAIL. 7 3.5 Postfix. 7 3.6 Dovecot. 7 3.7 Amavis-New. 8 3.8 SASL. 8 3.9 SSL Y TLS. 8 3.10 Squirrelmail. 8 3.11 Tipos De Buzones Para El Correo. 9 3.11.1 Mailbox. 9 3.11.2 Maildir. 9 3.12 Mandriva Directory Server “MDS”. 10 3.13 Cómo Trabaja El Servidor De Correos. 11 4 Descripición De Los Paquetes A Utilizar. 12 5 Instalación. 14 5.1 Preparación Del Sistema. 14 5.2 Hostname. 14 5.3 Filesystem ACL´s. 15 5.4 Repositorios. 16 5.5 Instalación De Los Paquetes A Utilizar. 18 6 Configuraciones. 27 6.1 Configuración Del LDAP. 27 6.2 Configuración De Samba. 33 2
  • 3. Proyecto Plataforma de Correos. 6.3 Configuración Del PAM LDAP. 43 6.4 Configuración DNS (BIND9). 46 6.5 Configuración DHCP. 46 6.6 SSL Para El Correo (Entidad Certificador). 47 6.7 Configuración SASL. 48 6.8 Configuración Postfix. 50 6.9 Configuración De Dovecot. 55 6.10 Configuración De Amavis. 58 6.11 Configuración De Spamassassin. 60 6.12 Certificados SSL. 62 6.13 Configuración Sitio Web MMC. 62 6.14 Configuración Sitio Web Squirrelmail. 65 6.15 Configuración Plugin MMC. 68 6.16 Interfaz MMC. 71 7 Configuración Del Lado Del Cliente. 83 8 Comprobación Del Servidor De Correos. 86 8.1 Usuarios Y Dominios Virtuales. 86 8.2 Comprobación Antispam. 89 8.3 Comprobación Antivirus. 90 9 Conclusión. 91 10 Bibliografía. 92 3
  • 4. Proyecto Plataforma de Correos. 1 INTRODUCCIÓN En éste proyecto presentaremos una guía avanzada de cómo instalar y configurar una plataforma o sistema de correos segura utilizando el MTA Postfix, Dovecot (IMAP y POP3), Amavis-New (Spamassassin y ClamAV), TLS, OpenSSL, SASL, Squirrelmail. De igual forma, se debe instalar y configurar un Servicio de Directorios para poder autenticar y almacenar la base de datos de los usuarios, para esto se utilizará la base de datos de OpenLDAP la cual será administrada desde el servicio de directorio de Mandriva Directory Server. Todo lo anterior estará instalado y configurado sobre el Sistema Operativo GNU/Linux Debian. 4
  • 5. Proyecto Plataforma de Correos. 2 OBJETIVOS 2.1 OBJETIVO GENERAL Se debe diseñar, implementar y gestionar un sistema o plataforma de correos en el Sistema Operativo GNU/Linux Debian. 2.2 OBJETIVOS ESPECÍFICOS Se debe presentar un manual de configuración del sistema de correos. En cuyo manual se debe tener en cuenta los siguientes objetivos en lo que se enfocará el proyecto. • Cifrar el tráfico entre usuarios y servidor. • Validar los usuarios contra un sistema de directorios. • Almacene los correos de los usuarios en un sistema de directorios. • Permita configurar usuarios y dominios virtuales. • Soporte un sistema de antivirus, antispam y antimawalre. • Soporte administración gráfica. • Soporte acceso POP, IMAP y Webmail (Realizarlo de forma segura con SSL). 5
  • 6. Proyecto Plataforma de Correos. 3 CONCEPTOS TEÓRICOS 3.1 MTA Mail Transportation Agent, Agente de Transporte de Correo. Es una aplicación que cumple la función de transferir correos electrónicos de una computadora a otra. En si, éste es el servidor de correos que utiliza el protocolo SMTP. Dentro de MTA´s están: Microsoft Exchange, Postfix, Sendmail, Qmail, Exim, entre otros. • SMTP: (Simple Mail Transfer Protocol, Protocolo Simple de Transferencia de Correos). El cual se basa en el intercambio de correos electrónicos entre equipos de cómputo, entre otros dispositivos como los son los celulares, PDA´s, etc. Éste se basa en la estructura Cliente- Servidor. Trabaja por el puerto 25 3.2 MDA Mail Delivery Agente, Agente de Entrega de Correo. Un MTA del destinatario entrega el correo electrónico al servidor de correo entrante (Otro MTA), cuando esto sucede, servidor de correo entrante recibirá el nombre de MDA, el cual almacena el correo electrónico mientras espera que el usuario lo acepte. 3.3 MUA Mail User Agent, Agente Usuario de Correo. Es un programa, que se instala en la computadora del usuario, con el fin de realizar las funciones de leer y enviar correos electrónicos. Dentro de éstas características están: Microsoft Outlook, Mozilla Thunderbird, Eudora Mail, Incredimail, Lotus Notes, entre otros. 6
  • 7. Proyecto Plataforma de Correos. 3.4 WEBMAIL Es un cliente de correo electrónico, el cual provee una interfaz Web con el fin de acceder a los correos electrónicos; es decir, con ésta aplicación podemos ingresar, leer, enviar correos electrónicos vía Web. 3.5 Postfix. Es un MTA de código abierto, utilizado para el envío de correos electrónicos utilizando el protocolo en SMTP, el cual pretende ser fácil en su administración, ser rápido y, algo importante, ser compatible con otros MTA como Sendmail, Qmail, Exim, entre otros. Postfix no es un programa monolítico, sino que utiliza una gran combinación de paquetes; dichos paquetes cumple una función específica en los parámetros de configuración. 3.6 Dovecot. Simplemente es un Servidor POP/IMAP. Éstos son utilizados para recuperar los mensajes de los servidores MDA. • POP: (Simple Mail Transfer Protocol), utilizado en los clientes locales de correo con el fin de obtener los correos almacenados en un servidor remoto, de ésta forma, los correos se pueden guardar en el equipo cliente, aunque nada impide dejar los correos en el servidor. Trabaja en el puerto 110 • IMAP: (Internet Message Access Protocol), Es más complejo y obtiene ciertas ventajas sobre POP por ejemplo: Permite visualizar los correos remotamente y no descargarlos al equipo cliente como lo hace POP, de tal forma que si se borra un mensaje desde un usuario se borrará en el servidor, si abrimos un mensaje desde el cliente también se abrirá en el servidor. Trabaja en el puerto 143 7
  • 8. Proyecto Plataforma de Correos. 3.7 AMAVIS-NEW 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 • Spamassassin: 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. • ClamaAV: É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.8 SASL Es un Framework utilizado para la autenticación y autorización de protocolos de red. Sin embargo requiere mecanismos de ayuda como lo es TLS para realizar el cifrado de los datos al momento de ser transferidos. 3.9 SSL Y 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.10 SQUIRRELMAIL Es un WebMail o cliente Web, el cual cumple la función de revisar y enviar correos desde una interfaz Web. 8
  • 9. Proyecto Plataforma de Correos. 3.11 TIPOS DE BUZONES PARA EL CORREO Los servidores de correo utilizan uno de los dos tipos de buzones: Mailbox y Maildir. 3.11.1 MAILBOX: Es un tipo de buzón que almacena los correos en forma de cola, es decir, éste almacena todos los correos de un respectivo usuario en un solo archivo; de ésta forma todo correo, sea spam, enviado o recibido se al macerarán en ese único archvio. Cada usuario, por lógica tiene su propio archivo. En Linux De- bian éste archivo está ubicado en la siguiente ruta /var/spool/mail/[USUARIO]. 3.11.2 MAILDIR: Es otro tipo de buzón consiste en un directorio, en el cual existen otros subdirectorios en los que van guardados los mensajes en diferentes archivos. De ésta forma los mensajes spam, enviados o recibidos se almacenarán en archivos distintos. En Linux Debian generalmente el archivo Maildir se encuentra en la siguiente ruta /home/[USUARIO]/Maildir. 9
  • 10. Proyecto Plataforma de Correos. 3.12 MANDRIVA DIRECTORY SERVER “MDS” Es una plataforma de directorio o servicio de directorio basado en OpenLDAP diseñado 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 servios de red, las aplicaciones y la configuración de los usuarios. Éste servicio de directorio puede correr sobre diferentes distribuciones de Linux, en pocas palabras, se puede instalar y configurar tanto en la distribución de Linux Mandriva como en Linux Debian, entre otras. Se puede dar una breve explicación mediante la siguiente gráfica a cerca del funcionamiento de éste. • Servicio de Directorios: Es un repositorio de información estructurado que cumple la función de almacenar y organizar la información de los usuarios en la red de datos. Por medio del SD se logra el acceso a los recursos sobre una red. • 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. • Directorios: Es una base de datos, que en general contiene información más descrita basada en atributos. 10
  • 11. Proyecto Plataforma de Correos. 3.13 CÓMO TRABAJA EL SERVIDOR DE CORREOS Cuando un correo electrónico es enviado, el mensaje se enruta de servidor al servidor hasta llegar al servidor de correo destinatario, de ésta forma, el mensaje se envía al servidor de correo (MTA), el cual tiene como función de transportar los mensajes hacia el MTA destinatario. En Internet los servidores MTA se comunican mediante el protocolo SMTP, por lo que también son llamados servidores SMTP o servidores de correo saliente. Luego el MTA destinatario entrega el correo electrónico al MDA o servidor de correo entrante; éste almacena el mensaje mientras espera que el usuario lo acepte. Los servidores MDA también reciben el nombre de servidores POP/IMAP. 11
  • 12. Proyecto Plataforma de Correos. 4. DESCRIPCIÓN DE LOS PAQUETES A UTILIZAR Para la instalación del MDS junto con la plataforma de correo se deben instalar ciertos paquetes, por consiguiente, se deberá realizar una pequeña explicación de la función de cada paquete. • Mmc-web-base mmc-web-mail mmc-web-network mmc-web-proxy mmc-web-samba mmc-agent: Son los paquetes utilizados para la administración gráfica del servicio de directorios como tal. • Python-mmc-plugins-tools python-mmc-base python-mmc-mail python-mmc-network python-mmc-proxy python-mmc-samba: Son las librerías de Python (Lenguaje de programación), utilizados para comprender el lenguaje de los paquetes mmc. • Postfix: es el MTA como tal. • Postfix-ldap: es el esquema del Postfix con el fin de ser utilizado para ser poblado en la base de datos del LDAP. • Dovecot-common, dovecot-imapd, dovecot-pop3d: Contienen los servicios de POP3 e IMAP. • Amavisd-new: Es el paquete que contiene la interfaz entre el MTA y los filtros. • Lzop, zoo, unzip, unrar, unzoo, arj, gzip, bzip2, nomarch: Utilidades compresor de archivos. • Razor, pyzor, dcc: Son las bases de datos, ubicadas en Internet, que contienen las listas de spam. De ésta forma Éstos le indican a Spamassassin qué debe detectar como spam. • Sasl2-bin, libsasl2, libsasl2-modules: Utilizado para la autenticación y autorización de algunos protocolos de red, depende de sus respectivas librerías. • Dhcp3-server, dhcp3-server-ldap, bind9: Son los paquetes que contienen los servicios de DHCP y DNS y su respectivos paquetes para ser poblados al LDAP. 12
  • 13. Proyecto Plataforma de Correos. • Clamav, clamav-daemon: Es el paquete que instala el Antivirus para el servidor de correos. • Spamassassin: Es el paquete del Antispam para el servidor de correos. • Slapd: Es el paquete del LDAP. • Samba, smbclient, smbldap-tools: Samba es el servidor como tal, smbclient es el cliente de samba y el paquete sambldap-tools es el que define cómo se conectará el Samba con el LDAP. • Squirrelmail: Es un Webmail tilizado para revisar los correos vía Web. 13
  • 14. Proyecto Plataforma de Correos. 5. INSTALACIÓN. 5.1 Preparación del Sistema. Nuestra máquina contará con las siguientes especificaciones: Hostname: server1.grupo9.com Samba Domain: GRUPO9 IP: 192.168.0.19 Gateway: 192.168.0.1 Passwords Para Todo: sena2008 5.2 Hostname: Editar el archivo hosts con el fin de que nuestra máquina nos resuelva localmente por ahora. #pico /etc/hosts El archive debe quedar de ésta forma: 127.0.0.1 localhost.localdomain localhost 192.168.0.19 server1.grupo9.com server1 # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters ff02::3 ip6-allhosts Proceder a poner como nombre a nuestra máquina server1.grupo9.com el cual se define en el archivo hostname #echo server1.grupo9.com > /etc/hostname Luego reiniciamos el sistema para que aplique los cambios efectuados. 14
  • 15. Proyecto Plataforma de Correos. #reboot Probamos de la siguiente forma si los cambios fueron aplicados. Para ver el nombre de nuestra máquina. #hostname Para probar si nuestra propia máquina está resolviendo nuestro nombre de host FQDN. #hostname -f FQDN: Fully Qualified Domain Name, Es el nombre que incluye el “nombre de equipo” y el “nombre de dominio” asosociado a un equipo. Por ejemplo, en nuestro caso, nuestro nombre de máquina es server1 cuyo dominio es grupo9.com, el FQDN será server1.grupo9.com. En ambos resultados nos debe mostrar lo siguiente. server1.grupo9.com 5.3 Filesystem ACL´s. Se debe agregar ACL´s al Filesystem a nuestro punto de montaje “/”. ACL: Access Control List, Lista de Control de Acceso. En este sistema de permisos los ficheros no tienen fijos los permisos (como en el modelo tradicional, que tiene tres permisos “para el usuario propietario, grupo propietario y otros”), sino que los permisos del fichero en realidad son una lista de Entradas de Control de Acceso. Cada una de las ACE´s contiene lo parámetros de usuario/grupo y permiso que indica un tipo de acceso determinado para un usuario o grupo; el conjunto de todas éstas forman la ACL que marca el tipo de acceso permitido en un fichero. 15
  • 16. Proyecto Plataforma de Correos. Editar el archivo fstab. #pico /etc/fstab Agregar la palabra opcion ACL en el punto de montaje. Debe quedar de la siguiente forma: # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/sda1 / ext3 defaults,acl,errors=remount-ro 0 1 /dev/sda5 none swap sw 0 0 /dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 Debemos remontar el punto de montaje “/” para que aplique los cambios. #mount -o remount / Para probar si los cambios fueron realizados, digitamos el siguiente comando. #mount -l Debe aparecer una línea parecida a ésta. /dev/sda1 on / type ext3 (rw,acl,errors=remount-ro) 5.4 REPOSITORIOS Para instalar los paquetes requeridos para realizar éste trabajo se deben utili- zar los siguientes repositorios, los cuales habilitamos en el archivo sources.list #pico /etc/apt/sources.list Agregar los siguientes repositorios. 16
  • 17. Proyecto Plataforma de Correos. # MDS repository deb http://mds.mandriva.org/pub/mds/debian etch main # Debian Volatile deb http://volatile.debian.org/debian-volatile etch/volatile main contrib non-free # Debian Etch Backports deb http://www.backports.org/debian etch-backports main #OTROS deb http://ftp.es.debian.org/debian/ etch main contrib non-free deb ftp://ftp.us.debian.org/debian sarge main contrib non-free Antes de actualizar la lista de repositorios, debemos pedir una llave de acceso para poder descargar los paquetes Backports. #wget -O - http://backports.org/debian/archive.key | apt-key add - Luego se procede a actualizar la lista de repositorios. #apt-get update 17
  • 18. Proyecto Plataforma de Correos. 5.5 INSTALACIÓN DE LOS PAQUETES A UTILIZAR Se procede a instalar los siguientes paquetes para luego empezar a configurar los respectivos archivos de configuración. apt-get install mmc-web-base mmc-web-mail mmc-web-network mmc-web-proxy mmc-web-samba mmc-agent python-mmc-plugins-tools python-mmc-base python- mmc-mail python-mmc-network python-mmc-proxy python-mmc-samba postfix post- fix-ldap sasl2-bin libsasl2 libsasl2-modules amavisd-new libdbd-ldap-perl libnet-ph- perl libnet-snpp-perl libnet-telnet-perl lzop nomarch zoo clamav clamav-daemon gzip bzip2 unzip unrar-free unzoo arj spamassassin squirrelmail libnet-dns-perl razor pyzor dcc-client slapd ldap-utils libnss-ldap libpam-ldap dhcp3-server dhcp3-server-ldap bind9 samba smbclient smbldap-tools En éste paso procedemos a realizar la configuración inicial del LDAP y el Post- fix. Digitar la contraseña para la base de datos LDAP “sena2008”. 18
  • 19. Proyecto Plataforma de Correos. Confirmamos la contraseña “sena2008”. 19
  • 20. Proyecto Plataforma de Correos. Seleccionamos “Aceptar”. Lo cual indica la versión del servicio DHCP y anuncia que el servicio no será autorizado automáticamente. Digitar el nombre del grupo de trabajo “GRUPO9”. Éste nombre trabaja como un nombre Netbios. 20
  • 21. Proyecto Plataforma de Correos. Escoger la opción “<NO>”. Con esto damos la opción que no queremos actualizaciones dinámicas para el Samba por parte del DHCP. Se procede a la configuración inicial del servicio de Postfix “Aceptar”. 21
  • 22. Proyecto Plataforma de Correos. Escogemos la opción “Sitio de Internet”, con el fin de que nuestro servicio de correo se vea a través de Internet, claro está, por medio de un dominio. Digitar el nombre de correo “server1.grupo9.com”. Éste nombre indentifica desde dónde se a originado el correo. 22
  • 23. Proyecto Plataforma de Correos. Identificado de Recuros para el Servidor LDAP. Digitar “ldap://127.0.0.1/”, con el fin de contactar al LDAP por medio de dicha IP y pueda ser contactado. Digitar el Nombre Distintivo (DN) “dc=grupo9,dc=com”, el cual será utilizado para la base de búsqueda. 23
  • 24. Proyecto Plataforma de Correos. Vesión de LDAP a utilizar “3” Se debe utilizar la versión más reciente que esté disponible. Cuenta LDAP para root “cn=admin.,dc=grupo9,dc=com”. Con el fin de definir la cuenta para el root, el cual tendrá todos lo privilegios para el LDAP. 24
  • 25. Proyecto Plataforma de Correos. Contraseña para la cuenta LDAP de root “sena2008”. Éste mensaje indica que el archivo nsswitch.conf no se gestiona automáticamente, por lo tanto, mas adelante debemos modificarlo manualmente. 25
  • 26. Proyecto Plataforma de Correos. Make local root Database admin. “<No>”. Indica si solo el root puede ver la base de datos del LDAP. ¿Hace falta un usuario para acceder a la base de datos LDAP? “<No>” Se utiliza para permitir a otros usuarios acceder a la base de datos LDAP. 26
  • 27. Proyecto Plataforma de Correos. Ahora procedemos a instalar los paquetes del Dovecot (POP3 e IMAP). #apt-get install -t etch-backports dovecot-common dovecot-imapd dovecot-pop3d El comando “apt-get install -t” da la opción de copiar todas la fuentes de argumento dentro del directorio; en éste caso copiará todas las fuentes del direcorio etch-backport, el cual está especificado en la lista de repositorios. 6. CONFIGURACIONES 6.1 CONFIGURACIÓN DEL LDAP Se procede copiar los el esquema del Mail, Samba, MMC, DNS, DHCP y agregarlos al squema del LDAP. #cp /usr/share/doc/python-mmc-base/contrib/ldap/mmc.schema /etc/ldap/schema/ #cp /usr/share/doc/python-mmc-base/contrib/ldap/mail.schema /etc/ldap/schema/ #zcat /usr/share/doc/python-mmc-base/contrib/ldap/samba.schema.gz > /etc/ldap/schema/samba.schema #zcat /usr/share/doc/python-mmc-base/contrib/ldap/dnszone.schema.gz > /etc/ldap/schema/dnszone.schema #zcat /usr/share/doc/python-mmc-base/contrib/ldap/dhcp.schema.gz > /etc/ldap/schema/dhcp.schema Debemos indicarle al LDAP que acepte los esquemas que acabamos de copiar, para esto editamos el archivo sldap.conf. #pico /etc/ldap/slapd.conf De ésta forma, procedemos a incluir las listas de los esquemas que copiamos anteriormente. 27
  • 28. Proyecto Plataforma de Correos. include /etc/ldap/schema/mmc.schema include /etc/ldap/schema/samba.schema include /etc/ldap/schema/mail.schema include /etc/ldap/schema/dnszone.schema include /etc/ldap/schema/dhcp.schema Sin embargo, debemos habilitar éstas líneas agregadas, por lo que debemos incluri la siguiente línea debajo de éstas. schemacheck on Se debe cifrar la contraseña del Admin LDAP, ya que en el momento de la instalación no se cifró. Esto se hace con el fin de darle seguridad a la clave de acceso para el administrador. La contraseña se encripta en el formato SSHA. #slappasswd -s sena2008 Deba aparecer algo parecido a esto. {SSHA}lPd5OeiUGx4lyZUiQ2MFmzXV0JWyKV9A Abrir el archivo de configuración del LDAP para agregar ésta clave encriptada. #pico /etc/ldap/sldap.conf Buscar la línea que dice rootdn, y descoméntela, de tal forma que quede así. rootdn quot;cn=admin,dc=grupo9,dc=comquot; Y Agrege debajo de ésta la linea rootpw junto con la clave del Admin LDAP encriptada que originamos anteriormente. rootpw {SSHA}lPd5OeiUGx4lyZUiQ2MFmzXV0JWyKV9A Dentro del mismo archivo, buscar la siguiente opción. index objectClass eq Bórrela o coméntela y agregue las siguientes. 28
  • 29. Proyecto Plataforma de Correos. index objectClass,uidNumber,gidNumber eq index cn,sn,uid,displayName pres,sub,eq index memberUid,mail,givenname eq,subinitial index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq index zoneName,relativeDomainName eq index dhcpHWAddress,dhcpClassData eq Debemos definir las listas de acceso que samba tendrá sobre el LDAP y los respectiviso atributos de los usuarios. De ésta forma, buscamos y cambiamos la línea que dice. access to attrs=userPassword,shadowLastChange Por ésta. access to attrs=userPassword,sambaLMPassword,sambaNTPassword El archive sldap.conf debe de quedar de ésta forma. # This is the main slapd configuration file. See slapd.conf(5) for more # info on the configuration options. ###################################################################### # # Global Directives: # Features to permit #allow bind_v2 # Schema and objectClass definitions include /etc/ldap/schema/core.schema include /etc/ldap/schema/cosine.schema include /etc/ldap/schema/nis.schema include /etc/ldap/schema/inetorgperson.schema incluye /etc/ldap/schema/mmc.schema include /etc/ldap/schema/samba.schema include /etc/ldap/schema/printer.schema include /etc/ldap/schema/mail.schema include /etc/ldap/schema/dnszone.schema include /etc/ldap/schema/dhcp.schema schemacheck on # Where the pid file is put. The init.d script # will not stop the server if you change this. pidfile /var/run/slapd/slapd.pid 29
  • 30. Proyecto Plataforma de Correos. # List of arguments that were passed to the server argsfile /var/run/slapd/slapd.args # Read slapd.conf(5) for possible values loglevel 0 # Where the dynamically loaded modules are stored modulepath /usr/lib/ldap moduleload back_bdb # The maximum number of entries that is returned for a search operation sizelimit 500 # The tool-threads parameter sets the actual amount of cpu's that is used # for indexing. tool-threads 1 ###################################################################### # # Specific Backend Directives for bdb: # Backend specific directives apply to this backend until another # 'backend' directive occurs backend bdb checkpoint 512 30 ###################################################################### # # Specific Backend Directives for 'other': # Backend specific directives apply to this backend until another # 'backend' directive occurs #backend <other> ###################################################################### # # Specific Directives for database #1, of type bdb: # Database specific directives apply to this databasse until another # 'database' directive occurs database bdb # The base of your directory in database #1 suffix quot;dc=grupo9,dc=comquot; # rootdn directive for specifying a superuser on the database. This is needed # for syncrepl. rootdn quot;cn=admin,dc=grupo9,dc=comquot; rootpw {SSHA}Lc4KZ36flCnEKGVJcVP/uJvCcW8Yg+7B # Where the database file are physically stored for database #1 directory quot;/var/lib/ldapquot; 30
  • 31. Proyecto Plataforma de Correos. # For the Debian package we use 2MB as default but be sure to update this # value if you have plenty of RAM dbconfig set_cachesize 0 2097152 0 # Sven Hartge reported that he had to set this value incredibly high # to get slapd running at all. See http://bugs.debian.org/303057 # for more information. # Number of objects that can be locked at the same time. dbconfig set_lk_max_objects 1500 # Number of locks (both requested and granted) dbconfig set_lk_max_locks 1500 # Number of lockers dbconfig set_lk_max_lockers 1500 # Indexing options for database #1 index objectClass,uidNumber,gidNumber eq index cn,sn,uid,displayName pres,sub,eq index memberUid,mail,givenname eq,subinitial index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq index zoneName,relativeDomainName eq index dhcpHWAddress,dhcpClassData eq # Save the time that the entry gets modified, for database #1 lastmod on # Where to store the replica logs for database #1 # replogfile /var/lib/ldap/replog # The userPassword by default can be changed # by the entry owning it if they are authenticated. # Others should not be able to see it, except the # admin entry below # These access lines apply to database #1 only access to attrs=userPassword,sambaLMPassword,sambaNTPassword by dn=quot;cn=admin,dc=grupo9,dc=comquot; write by anonymous auth by self write by * none # Ensure read access to the base for things like # supportedSASLMechanisms. Without this you may # have problems with SASL not knowing what # mechanisms are available and the like. # Note that this is covered by the 'access to *' # ACL below too but if you change that as people # are wont to do you'll still need this if you # want SASL (and possible other things) to work # happily. access to dn.base=quot;quot; by * read 31
  • 32. Proyecto Plataforma de Correos. # The admin dn has full write access, everyone else # can read everything. access to * by dn=quot;cn=admin,dc=grupo9,dc=comquot; write by * read # For Netscape Roaming support, each user gets a roaming # profile for which they have write access to #access to dn=quot;.*,ou=Roaming,o=morsnetquot; # by dn=quot;cn=admin,dc=grupo9,dc=comquot; write # by dnattr=owner write ###################################################################### # # Specific Directives for database #2, of type 'other' (can be bdb too): # Database specific directives apply to this databasse until another # 'database' directive occurs #database <other> # The base of your directory for database #2 #suffix quot;dc=debian,dc=orgquot; De igual forma, se debe editar el archivo de configuración ldap.conf, con el fin de especificarle al LDAP la IP y el nombre de dominio con que se quiere que trabaje. #pico /etc/ldap/ldap.conf Agregamos las siguientes líneas al final del archivo. host 127.0.0.1 base dc=example,dc=com Reiniciamos el servidor LDAP para que aplique los cambios efectuados. #/etc/init.d/sldap restart 32
  • 33. Proyecto Plataforma de Correos. 6.2 CONFIGURACIÓN DE SAMBA Proceder a configurar el servidor Samba, ya que el LDAP necesita de éste para poder almacenar los usuarios, password, entre otros, además para poder integrar las redes de Linux con las de Microsoft. Primero debemos parar el servicio. #/etc/init.d/samba stop Para integrar el servidor Samba con el LDAP debemos copiar el archivo smb.conf del LDAP y pegarlo en directorio de Samba. Éste archivo es ofrecido por las librerías del python-mmc-base, las cuales fueron instaladas anteriormente, dichas librerías se encuentran en la siguiente ruta ya que al momento de la inatalación se ubican en /usr/share/doc/. #cp /usr/share/doc/python-mmc-base/contrib/samba/smb.conf /etc/samba/ De ésta forma, editar el archivo de configuración smb.conf. #pico /etc/samba/smb.conf En la sección [Global] se deben modificar las siguientes líneas, de tal forma que se parezcan a éstas. workgroup = GRUPO9 netbiosname = SRV-GRUPO9 ldap admin dn = cn=admin,dc=grupo9,dc=com ldap suffix = dc=grupo9,dc=com logon path = %Nprofiles%U 33
  • 34. Proyecto Plataforma de Correos. Adicionalmente, en la sección [Global], agregar las siguientes líneas, ya que no vienen por defecto en el archivo smb.conf del LDAP. Estas líneas representan el soporte y la integración que el Samba tendrá sobre el LDAP. preferred master = yes os level = 65 wins support = yes timeserver = yes socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192 logon drive = H: passwd program = /usr/sbin/smbldap-passwd -u %u passwd chat = quot;Changing password for*nNew password*quot; %nn quot;*Retype new password*quot; %nn add user script = /usr/sbin/smbldap-useradd -m quot;%uquot; add user to group script = /usr/sbin/smbldap-groupmod -m quot;%uquot; quot;%gquot; set primary group script = /usr/sbin/smbldap-usermod -g quot;%gquot; quot;%uquot; add group script = /usr/sbin/ambldap-groupadd -p quot;%gquot; delete user script = /usr/sbin/smbldap-userdel quot;%uquot; delete user from group script = /usr/sbin/smbldap-groupmod -x quot;%uquot; quot;%gquot; delete group script = /usr/sbin/smbldap-groupdel quot;%gquot; obey pam restrictions = no ldap idmap suffix = ou=Users ldap delete dn = no security = user En la sección [homes], agregar la siguiente línea. Con ésta línea le estamos dando la opción al Samba que oculte el Maildir (Buzón) de cada usuario. hide files = /Maildir/ En la sección [profiles], agregar la siguiente línea, con el fin de que los archivos de Samba estén ocultos. 34
  • 35. Proyecto Plataforma de Correos. hide files = /desktop.ini/ntuser.ini/NTUSER.*/ En la sección [archives], editar la siguiente línea, de ésta forma especificamos la ruta de los archivos del samba, los cuales estarán ocultos por la opción que le dimos en el paso anterior. path = /home/samba/archives Además, agregar al final del archivo smb.conf el siguiente bloque [partage] que no viene por defecto. Esto es si queremos, ya que éste bloque no afecta para nada la configuración; simplemente se utiliza para publicar algunos servicios. [partage] comment = aucun path = /home/samba/partage browseable = yes public = no writeable = yes El archivo de configuración smb.conf debe quedar de ésta forma. [global] preferred master = yes os level = 65 wins support = yes timeserver = yes socket options = SO_KEEPALIVE IPTOS_LOWDELAY SO_SNDBUF=8192 SO_RCVBUF=8192 logon drive = H: passwd program = /usr/sbin/smbldap-passwd -u %u passwd chat = quot;Cambiando clave para*nNueva clave*quot; %nn quot;*Confirme nueva clave*quot; %nn add user script = /usr/sbin/smbldap-useradd -m quot;%uquot; add user to group script = /usr/sbin/smbldap-groupmod -m quot;%uquot; quot;%gquot; set primary group script = /usr/sbin/smbldap-usermod -g quot;%gquot; quot;%uquot; add group script = /usr/sbin/ambldap-groupadd -p quot;%gquot; delete user script = /usr/sbin/smbldap-userdel quot;%uquot; delete user from group script = /usr/sbin/smbldap-groupmod -x quot;%uquot; quot;%gquot; delete group script = /usr/sbin/smbldap-groupdel quot;%gquot; obey pam restrictions = no ldap idmap suffix = ou=Users ldap delete dn = no security = user 35
  • 36. Proyecto Plataforma de Correos. workgroup = GRUPO9 netbiosname = SRV-GRUPO9 server string = Mandriva Directory Server - SAMBA %v log level = 3 null passwords = yes # unix charset = ISO8859-1 name resolve order = bcast host domain logons = yes domain master = yes printing = cups printcap name = cups logon path = %Nprofiles%u logon script = logon.bat map acl inherit = yes nt acl support = yes force unknown acl user = Yes passdb backend = ldapsam:ldap://127.0.0.1/ ldap admin dn = cn=admin,dc=grupo9,dc=com ldap suffix = dc=grupo9,dc=com ldap group suffix = ou=Groups ldap user suffix = ou=Users ldap machine suffix = ou=Computers ldap idmap suffix = ou=Idmap idmap backend = ldap:ldap://127.0.0.1/ idmap uid = 20000-30000 idmap gid = 20000-30000 enable privileges = yes add machine script = /usr/lib/mmc/add_machine_script '%u' add share command = /usr/lib/mmc/add_change_share_script delete share command = /usr/lib/mmc/delete_share_script add printer command = /usr/lib/mmc/add_printer_script deleteprinter command = /usr/lib/mmc/delete_printer_script [homes] comment = Home directories browseable = no writeable = yes create mask = 0700 directory mask = 0700 hide files = /Maildir/ path = /home/samba/archives [public] comment = Public share path = /home/samba/shares/public browseable = yes public = yes writeable = yes 36
  • 37. Proyecto Plataforma de Correos. [archives] comment = Backup share path = /home/archives browseable = yes public = no writeable = no [printers] comment = All printers path = /var/spool/samba public = yes guest ok = yes browseable = no writeable = no printable = yes [print$] comment = Printer Driver Download Area path = /var/lib/samba/printers browseable = no guest ok = yes read only = yes write list = Administrador,root,@lpadmin force group = quot;Print Operatorsquot; create mask = 0775 directory mask = 0775 [netlogon] path = /home/samba/netlogon public = no writeable = no browseable = no [profiles] path = /home/samba/profiles writeable = yes create mask = 0700 directory mask = 0700 browseable = no hide files = /desktop.ini/ntuser.ini/NTUSER.*/ [partage] comment = aucun path = /home/samba/partage browseable = yes public = no writeable = yes 37
  • 38. Proyecto Plataforma de Correos. Digitar el siguiente comando con el fin de obtener un sumario de la configuración de Samba. Al final del sumario no debe presentar errores. #testparm Se procede a darle las credenciales a Samba para que pueda escribir sobre LDAP. #smbpasswd -w sena2008 Debe aparecer algo como esto, lo cual indica que las credenciales fueron asignadas correctamente. Setting stored password for quot;cn=admin,dc=grupo9,dc=comquot; in secrets.tdb Debemos genera un SID para el grupo de trabajo, con el fin de que el LDAP reconozca y autorice al Samba con éste identificador. #net getlocalsid GRUPO9 Debe mostrarnos al final algo como esto. No perdamos éste SID, ya que más adelante lo debemos utilizar. SID for domain GRUPO9 is: S-9-5-21-3159899829-923882392-54889933 Para comprobar que el SID fue registrado por el LDAP, digitamos el siguiente comando. #slapcat | grep sambaDomainName Lo más probable es que aparezcan algunas líneas de error, lo cual es normal. Lo que nos debe interesar es que aparezcan las siguientes líneas. 38
  • 39. Proyecto Plataforma de Correos. dn: sambaDomainName=GRUPO9,dc=grupo9,dc=com sambaDomainName: GRUPO9 Luego se procede a iniciar el servicio Samba. #/etc/init.d/samba start Debemos crear los archivos de configuración de smbldap-tools (smbldap_bind.conf, smbldap.conf), los cuales definen la forma de comunicarse el Samba con el LDAP. #pico /etc/smbldap-tools/smbldap_bind.conf El archivo debe llevar el siguiente contenido. slaveDN=quot;cn=admin,dc=grupo9,dc=comquot; slavePw=quot;sena2008quot; masterDN=quot;cn=admin,dc=grupo9,dc=comquot; masterPw=quot;sena2008quot; Ahora procedemos crear el archivo smbldap.conf. El contenido de éste debe llevar los siguiente (En la línea SID debemos poner nuestro SID, el cual generamos anteriormente). SID=quot; S-9-5-21-3159899829-923882392-54889933quot; sambaDomain=quot;GRUPO9quot; ldapTLS=quot;0quot; suffix=quot;dc=grupo9,dc=comquot; usersdn=quot;ou=Users,${suffix}quot; computersdn=quot;ou=Computers,${suffix}quot; groupsdn=quot;ou=Groups,${suffix}quot; idmapdn=quot;ou=Idmap,${suffix}quot; sambaUnixIdPooldn=quot;sambaDomainName=GRUPO9,${suffix}quot; scope=quot;subquot; hash_encrypt=quot;SSHAquot; userLoginShell=quot;/bin/bashquot; userHome=quot;/home/%Uquot; userHomeDirectoryMode=quot;700quot; userGecos=quot;System Userquot; defaultUserGid=quot;513quot; 39
  • 40. Proyecto Plataforma de Correos. defaultComputerGid=quot;515quot; skeletonDir=quot;/etc/skelquot; defaultMaxPasswordAge=quot;45quot; userSmbHome=quot;PDC-SRV-GRUPO9%Uquot; userProfile=quot;PDC-SRV-GRUPO9profiles%Uquot; userHomeDrive=quot;H:quot; userScript=quot;logon.batquot; mailDomain=quot;grupo9.comquot; smbpasswd=quot;/usr/bin/smbpasswdquot; Procedemos a poblar la base de datos LDAP y a crear la cuenta de Administrator en el dominio Administrator. Al final no pedirá la contraseña del Administrator, la cual será “sena2008”. #smbldap-populate -m 512 -a Administrator Se procede a cambiar el número UID de la cuenta, de lo contrario el Administrator no podrá utilizar el servidor de correos con ésta cuenta, además se debe agregar el usuario Administrador al grupo “Domain Users”. #smbldap-usermod -u 3000 -G quot;Domain Usersquot; Administrator Editar el archivo nsswitch.conf, para luego poder visualizar los usuarios y grupos del LDAP. #pico /etc/nsswitch.conf El archivo debe tener el siguiente contenido. # /etc/nsswitch.conf # # Example configuration of GNU Name Service Switch functionality. # If you have the `glibc-doc' and `info' packages installed, try: # `info libc quot;Name Service Switchquot;' for information about this file. passwd: compat ldap group: compat ldap shadow: compat ldap hosts: files dns networks: files protocols: db files 40
  • 41. Proyecto Plataforma de Correos. services: db files ethers: db files rpc: db files netgroup: nis Para comprobar si está en buen funcionamiento, digitamos el siguiente comando. #getent group Debemos cerciorarnos de que al final aparezca algo como esto, lo cual indica que está visualizando la base de datos LDAP. Domain Admins:*:512: Domain Users:*:513:Administrator,mauro,fefe,jona Domain Guests:*:514: Domain Computers:*:515: Administrators:*:544: Account Operators:*:548: Print Operators:*:550: Backup Operators:*:551: Replicators:*:552: Posible Fallo: Si no aparecen las anteriores lìneas, debemos editar los archivos libnss-ldap y libpam-ldap. #pico /etc/libnss-ldap.conf Buscamos las siguientes lineas y las descomentamos. En dichas lìneas digitaremos los valores correspondientes a nuestro dominio y unidad orgainizativa. nss_base_passwd ou=users,dc=grupo9,dc=com nss_base_group ou=groups,dc=grupo9,dc=com 41
  • 42. Proyecto Plataforma de Correos. Editar el siguiente archivo en donde estableceremos el nombre de dominio y unidades organizativas para los usuarios y grupos. Se deben descomentar. #pico /etc/pam_ldap.conf Las lìneas deben quedar de la siguiente forma. nss_base_passwd ou=users,dc=grupo9,dc=com?one nss_base_shadow ou=users,dc=grupo9,dc=com?one nss_base_group ou=groups,dc=grupo9,dc=com?one Luego se deben reconfigurar el paquete libnss-ldap ylibpam-ldap para que se apliquen los cambios efectuado en los dos archivos de configuración anteriores. #dpkg-reconfigure libnss-ldap Establecer los valores pertenecientes a nuestro nombre de dominio. #dpkg-reconfigure libpam-ldap Establecer los valores pertenecientes a nuestro dominio. Volver a probar la configuración del nsswitch con el comando tesparm. Ahora debemos crear unos directorios que Samba necesita para alojar sus archivos. Dichos directorios fueron los bloques que están descritos en el archivo smb.conf. 42
  • 43. Proyecto Plataforma de Correos. #mkdir -p /home/samba/shares/public/ #mkdir /home/samba/netlogon/ #mkdir /home/samba/profiles/ #mkdir /home/samba/partage/ #mkdir /home/samba/archives/ Se debe reiniciar el Samba para que se apliquen los cambios con respecto a los directorios creados. #/etc/init.d/samba restart Algunas veces, al reiniciar más adelante la MMC presenta errores, por esto debemos crear un directorio adicional “archives” en “/home/”. #mkdir /home/archives A los directorios creados en el paso anterior, debemos de darle los permisos específicos, para que Samba pueda tener derechos sobre dichos directorios. #chown -R :quot;Domain Usersquot; /home/samba/ #chmod 777 /var/spool/samba/ /home/samba/shares/public/ #chmod 755 /home/samba/netlogon/ #chmod 770 /home/samba/profiles/ /home/samba/partage/ #chmod 700 /home/samba/archives/ 6.3 Configuración del PAM LDAP. Ahora, debemos agregar el módulo del LDPA al PAM. Los cuales serán utilizados para la autenticación contra el LDAP. Específicamente los archivos que se modifican son: common-account, common-auth, common-password, common-session. Editar el archivo common-account. 43
  • 44. Proyecto Plataforma de Correos. #pico /etc/pam.d/common-account El archivo debe quedar de la siguiente forma. # # /etc/pam.d/common-account - authorization settings common to all services # # This file is included from other service-specific PAM config files, # and should contain a list of the authorization modules that define # the central access policy for use on the system. The default is to # only deny service to users whose accounts are expired in /etc/shadow. # account required pam_unix.so account sufficient pam_ldap.so Editar el archivo common-auth. #pico /etc/pam.d/common-auth El archivo debe quedar de la siguiente forma. # # /etc/pam.d/common-auth - authentication settings common to all services # # This file is included from other service-specific PAM config files, # and should contain a list of the authentication modules that define # the central authentication scheme for use on the system # (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the # traditional Unix authentication mechanisms. # auth sufficient pam_unix.so nullok_secure auth sufficient pam_ldap.so use_first_pass auth required pam_deny.so Editar el archivo common-password. #pico /etc/pam.d/common-password El archivo debe quedar de la siguiente forma. # 44
  • 45. Proyecto Plataforma de Correos. # /etc/pam.d/common-password - password-related modules common to all services # # This file is included from other service-specific PAM config files, # and should contain a list of modules that define the services to be #used to change user passwords. The default is pam_unix # The quot;nullokquot; option allows users to change an empty password, else # empty passwords are treated as locked accounts. # # (Add `md5' after the module name to enable MD5 passwords) # # The quot;obscurequot; option replaces the old `OBSCURE_CHECKS_ENAB' option in # login.defs. Also the quot;minquot; and quot;maxquot; options enforce the length of the # new password. password sufficient pam_unix.so nullok obscure min=4 max=8 md5 password sufficient pam_ldap.so use_first_pass use_authtok password required pam_deny.so # Alternate strength checking for password. Note that this # requires the libpam-cracklib package to be installed. # You will need to comment out the password line above and # uncomment the next two in order to use this. # (Replaces the `OBSCURE_CHECKS_ENAB', `CRACKLIB_DICTPATH') # # password required pam_cracklib.so retry=3 minlen=6 difok=3 # password required pam_unix.so use_authtok nullok md5 Editar el archivo common-session. #pico /etc/pam.d/common-session El archivo debe quedar de la siguiente forma. # # /etc/pam.d/common-session - session-related modules common to all services # # This file is included from other service-specific PAM config files, # and should contain a list of modules that define tasks to be performed # at the start and end of sessions of *any* kind (both interactive and # non-interactive). The default is pam_unix. # session required pam_unix.so session optional pam_ldap.so Para que estos cambios realizados, debemos reiniciar nuestro sistema. #reboot 45
  • 46. Proyecto Plataforma de Correos. Luego de haber iniciado el sistema, debemos darle derecho al grupo “Domain Admins” de agregar máquinas al dominio. #net -U Administrator rpc rights grant 'GRUPO9Domain Admins' SeMachineAccountPrivilege 6.4 Configuración DNS (BIND9) Procedemos a configurar el servicio DNS. #cp /usr/share/doc/python-mmc-base/contrib/bind/named.conf /etc/bind/ Ahora debemos especificarle al sistema que en la secuencia de inicio “rc.d” inicie primero el Sldap y luego el BIND. #update-rc.d -f slapd remove && update-rc.d slapd start 14 2 3 4 5 . stop 86 0 1 6 . Debemos especificar en la tarjeta de red que seamos nuestro propio registro DNS. #pico /etc/resolv.conf El archivo debe quedar de la siguiente forma. search grupo9.com nameserver 127.0.0.1 nameserver 192.168.0.19 6.5 Configuración DHCP Procedemos a configurara el servicio DHCP. #cp /usr/share/doc/python-mmc-base/contrib/dhcpd/dhcpd.conf /etc/dhcp3/ 46
  • 47. Proyecto Plataforma de Correos. Editar el archivo dhcpd.conf. #pico /etc/dhcp3/dhcpd.conf El contenido del archivo debe quedar de la siguiente forma. ldap-server quot;localhostquot;; ldap-port 389; ldap-username quot;cn=admin, dc=grupo9, dc=comquot;; ldap-password quot;sena2008quot;; ldap-base-dn quot;dc=grupo9, dc=comquot;; ldap-method dynamic; ldap-debug-file quot;/var/log/dhcp-ldap-startup.logquot;; 6.6 SSL Para El Correo (Entidad Certificadora). Se debe instalar una entidad certificadora para obtener los respectivos certificados y llaves para la seguridad de nuestros dos sitios Web: MMC, Squirrelmail. Debemos editar el archivo mail.cnf. #pico /etc/ssl/mail.cnf El archivo debe llevar el siguiente contenido. [ req ] default_bits = 2048 default_keyfile = privkey.pem distinguished_name = req_distinguished_name prompt = no string_mask = nombstr x509_extensions = server_cert [ req_distinguished_name ] countryName = DE stateOrProvinceName = Niedersachsen localityName = Lueneburg organizationName = Projektfarm GmbH organizationalUnitName = IT 47
  • 48. Proyecto Plataforma de Correos. commonName = server1.grupo9.com emailAddress = postmaster@grupo9.com [ server_cert ] basicConstraints = critical, CA:FALSE subjectKeyIdentifier = hash keyUsage = digitalSignature, keyEncipherment extendedKeyUsage = serverAuth, clientAuth nsCertType = server nsComment = quot;mailserverquot; Ahora, debemos crear el certificado SSL. #openssl req -x509 -new -config /etc/ssl/mail.cnf -out /etc/ssl/certs/mail.pem -keyout /etc/ssl/private/mail.key -days 365 -nodes -batch Especificar los derechos de la llave, de tal forma que solo el root pueda leerlo. #chmod 600 /etc/ssl/private/mail.key 6.7 Configuración SASL Postfix autenticará los usuarios contra la base de datos LDAP. Procedemos a crear el directorio saslauthd. En éste directorio se almacenará unos archivos, los cuales permiten la autenticación del Postfix contra el LDAP. #mkdir -p /var/spool/postfix/var/run/saslauthd/ Editar el archivo saslauthd, el cual debe quedar de la siguiente forma. START=yes MECHANISMS=quot;ldapquot; MECH_OPTIONS=quot;quot; THREADS=5 OPTIONS=quot;-c -m /var/spool/postfix/var/run/saslauthd -rquot; Luego, editar el archivo saslauthd.conf con el fin de indicarle a SASL contra quién va a realizar la autenticación. 48
  • 49. Proyecto Plataforma de Correos. #pico /etc/saslauthd.conf Debe quedar de la siguiente forma. ldap_servers: ldap://127.0.0.1 ldap_search_base: ou=Users,dc=grupo9,dc=com ldap_filter: (&(objectClass=mailAccount)(mail=%u@%r)(mailenable=OK)) Debemos crear el archivo smtpd.conf con el fin de indicarle a Postfix cuál va a hacer el método de autenticación. #pico /etc/postfix/sasl/smtpd.conf El contenido de éste archivo debe llevar lo siguiente. pwcheck_method: saslauthd mech_list: plain login Ahora, para que la autenticación se correcta, debemos crear el usuario postfix y agregarlo al grupo sasl. #adduser postfix sasl Debemos reiniciar SASL para que aplique los cambios efectuados. #/etc/init.d/saslauthd restart 49
  • 50. Proyecto Plataforma de Correos. 6.8 Configuración Postfix Copiamos los archivo del Postifx con el fin de poder trabajar con lo Usuarios y Dominios virtuales. #cp /usr/share/doc/python-mmc-base/contrib/postfix/with-virtual-domain/* /etc/postfix/ Editamos el archivo main.cf para modificar el dominio al que Postfix atenderá, usuarios y dominios virtuales, entre otros. #pico /etc/postfix/main.cf El archivo debe quedar de la siguiente forma. Nota: Recomendamos que copien cada una de las líneas que se representa a continuación, de tal forma que quede como se muestra a continuación. # 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_dot_mydomain = yes append_at_myorigin = yes # Uncomment the next line to generate quot;delayed mailquot; warnings #delay_warning_time = 4h myhostname = server1.grupo9.com mydomain = grupo9.com alias_maps = ldap:/etc/postfix/ldap-aliases.cf, hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = server1.grupo9.com,grupo9.com,localhost.localdomain,localhost mail_destination_recipient_limit = 1 mailbox_command = /usr/lib/dovecot/deliver -d quot;$USERquot;@quot;$DOMAINquot; relayhost = mynetworks = 127.0.0.0/8 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all 50
  • 51. Proyecto Plataforma de Correos. # Virtual Domains Control virtual_mailbox_domains = ldap:/etc/postfix/ldap-domains.cf 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 # Use Maildir home_mailbox = Maildir/ # Wait until the RCPT TO command before evaluating restrictions smtpd_delay_reject = yes # Basics Restrictions smtpd_helo_required = yes strict_rfc821_envelopes = yes # Requirements for the connecting server smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_rbl_client bl.spamcop.net, reject_rbl_client dnsbl.njabl.org, reject_rbl_client cbl.abuseat.org, reject_rbl_client sbl-xbl.spamhaus.org, reject_rbl_client list.dsbl.org, permit # Requirements for the HELO statement smtpd_helo_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname, reject_invalid_hostname, permit # Requirements for the sender address smtpd_sender_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender, reject_unknown_sender_domain, permit # Requirement for the recipient address smtpd_recipient_restrictions = permit_mynetworks, 51
  • 52. Proyecto Plataforma de Correos. permit_sasl_authenticated, reject_non_fqdn_recipient, reject_unknown_recipient_domain, reject_unauth_destination, permit # Enable SASL authentication for the smtpd daemon smtpd_sasl_auth_enable = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth # Fix for outlook broken_sasl_auth_clients = yes # Reject anonymous connections smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = # SSL/TLS smtpd_tls_security_level = may smtpd_tls_loglevel = 1 smtpd_tls_cert_file = /etc/ssl/certs/mail.pem smtpd_tls_key_file = /etc/ssl/private/mail.key smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache # Amavis content_filter = amavis:[localhost]:10024 receive_override_options = no_address_mappings Editar el archivo ldap.aliases.cf con el fin de definir los álias del LDAP en el Postfix. #pico /etc/postfix/ldap-aliases.cf Se debe editar simplemente el dominio con que se está trabajando. server_host = 127.0.0.1 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mailalias=%s)(mailenable=OK)) result_attribute = maildrop version = 3 Debemos editar el archivo master.cf en donde se definen qué protocolos y con qué servicio adicionales trabajará postfix. 52
  • 53. Proyecto Plataforma de Correos. #pico /etc/postfix/master.cf Al final del archivo, agregar las siguientes líneas de configuración. # SMTPS smtps inet n - - - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes # Dovecot dovecot unix - n n - - pipe flags=DRhu user=dovecot:mail argv=/usr/lib/dovecot/deliver -d $recipient # Mail to Amavis amavis unix - - - - 10 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes -o max_use=20 # Mail from Amavis 127.0.0.1:10025 inet n - - - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_delay_reject=no -o smtpd_client_restrictions=permit_mynetworks,reject -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o smtpd_data_restrictions=reject_unauth_pipelining -o smtpd_end_of_data_restrictions= -o mynetworks=127.0.0.0/8 -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000 -o smtpd_client_connection_count_limit=0 -o smtpd_client_connection_rate_limit=0 -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks Debemos de configurar los archivos ldap-accounts, ldap-aliases, ldap-domains, ldap-gid, ldap-maildrop, ldap-transport, ldap-uid con el fin de habilitar el uso de los usuarios y dominios virtuales. #pico /etc/postfix/ ldap-accounts 53
  • 54. Proyecto Plataforma de Correos. server_host = 127.0.0.1 server_port = 389 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s)) result_attribute = mailbox version = 3 expansion_limit = 1 #pico /etc/postfix/ ldap-aliases server_host = 127.0.0.1 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mailalias=%s)(mailenable=OK)) result_attribute = mail version = 3 #pico /etc/postfix/ ldap-domains server_host = 127.0.0.1 server_port = 389 search_base = ou=mailDomains,dc=mandriva,dc=com query_filter = (&(objectClass=mailDomain)(virtualdomain=%s)) result_attribute = virtualdomain version = 3 #pico /etc/postfix/ ldap-gid server_host = 127.0.0.1 server_port = 389 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mail=%s)(mailenable=OK)) result_attribute = gidNumber version = 3 expansion_limit = 1 #pico /etc/postfix/ ldap-maildrop server_host = 127.0.0.1 server_port = 389 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s)) result_attribute = maildrop version = 3 #pico /etc/postfix/ ldap-transport server_host = 127.0.0.1 server_port = 389 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mailenable=OK)(mail=%s)) result_attribute = mailhost 54
  • 55. Proyecto Plataforma de Correos. result_format = smtp:[%s] version = 3 #pico /etc/postfix/ ldap-uid server_host = 127.0.0.1 server_port = 389 search_base = ou=Users,dc=grupo9,dc=com query_filter = (&(objectClass=mailAccount)(mail=%s)(mailenable=OK)) result_attribute = uidNumber version = 3 expansion_limit = 1 Debemos reiniciar el Postfix para que se apliquen los cambios efectuados. #/etc/init.d/postfix restart 6.9 Configuración de Dovecot Debemos borrar todo el contenido del archivo dovecot.conf ya que éste no nos sirve para lo que queremos realizar. #echo quot;quot; > /etc/dovecot/dovecot.conf Procedemos a editar dicho archivo, que debería estar completamente en blanco. #pico /etc/dovecot/dovecot.conf El archivo debe quedar de ésta forma, en donde se debe especificar el dominio, entre otras cosas. protocols = imap imaps pop3 pop3s listen = 0.0.0.0 login_greeting = grupo9.com mailserver ready. mail_location = maildir:~/Maildir disable_plaintext_auth = no ssl_cert_file = /etc/ssl/certs/mail.pem ssl_key_file = /etc/ssl/private/mail.key log_path = /var/log/dovecot.log 55
  • 56. Proyecto Plataforma de Correos. info_log_path = /var/log/dovecot.log # IMAP configuration protocol imap { mail_plugins = quota imap_quota } # POP3 configuration protocol pop3 { pop3_uidl_format = %08Xu%08Xv mail_plugins = quota } # LDA configuration protocol lda { postmaster_address = postmaster auth_socket_path = /var/run/dovecot/auth-master mail_plugins = quota } # LDAP authentication auth default { mechanisms = plain login passdb ldap { args = /etc/dovecot/dovecot-ldap.conf } userdb ldap { args = /etc/dovecot/dovecot-ldap.conf } socket listen { master { path = /var/run/dovecot/auth-master mode = 0660 user = dovecot group = mail } client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix } } } 56
  • 57. Proyecto Plataforma de Correos. Dejamos en blanco el archivo dovecot-ldap.conf. #echo quot;quot; > /etc/dovecot/dovecot-ldap.conf Procedemos a editarlo. #pico /etc/dovecot/dovecot-ldap.conf Debemos agregar las siguientes líneas, en donde se debe especificar el dominio, entre otras cosas. hosts = 127.0.0.1 auth_bind = yes ldap_version = 3 base = dc=grupo9,dc=com scope = subtree user_attrs = homeDirectory=home,uidNumber=uid,mailbox=mail,mailuserquota=quota=maildir:stor age user_filter = (&(objectClass=mailAccount)(mail=%u)(mailenable=OK)) pass_attrs = mail=user,userPassword=password pass_filter = (&(objectClass=mailAccount)(mail=%u)(mailenable=OK)) default_pass_scheme = CRYPT user_global_gid = mail Ahora debemos ajustar los derechos para poder autorizar a Dovecot, con el fin de que éste pueda utilizar los derechos UID y GID cuando se almacena el mensaje en el Maildir de cada usuario. # dpkg-statoverride --update --add root dovecot 4755 /usr/lib/dovecot/deliver Reiniciamos el servicio Dovecot. # /etc/init.d/dovecot restart 57
  • 58. Proyecto Plataforma de Correos. 6.10 Configuración de Amavis. Se configurará con el fin de que el Postfix pase los correos a Amavis. Éste, de igual forma lo pasará a Sapamassassin y a CalmAV para que realicen el respectivo escaneo contra spam y contra antivirus. Luego de haber aprobado el mensaje por parte del servicio Amavis, éste debe reinyectar el mensaje a Postfix. Definir los filtros que utilizará Amavis en el archivo 15-content_filter_mode. #pico /etc/amavis/conf.d/15-content_filter_mode Se deben descomentar las siguientes líneas, si se desea, se puede borrar todo el contenido de éste archivo de tal forma que sólo queden las siguientes líneas. use strict; @bypass_virus_checks_maps = ( %bypass_virus_checks, @bypass_virus_checks_acl, $bypass_virus_checks_re); @bypass_spam_checks_maps = ( %bypass_spam_checks, @bypass_spam_checks_acl, $bypass_spam_checks_re); 1; Editar el archivo 50-user. #pico /etc/amavis/conf.d/50-user El archivo debe ser parecido a esto. use strict; $pax='pax'; 1; Se debe crear el usuario clamav y agregarlo al grupo amavis. #adduser clamav amavis 58
  • 59. Proyecto Plataforma de Correos. Editar el archivo 05-domain_id para especificar el dominio con que trabajará Amavis. #pico /etc/amavis/conf.d/05-domain_id Debe se parecido a esto. use strict; #chomp($mydomain = `head -n 1 /etc/mailname`); chomp($mydomain = `grupo9.com`); @local_domains_acl = ( quot;.$mydomainquot; ); 1; # insure a defined return Editar el archivo 20-debian_defaults, con el fin de definir el etiquetado los virus, spam y los niveles que Amavis utilizará para etiquetar a éstos. #pico /etc/amavis/conf.d/20-debian_defaults Debemos asegurarnos que las siguientes líneas estén parecidas a éstas. Nota: La plabra ***SPAM*** aparecerá delante del asunto del mensaje en el caso de que sea un spam. Si todos los mensajes que recibimos o enviamos los detecta como spam, debemos aumentar los niveles que están en éste archivo. $sa_spam_subject_tag = '***SPAM*** '; $sa_tag_level_deflt = 0.2; # add spam info headers if at, or above that level $sa_tag2_level_deflt = 0.2; # add 'spam detected' headers at that level $sa_kill_level_deflt = 0.1; # triggers spam evasive actions $sa_dsn_cutoff_level = 10; # spam level beyond which a DSN is not sent $forward_method = 'smtp:127.0.0.1:10025'; $notify_method = $forward_method; $final_virus_destiny = D_DISCARD; # (data not lost, see virus quarantine) $final_banned_destiny = D_BOUNCE; # D_REJECT when front-end MTA $final_spam_destiny = D_PASS; $final_bad_header_destiny = D_PASS; # False-positive prone (for spam) 59
  • 60. Proyecto Plataforma de Correos. Reiniciar los servicios amavis, clamav-daemon, clamav-freshclam para que se apliquen los cambios efectuados. #/etc/init.d/amavis restart #/etc/init.d/clamav-daemon restart #/etc/init.d/clamav-freshclam restart 6.11 Configuración Spamassassin Se edita el archivo local.cf en donde se definirá el nivel de escaneo y las bases de datos que se utilizarán. #pico /etc/spamassassin/local.cf Debemos asegurarnos que las siguientes líneas estén descomentadas. Nota: Si los mensajes que recibimos o enviamos los detecta a todos como spam, debemos aumentar el score. rewrite_header Subject *****SPAM***** report_safe 1 required_score 0.3 Dentro del mismo archivo, agregar las siguientes líneas, las cuales son las ba- ses de datos que contienen el listado de los spam. Estas bases de datos se en- cuentran ubicadas en Internet. # dcc use_dcc 1 dcc_path /usr/bin/dccproc #pyzor use_pyzor 1 pyzor_path /usr/bin/pyzor #razor use_razor2 1 razor_config /etc/razor/razor-agent.conf #bayes use_bayes 1 60
  • 61. Proyecto Plataforma de Correos. use_bayes_rules 1 bayes_auto_learn 1 Habilitar los plugin de Spamassassin, para esto debemos editar el archivo v310.pre. #pico /etc/spamassassin/v310.pre Asegurarse que las siguientes estén descomentadas. loadplugin Mail::SpamAssassin::Plugin::DCC loadplugin Mail::SpamAssassin::Plugin::Pyzor loadplugin Mail::SpamAssassin::Plugin::Razor2 loadplugin Mail::SpamAssassin::Plugin::SpamCop loadplugin Mail::SpamAssassin::Plugin::AWL loadplugin Mail::SpamAssassin::Plugin::AutoLearnThreshold loadplugin Mail::SpamAssassin::Plugin::WhiteListSubject loadplugin Mail::SpamAssassin::Plugin::MIMEHeader loadplugin Mail::SpamAssassin::Plugin::ReplaceTags Se debe configurar Spamassassin de modo que se ejecute como demonio, editando el archivo spamassassin. #pico /etc/default/spamassassin El archivo debe ser parecido al siguiente. ENABLED=1 OPTIONS=quot;--create-prefs --max-children 5 --helper-home-dirquot; PIDFILE=quot;/var/run/spamd.pidquot; #NICE=quot;--nicelevel 15quot; CRON=0 Para que se apliquen los cambios efectuados, se debe reiniciar Spamassassin y Amavis. #/etc/init.d/spamassassin start #/etc/init.d/amavis restart 61
  • 62. Proyecto Plataforma de Correos. 6.12 Cetificados SSL Se procede a darle seguridad a la consola MMC y al Squirrelmail. Para esto se debe crear el directorio ssl dentro de apache2. #mkdir /etc/apache2/ssl/ Pedimos el certificado para la MMC. #openssl req -new -x509 -keyout /etc/apache2/ssl/server.key –out /etc/apache2/ssl/server.crt -days 365 -nodes Debemos de darle permisos a la llave server.key, con el fin que solo el root pueda realizar acción sobre ella. #chmod 600 /etc/apache2/ssl/server.key Pedimos el certificado para el Webmail Squirrelmail. #openssl req -new -x509 -keyout /etc/apache2/ssl/webmail.key –out /etc/apache2/ssl/webmail.crt -days 365 -nodes Debemos de darle permisos a la llave webmail.key. #chmod 600 /etc/apache2/ssl/webmail.key 6.13 Configuraciòn Sitio Web MMC Se debe tener claro, que para éste caso trabajaremos con Host Virtuales (Un Vhost para la MMC y otro para el Squirremail). Crear el sitio Web mmc, el cual cumplirá la función de redireccionar a mmcs (De forma segura). 62
  • 63. Proyecto Plataforma de Correos. #pico /etc/apache2/sites-available/mmc Éste sitio debe contener las siguientes líneas. <VirtualHost *:80> ServerName server1.grupo9.com RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://server1.grupo9.com/mmc </VirtualHost> Creamos el sitio Web mmcs. #pico /etc/apache2/sites-available/mmcs Éste sitio debe contener las siguientes líneas. NameVirtualHost *:443 <VirtualHost *:443> ServerName server1.grupo9.com ServerAdmin Administrator@grupo9.com DocumentRoot /usr/share/mmc/ SSLEngine on SSLCertificateKeyFile ssl/server.key SSLCertificateFile ssl/server.crt SSLProtocol all SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNU LL <Directory /usr/share/mmc/> AllowOverride None Order allow,deny Allow from all php_flag short_open_tag on SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128 </Directory> ErrorLog /var/log/apache2/mmc_error.log 63
  • 64. Proyecto Plataforma de Correos. CustomLog /var/log/apache2/mmc_access.log combined LogLevel warn </VirtualHost> 64
  • 65. Proyecto Plataforma de Correos. 6.14 Configuración Sitio Web Squirremail Por defecto, cuando se instala Squirrelmail, éste instala su sitio web escrito en php, el cual se encuentra en la ruta con el nombre de apache.conf /usr/share/squirrelmail/config/apache.conf Si deseamos configurar de forma básica el Squirrelmail, simplemente realizamos un enlace entre éste sitio y el apache2. #ln -s /usr/share/squirrelmail/config/apache.conf /etc/apache2/conf.d/apache.conf Reiniciamos el apache2 para que se apliquen los cambios. #/etc/init.d/apache2 restart De éste modo se puede acceder al Squirrelmail via Web digitando en nuestro navegador localhost. Forma Segura (SSL) Se procede a configurar el webmail Squirrelmail de forma segura. Crear el sitio Web webmail, el cual cumplirá la función de redireccionar a webmails (De forma segura). Algo que se debe tener en cuenta, es que si tenemos configurado el Squirrelmail de forma básica, simplemente debemos elimnar el archivo /etc/apache2/conf.d/apache2 para que entren en conflicto con el sitio del Squirrelmail que será configurado en /etc/apache2/sites- available/ #rm /etc/apache2/conf.d/apache.conf Luego se procede a configurar el sitio Web del Squirrelmail. #pico /etc/apache2/sites-available/webmail Éste sitio debe contener las siguientes líneas. 65
  • 66. Proyecto Plataforma de Correos. <VirtualHost *:80> ServerName webmail.grupo9.com RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://webmail.grupo9.com </VirtualHost> Creamos el sitio Web webmails. #pico /etc/apache2/sites-available/webmails Éste sitio debe contener las siguientes líneas, en las cuales se define el respectivo certificado y llave para la seguridad del sitio Web. Alias /squirrelmail /usr/share/squirrelmail # users will prefer a simple URL like http://webmail.example.com NameVirtualHost *:80 <VirtualHost *:443> DocumentRoot /usr/share/squirrelmail ServerAdmin Administrator@grupo9.com ServerName webmail.grupo9.com SSLEngine on SSLCertificateKeyFile ssl/webmail.key SSLCertificateFile ssl/webmail.crt SSLProtocol all SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNU LL <Directory /usr/share/squirrelmail> Options Indexes FollowSymLinks <IfModule mod_php4.c> php_flag register_globals off </IfModule> <IfModule mod_php5.c> php_flag register_globals off </IfModule> 66
  • 67. Proyecto Plataforma de Correos. <IfModule mod_dir.c> DirectoryIndex index.php </IfModule> # access to configtest is limited by default to prevent information leak <Files configtest.php> order deny,allow allow from all </Files> SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128 </Directory> </VirtualHost> # redirect to https when available (thanks omen@descolada.dartmouth.edu) # # Note: There are multiple ways to do this, and which one is suitable for # your site's configuration depends. Consult the apache documentation if # you're unsure, as this example might not work everywhere. # #<IfModule mod_rewrite.c> # <IfModule mod_ssl.c> # <Location /squirrelmail> # RewriteEngine on # RewriteCond %{HTTPS} !^on$ [NC] # RewriteRule . https://%{HTTP_HOST}%{REQUEST_URI} [L] # </Location> # </IfModule> #</IfModule> Debemos darle la opción a apache2 que además escuche por el puerto 443 (Seguridad). Editar el archivo ports.conf. #pico /etc/apache2/ports.conf Agregar la línea Listen 443 de tal forma que el archivo quede de la siguiente forma. Listen 80 Listen 443 Procedemos a habilitar los sitios Web creados. 67
  • 68. Proyecto Plataforma de Correos. #a2ensite mmc #a2ensite mmcs #a2ensite webmail #a2ensite webmails Debemos reescribir los módulos de los sitios Web. # a2enmod rewrite Cargar el módulo ssl para que pueda funcionar la seguridad de los sitios Web. # a2enmod ssl Reinicira el servicio Web para que aplique los cambios efectuados. # /etc/init.d/apache2 restart 6.15 Configuración Pluging MMC Procedemos a configurar el plugin-base, el cual comunicará el Samba con la MMC. Con esto se obtiene el buen funcionamiento de la interfaz web de la MMC. #pico /etc/mmc/plugins/base.ini El contenido debe ser parecido al siguiente. [ldap] # LDAP we are connected to host = 127.0.0.1 # LDAP base DN baseDN = dc=grupo9, dc=com # Users location in the LDAP baseUsersDN = ou=Users, %(basedn)s # Groups location in the LDAP baseGroupsDN = ou=Groups, %(basedn)s # Computers Locations 68
  • 69. Proyecto Plataforma de Correos. baseComputersDN = ou=Computers, %(basedn)s # LDAP manager rootName = cn=admin, %(basedn)s password = sena2008 # If enabled, the MMC will create/move/delete the home of the users # Else will do nothing, but only write user informations into LDAP userHomeAction = 1 # Skeleton directory to populate a new home directory skelDir = /etc/skel # If set, all new users will belong to this group when created defaultUserGroup = Domain Users # Default home directory for users defaultHomeDir = /home # user uid number start uidStart = 10000 # group gid number start gidStart = 10000 # LDAP log file path logfile = /var/log/ldap.log # FDS log file path # logfile = /opt/fedora-ds/slapd-hostname/logs/access # you can specify here where you can authorized creation of your homedir # default is your defaultHomeDir # example: # authorizedHomeDir = /home, /home2, /mnt/depot/newhome [backup-tools] # Path of the backup tools path = /usr/lib/mmc/backup-tools # Where are put the archives destpath = /home/samba/archives Editar el plugin mail.ini para poder trabajar con los usuarios y dominios virtuales. #pico /etc/mmc/plugins/mail.ini El archivo debe ser parecido a éste. [main] disable = 0 # Enable virtual domain support vDomainSupport = 1 # If vdomain enabled, OU where the domain are stored vDomainDN = ou=mailDomains, dc=grupo9, dc=com [userDefault] # For Postfix delivery 69
  • 70. Proyecto Plataforma de Correos. mailbox = %homeDirectory%/Maildir/ # For Dovecot delivery mailbox = maildir:%homeDirectory%/Maildir/ # Default quota (200 MBytes) set for user #Ésta línea indica la cuota en Disco para el buzón de los correos. mailuserquota = 204800 Editar el plugin network.ini para administrar los servicio DNS y DHCP. #pico /etc/mmc/plugins/network.ini El archivo debe ser parecido al siguiente. [main] disable = 0 [dhcp] dn = ou=DHCP,dc=grupo9,dc=com pidfile = /var/run/dhcpd.pid init = /etc/init.d/dhcp3-server logfile = /var/log/daemon.log leases = /var/lib/dhcp3/dhcpd.leases [dns] dn = ou=DNS,dc=grupo9,dc=com pidfile = /var/run/bind/run/named.pid init = /etc/init.d/bind9 logfile = /var/log/daemon.log bindroot = /etc/bind/ bindgroup = bind # dnsreader = DNS Reader # dnsreaderpassword = DNSReaderPassword Iniciar la mmc-agent para que se apliquen los cambios efectuados y se ponga en funcionamiento. #/etc/init.d/mmc-agent start Reiniciar el Servicio DNS. # /etc/init.d/bind9 restart 70
  • 71. Proyecto Plataforma de Correos. 6.16 Interfaz MMC Para conectarse a la interfaz web de la MMC, se debe digitar en nuestro navegador http://127.0.0.1 ó http://192.168.0.19. Cuando se tenga definido el nombre de host y el nombre de dominio (FQDN) en la consola de administración MMC se pueda ingresar con http://server1.grupo9.com/mmc Como Login digitamos “root” y como password “sena2008”, dicho password es la contraseña del administrador del LDAP. Una ves haber ingresado, debe aparecer la consola de administración MMC. 71
  • 72. Proyecto Plataforma de Correos. Procedemos a configurar la respectiva zona en el DNS. Para esto debemos dar clic en “Network”, luego “Add DNS Zone”, llene los campos requeridos, luego “Create” para guardar los cambios. Se debe crear un alias al primer miembro de la zona DNS, de tal forma que el host virtual del Squirremail sea accesible. Para esto se debe dar clic en “DNS Zones”, luego en el ícono de la “Lupa”. 72
  • 73. Proyecto Plataforma de Correos. Ahora, Dar clic en el icono del quot;lápiz y papelquot;. Digitar “webmail” como alias del host “server1”, luego dar clic en “Confirm” para confirmar la configuración. Al confirmar los cambios aplicados, debe aparecer algo como esto. 73
  • 74. Proyecto Plataforma de Correos. Se debe editar el ámbito DHCP. Para esto, dar clic en quot;DCHP subnetsquot;, luego en el icono del quot;lápiz y papelquot;. 74
  • 75. Proyecto Plataforma de Correos. Llenar los campos requeridos, de tal forma que sea parecida a la ilustración de la imagen siguiente, luego dar clic en quot;Confirmquot; para guardar los cambios realizados. Al confirmar los cambios efectuados, debe aparecer álgo como esto. 75
  • 76. Proyecto Plataforma de Correos. Hasta éste punto la configuración del servicio DHCP está completa, de ésta forma y se puede iniciar dicho servicio. Para esto se debe hacer clic en quot;Network services managementquot;, luego clic en el triángulo verde para iniciar el servicio DHCP. Para poder utilizar la cuenta de correo del Administrador se debe habilitar, Para esto, dar clic en quot;Usersquot;, luego “List”. Dar clic en el icono de quot;Lápiz y Papelquot; en la cuenta correspondiente del Administrator. Digitar la dirección de correo en el campo “Mail address”. Nota: Se debe habilitar el plugin de correo e ingresar la cuota en disco deseada, si no se le asigna alguna cuota, ésta cuenta tomará la cuota por defecto (200 MB), Lugo guarde los cambios los cambios efectuados; ó se le 76
  • 77. Proyecto Plataforma de Correos. puede dar la opción de la cuota ilimitada. Quizás deba ingresar la cuota nuevamente (ya que la MMC la sobrescribe con el valor predeterminado) y guardar los cambios. Proceder a crear alguna cuenta de usuario del dominio. Dar clic en quot;Addquot;. Se deben llenar los campos requeridos, sin embargo los campos obligatorios que debemos llenar son: Login, Password, Confirm Password, Name, Mail address. Para éste caso, crearemos dos usuarios: rafa, jeyson. Se mostrará primero la plantilla del usuario rafa y luego la del usuario jeyson. 77
  • 78. Proyecto Plataforma de Correos. 78
  • 79. Proyecto Plataforma de Correos. 79
  • 80. Proyecto Plataforma de Correos. Para trabajar con dominios virtuales debemos realizar los siguientes pasos. El dominio virtual será “helplan.com”. Ahora, procedemos a darle la opción a cada usuario para que pueda trabajar con usuarios y dominios virtuales. Usuario rafa. 80
  • 81. Proyecto Plataforma de Correos. Buscamos la sección de Mail plugin (Editando el usuario rafa). En ésta prueba trabajaremos de la siguiente forma: Usuario Real: rafa Usuario Virtual: rafael Dominio Real: grupo9.com Dominio Virtual: helplan.com Al final, confirmamos los cambios. 81
  • 82. Proyecto Plataforma de Correos. Buscamos la sección de Mail plugin (Editando el usuario jeyson). En ésta prueba trabajaremos de la siguiente forma: Usuario Real: jeyson Usuario Virtual: jahenaoal Dominio Real: grupo9.com Dominio Virtual: helplan.com Al final, confirmamos los cambios. 82
  • 83. Proyecto Plataforma de Correos. 7 CONFIGURACIÓN DEL LADO DEL CLIENTE (Windows XP. Aplica para otras versiones de Windows). Para unir algún equipo cliente XP al dominio grupo9.com debemos realizar los siguientes pasos. • Se debe cerciorarse que ningún otro DHCP esté corriendo en nuestra propia red. • Inicie el Sistema de Windows e ingrese como Administrador local. • Cerciorarse que la configuración de la tarjeta de red esté activada para usar DHCP. • Clic derecho en “MI PC”, luego “Propiedades”. • Clic en la pestaña “Nombre de equipo”, luego “Cambiar”. 83
  • 84. Proyecto Plataforma de Correos. • Automáticamente ya debe estar definido el nombre de host “clon”. Seleccionar la casilla de “Dominio” y escribir el dominio al que quiere pertenece “GRUPO9”. Ojo, se digita como un nombre Netbios. Luego “Aceptar”. Aparecerá la siguiente ventana, en la cual debemos ingresar la cuenta del “Administrator” y la contraseña “sena2008”. 84
  • 85. Proyecto Plataforma de Correos. Esperar unos segundos. Debe aparecer una pequeña ventana dándo la bienvenida al dominio GRUPO9. Luego “Aceptar”. Luego, el quipo nos pedirá que se deba reiniciar el sistema. Clic en “Aceptar” para todo. Luego de que el Sitema haya reiniciardo, ingresar alguna de las cuentas creada anteriormente (rafa ó jeyson). Además debemos dar la opción al inico de seción, que nos loguearemos contra un dominio y no contra el sistema. 85
  • 86. Proyecto Plataforma de Correos. 8 Comprobación del Servidor de Correos. 8.1 Usarios y Dominios Virtuales. Para ingresar al correo electrónico desde el PDC o desde el cliente XP debemos realizar los siguientes pasos. • Digitar en nuestro navegador webmail.grupo9.com Nos daremos cuenta que de inmediato se redireccionará a https://webmail.grupo9.com (De forma segura). Pedirá que se debe obtener un certificado para poder visualizar el contenido del sitio Web. Clic en OK. 86
  • 87. Proyecto Plataforma de Correos. • En la siguiente imagen muestra si aceptamos el respectivo certificado para poder conectarce de forma segura al sitio Web. Clic en OK. • De ésta forma, iniciamos sesión sesión con la cuenta de correo rafa@grupo9.com y con contraseña sena2008 (Password del usuario). 87
  • 88. Proyecto Plataforma de Correos. Una ves de haber ingresado al correo, procedemos a enviar un correo electrónico a la cuenta jeyson@helplan.com (helplan.com es un dominio virtual) ó podemos enviar el mensaje a la cuenta jahenaoal@helplan.com En teoría, el correo ha haberle llegado al buzón del usuario jeyson. Para probar, ingresamos a la cuenta jeyson@grupo9.com con contraseña sena2008 88
  • 89. Proyecto Plataforma de Correos. Podemos darnos cuenta que el correo fue recibido. • Nota: Si el correo aún no ha llegado, debemos esperar unos minutos, ya que el proceso de enviar y recibir correos electrónicos es un suceso que consume recursos de cómputo. 8.2 Comprobación AntiSpam. Para realizar la comprobación si el antispam spamassassin está en buen funcionamiento, debemos enviar un mensaje desde la cuenta rafa@grupo9.com a la cuenta jeyson@grupo9.com, con la palabra “viagra” varias veces, y como asunto digitar “viagra”. Una ves hecho esto, revisamos la cuenta jeyson@grupo9.com y observamos el siguiente etiquetado que spamassassin le agrega al mensaje. 89
  • 90. Proyecto Plataforma de Correos. 8.3 Comprobación Antivirus. Para esto, probamos enviando un archivo adjunto .zip o .exe. El antivirus no acepta estos tipos de extenciones y los reconoce de inmediato como virus. Enviaremos un mensaje desde la cuenta rafa@grupo9.com a la cuenta jeyson@grupo9.com con el archivo adjunto prueba.exe. Una vez hecho esto, en pocos segundos, aparecerá el siguiente mensaje en la cuenta rafa@grupo9.com anunciando que el mensaje que intentó enviar está catalogado como virus. 90
  • 91. Proyecto Plataforma de Correos. 9 CONCLUSIÓN Con el desarrollo de éste proyecto nos damos cuenta de que el Software Libre intenta suplir una de las necesidades mas importantes en una infraestructura de red como lo es un servicio de directorio, en este caso es MDS el que nos brinda esa posibilidad de implementar este servicio en una de las distribuciones mas estables en el mundo del software libre como GNU/DEBIAN. Además, se logró entender y explicar el funcionamiento, y facil administración del servidor de correos mediante el MTA Postfix y sus respectivos soportes que tiene frente a otras aplicaciones como lo son Dovetoc, Amavis, Squirrelmail, SSL, entre otras. Con la elaboración de éste proyecto, logramos entender una gran cantidada de conceptos que no estaban estipulados dentro de los objetivos de éste, por lo que nos lleva a decir que cumplió satisfactoriamente los objetivos especificados dentro del proyecto. 91