Está en la página 1de 89

Manual de Servicio

Correo en Canaima
GNU/Linux

Caracas, Julio de 2009


Créditos y licencia

© 2008-2009 Centro Nacional de Tecnologías de


Información
© 2008-2009 ONUVA Integración de Sistemas
Este documento se distribuye al público como documentación y
conocimiento libre bajo los términos de la Licencia Pública General
GNU, que puede obtener en la dirección Web:
http://www.gnu.org/copyleft/gpl.html

Convenciones tipográficas

Texto enfatizado, anglicismos, texto resaltado, comandos,


salidas, paquetes o contenido de archivos.

Indica información muy importante con respecto al contenido

Indica comandos, salidas en pantalla o contenido de archivos

Indica los pasos de un procedimiento

1 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Contenido
Créditos y licencia............................................................................................................... 2
Convenciones tipográficas.................................................................................................. 2
INTRODUCCIÓN................................................................................................................... 6
UNIDAD I: PROTOCOLO SIMPLE DE TRANSFERENCIA DE CORREO - SMTP...........................7
Tema 1: Características del Protocolo SMTP....................................................................7
Características............................................................................................................ 8
Tema 2: Servidores SMTP saliente. ............................................................................... 10
Definición de intercambiadores de correo – registros MX..........................................10
Tema 3: Autenticación SMTP CON SMTP-AUTH..............................................................16
Tema 4: Implementaciones libres de servidores SMTP..................................................17
Tema 5: Servicio MTA basado en Postfix.......................................................................19
Características de Postfix.......................................................................................... 19
Instalación de Postfix en Canaima GNU/Linux...........................................................21
Descripción de los elementos de configuración y sus utilidades...............................33
Descripción de los componentes MTA y MDA............................................................34
Configuración de Postfix a través de main.cf........................................................36
Tema 6: Emulación de sesiones SMTP usando telnet....................................................38
UNIDAD II: MEDIOS DE ACCESO AL BUZÓN DE CORREOS..................................................40
Tema 1: Sistemas de correo basados en POP3..............................................................40
Características del POP3........................................................................................... 41
Ventajas del POP3..................................................................................................... 44
Emulación de sesiones POP3..................................................................................... 44
Tema 2: Sistemas de correo basados en IMAP...............................................................46
Características de IMAP. (IMAPv4).............................................................................47
Ventajas de IMAP4 en relación a POP3......................................................................48
Emulación de sesiones IMAP..................................................................................... 50
Tema 3: Implementando un servidor IMAP/POP3...........................................................56
Instalación del servidor Dovecot sobre Debian GNU/Linux........................................56
Formatos de almacenamiento de correos y buzones................................................57
Bases de datos de usuarios y contraseñas................................................................58
Integración con módulos PAM y NSS.........................................................................58
Integración con directorios LDAP...............................................................................59
Configuraciones inherentes a los mailboxes.............................................................61
UNIDAD III: SERVICIO DE CORREO BASADO EN WEB (WEBMAILS) ....................................63
Tema 1: Sistemas de correo basados en POP3..............................................................63
Tema 2: Soluciones libres para Webmail......................................................................64
Horde Webmail.......................................................................................................... 64
Instalación en Debian GNU/Linux..........................................................................64
SquirrelMail Webmail................................................................................................. 66

2 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Instalación en Debian GNU/Linux..........................................................................66
RoundCube Webmail................................................................................................. 67
Instalación en Debian GNU/Linux..........................................................................68
Tema 3: Consideraciones y prácticas recomendadas en el despliegue de webmails.....70
Ubicación de aplicaciones en el sistema de archivos................................................71
Directivas de acceso al servicio Web.....................................................................72
Protección basada en ACLs para el sistema de archivos de la aplicación..............72
ANEXOS............................................................................................................................. 76
Ejercicio Propuesto N#1................................................................................................ 76
Solución del ejercicio................................................................................................. 77
Ejercicio Propuesto N#2................................................................................................ 86
GLOSARIO DE TÉRMINOS................................................................................................... 87

3 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
FICHA DESCRIPTIVA

CURSO: Servicio de correo en Canaima GNU/Linux.


MODALIDAD: a distancia. DURACIÓN: 3 semanas.
DIRIGIDO A: público y comunidad en general, así como personal docente, técnico y
estudiantil de Colegios Universitarios y Politécnicos.
REQUISITOS PREVIOS: nociones básicas en el manejo de:
• Permisos y ACL POSIX.
• Gestión de usuarios y permisos bajo Linux.
• Manejo de servicios SysV.
• Gestión de procesos POSIX.
• Manejo de Linux bajo CLI.
• Herramientas de paginación y visualización de texto.
• Manejo del sistema de paquetes APT.
OBJETIVO DEL CURSO: Implementar servicios eficientes y seguros, de correo en
Canaima GNU/Linux.

4 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
INTRODUCCIÓN

La historia del correo electrónico en Internet, comenzó a principios de 1970,


cuando los primeros mensajes fueron enviados a través de Arpanet, (predecesor de la
Internet), desde ese entonces hasta ahora, son muchos los cambios y avances que han
ocurrido, los cuales, han buscado satisfacer las necesidades de

comunicación de los internautas.

A lo largo de este manual se abordarán los recursos y herramientas que ofrece


GNU/Linux para implementar, de forma eficiente y segura, un servicio de correo.

5 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
UNIDAD I: PROTOCOLO SIMPLE DE TRANSFERENCIA DE CORREO - SMTP

Tema 1: Características del Protocolo SMTP

Gráfico 1.1 Protocolo SMTP

La historia del correo electrónico en Internet, comenzó a principios de 1970,cuando


los primeros mensajes fueron enviados a través de ARPANET 1, el predecesor de la
Internet que hoy se conoce. Con el desarrollo de Internet, el correo electrónico se ha

1 Red de la agencia de proyectos de investigación avanzada , por sus siglas en inglés

6 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
convertido en la aplicación mas utilizada de la misma.

En sus comienzos el envío de correos electrónicos fue relativamente simple, y


generalmente consistía en mover archivos desde un servidor a otro. Con el desarrollo de
la red, el correo evoluciona a la compleja aplicación que conocemos hoy en día.

SMTP2 es el estándar de facto para el correo electrónico que actualmente es


utilizado en la Internet. Formalmente fue definido en el RFC 3 821 y luego modificado en el
RFC 1123.

El protocolo es ampliamente utilizado hoy en día y es formalmente denominado


ESMTP4, el cual es definido en el RFC 2821.

Características

El protocolo SMTP es utilizado en los servidores para enviar y recibir mensajes de


correo electrónico, a diferencia de los usuarios que utilizan SMTP únicamente para el
envío de mensajes. Para la recepción de mensajes los clientes utilizan POP 5 o IMAP6.

SMTP es relativamente simple. Es un protocolo basado en transferencias de textos


y posiblemente otros objetos codificados, en el cual uno o mas destinatarios de un
mensaje pueden ser especificados. El mensaje es transferido a un servidor remoto

2 Protocolo simple de transferencia de correos, por sus siglas en inglés


3 Solicitud de comentarios, por sus siglas en inglés
4 SMTP extendido, por sus siglas en inglés
5 Protocolo de oficina de correos, por sus siglas en inglés
6 Protocolo de acceso a mensajes de Internet, por sus siglas en inglés

7 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
utilizando un procedimiento de preguntas y respuestas entre el cliente y el servidor. Se
utilizan para esta operación clientes de correo electrónicos denominados MUA 7 y
servidores de relay MTA8 que pueden actuar como un cliente SMTP.

Un cliente de correo conoce cual es su servidor de correo saliente a través de la


configuración del mismo. Un servidor de envío de correo de clientes determina a cual
servidor SMTP debe conectarse para enviar el correo, para esto utiliza el registro de DNS 9
MX10, para cada destinatario del correo.

El cliente SMTP inicia una conexión TCP 11 al puerto 25 del servidor (puerto
estándar). El protocolo SMTP utiliza el método de envío de mensajes un servidor
dependiendo de la demanda de los clientes. Para recibir mensajes de un servidor SMTP
en los clientes otros protocolos como POP3 e IMAP son utilizados.

7 Agente del usuario de correos, por sus siglas en inglés


8 Agente de transferencia de correos, por sus siglas en inglés
9 Servicio de nombres de dominio, por sus siglas en inglés
10 Intercambiador de correos, por sus siglas en inglés
11 Protocolo de comunicación de transferencias, por sus siglas en inglés

8 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 2: Servidores SMTP saliente.

Un cliente de correo electrónico requiere un nombre o una dirección IP de un


servidor SMTP como parte de su configuración. El servidor debe enviar el mensaje al
destinatario en lugar del cliente. Esta configuración permite el diseño de diferentes
políticas y redes. Usuarios finales conectados a Internet pueden utilizar los servicios de
un proveedor de correo electrónico, que no necesariamente es el mismo del ISP 12. En un
principio la red de origen de los clientes era considerada como el filtro para aceptar o no
el correo. Actualmente se utilizan otros mecanismos como la autenticación de clientes
para verificar la identidad de los mismos.

Definición de intercambiadores de correo – registros MX

Después de establecer la conexión entre el remitente (el cliente) y el


destinatario (el servidor), se desarrolla una sesión SMTP con el siguiente diálogo.
Las instrucciones del cliente contienen el prefijo “C” y las del servidor “S”:

telnet smtp.dominio.com 25

El comando establece una conexión SMTP, desde la máquina que envía el correo al
servidor de correo que se encuentra escuchando por nuevas conexiones en el puerto 25.
Por convenciones, el servidor SMTP saluda a los clientes identificados con el nombre de
dominio calificado, en el ejemplo la computadora del cliente (cliente.dominio.com), ha
determinado que smtp.dominio.com es un servidor de correo para dominio.com. Esto se

12 Proveedor de servicios de Internet, por sus siglas en inglés

9 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
realiza leyendo los registros MX del DNS:

S: 220 smtp.dominio.com ESMTP

C: HELO cliente.dominio.com

S: 250 Hello cliente.dominio.com, I am glad to meet you

C: MAIL FROM:<jose@dominio.com>

S: 250 Ok

C: RCPT TO:<maria@dominio.com>

Página 5 de 26

S: 250 Ok

C: RCPT TO:<pedro@dominio.com>

S: 250 Ok

C: DATA

S: 354 End data with <CR><LF>.<CR><LF>

C: From: "Jose" jose@dominio.com

C: To: Maria <maria@dominio.com>

C: Cc: pedro@dominio.com

C: Date: Tue, 15 Jan 2008 16:02:43 -0500

C: Subject: Prueba

C:

C: Hola Maria.

C: Este es un mensaje de prueba.

C: Saludos,

10 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
C: Jose

C: .

S: 250 Ok: queued as 12345

C: QUIT

S: 221 Bye

{El servidor cierra la conexión}

Con el objetivo de complementar el proceso de aprendizaje en cuanto a las


pruebas por telnet del protocolo SMTP, ofrecemos una captura de pantalla de una sesión
completa de envío de correo electrónico:

11 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 3: Autenticación SMTP CON SMTP-AUTH

Gráfico 3.1 Autenticación SMTP CON SMTP-AUTH

Es una extensión del SMTP, que incluye una verificación de los clientes,
durante el proceso de envíos de correos electrónicos. Servidores que soportan
SMTP-AUTH pueden ser configurados para requerir que los clientes usen esta
extensión en el proceso de envío a los clientes.

SMTP-AUTH provee mecanismos de control de accesos que pueden usarse para


legitimar los usuarios y enviar los correos o denegar los no autorizados. SMTP-AUTH es
considerado una mejora de seguridad sobre el SMTP sin autenticar.

12 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 4: Implementaciones libres de servidores SMTP

Existen actualmente una gran cantidad de servidores SMTP. Entre los más
utilizados se pueden encontrar Sendmail, Exim y Postfix. En este documento se utilizará
Postfix como servidor SMTP.

Servidor SMTP Postfix

Gráfico 5.1 Servicio Postfix

Postfix fue escrito por Wietse Venema, y su código estuvo disponible como

13 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
software abierto en Diciembre de 1998. Fue un proyecto financiado por IBM en su
desarrollo inicial. Las características principales de Postfix son:

• Estabilidad. Postfix se comporta de manera adecuado en situaciones de sistemas


al limite, al igual que en sistemas con entornos simples. Por ejemplo, Postfix
permite recuperarse de sistemas que estén corriendo con disco o memorias sin
espacios disponibles. Al detectar estas condiciones, Postfix permite al sistema
recuperarse antes de continuar sus operaciones.

• Seguridad. Postfix asume que esta corriendo en un entorno hostil, el emplea


múltiples capas de defensa antes los ataques. Utiliza el concepto de ejecutar las
tareas con el menor privilegio posible.

• Rendimiento. Postfix fue escrito pensando en el rendimiento, y utiliza técnicas


para limitar el número de procesos y el número de sistemas de archivos que se
pueden acceder en el proceso de envío y recepción de mensajes.

• Flexibilidad. El sistema de Postfix esta compuesto por diferente programas y


subsistemas, lo cual permite gran flexibilidad, al ser todos los módulos
configurables a través de los archivos de configuración.

• Facilidad de Uso. Postfix es uno de los sistemas de correos mas sencillo de


instalar y administrar, con lo cual minimiza la curva del aprendizaje del sistema.

14 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 5: Servicio MTA basado en Postfix

Postfix13 es un agente de transporte de correos o MTA por sus siglas en inglés


desarrollado por Wietse Venema para ofrecer una alternativa a otros MTA de la época, en
particular Sendmail. Ha sido diseñado para ser muy eficiente y seguro, y goza de una alta
aceptación en entornos empresariales a nivel global.

La percepción de muchos de los administradores de sistemas que han


implementado servicios de correo basados en Postfix es que resulta muy sencillo de
configurar en una gran variedad de escenarios, y permite ágilmente cambiar la
configuración de un servicio.

En este tema describiremos las características de Postfix como agente de


transferencia de correo y su implementación en Debian GNU/Linux en un escenario de
MX/MTA compartido.

Características de Postfix

Comparativamente con otros agentes de transferencia de correo, Postfix reúne un


conjunto de características deseables en un servidor de correo para entornos
empresariales, entre las cuales podemos resaltar:

• Arquitectura robusta: Postfix ha sido diseñado teniendo en mente la seguridad

13 http://www.postfix.org/

15 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
de sus componentes, la modularización y paralelización de sus procesos y la
robustez en la integración del sistema, de tal manera que Postfix puede estar
procesando entregas de correo a disco duro mientras continúa recibiendo nuevos
mensajes y en paralelo hace filtrado de contenido para muchos clientes sin afectar
el servicio.

• Fácil de configurar: la sintaxis del archivo de configuración es sencilla y está


bien documentada, el servidor puede recargar su configuración en caliente sin
necesidad de reiniciarse, el servicio se puede prestar en niveles aceptables aunque
hayan problemas d

• Comparativamente con otros agentes de transferencia de correo, Postfix


reúne un conjunto de características deseables en un servidor de correo para
entornos empresariales, entre las cuales podemos resaltar:

• Arquitectura robusta: Postfix ha sido diseñado teniendo en mente la seguridad


de sus componentes, la modularización y paralelización de sus procesos y la
robustez en la integración del sistema, de tal manera que Postfix puede estar
procesando entregas de correo a disco duro mientras continúa recibiendo nuevos
mensajes y en paralelo hace filtrado de contenido para muchos clientes sin afectar
el servicio.

• Fácil de configurar: la sintaxis del archivo de configuración es sencilla y está


bien documentada, el servidor puede recargar su configuración en caliente sin
necesidad de reiniciarse, el servicio se puede prestar en niveles aceptables aunque
hayan problemas de configuración y se registran mensajes de error descriptivos en
caso de problemas de configuración.

• Ampliamente documentado: si bien la documentación de Postfix no está


estructurada en manuales formales, sí están disponibles decenas de archivos y
páginas de manual que contienen información detallada no sólo de la
configuración sino de varios escenarios de implementación de Postfix.

• Fácil de integrar con aplicaciones de terceros: es posible integrar muy

16 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
fácilmente Postfix con filtros de correos de terceros para aplicaciones
especializadas como control de UCE14 y malware15, archiving, estampillado de
tiempo, entre otras.

• Soporte para tablas dinámicas: Postfix utiliza tablas para consultar las listas de
usuarios, aliases16, relación entre remitentes y destinatarios, control de acceso a
buzones, transportes, entre otros aspectos. Estas tablas pueden llevarse
localmente o en bases de datos relacionales, e incluso directorios LDAP.

Así mismo, Postfix posee la mayor parte de las características de otros MTA,
incluyendo soporte para TLS 17 y SSL18, SMTP AUTH, múltiples dominios y dominios
virtuales, aliases y listas de correo, control de UCE con listas negras, y es uno de los
servidores de correo con mayor nivel de compatibilidad con las recomendaciones
internacionales.

Instalación de Postfix en Canaima GNU/Linux

En los próximos capítulos estudiaremos la implementación de Postfix en Debian


GNU/Linux en un escenario sencillo en el cual se implementará el MX de un dominio de
correo de ejemplo, correo.gob.ve.

Postfix está disponible en el repositorio estable de Debian GNU/Linux, por lo que


14 Correo comercial no solicitado, por sus siglas en inglés. Usualmente llamado spam.
15 Por malware entendemos cualquier programa informático diseñado para hacer daño en un
sistema de información e incluye, pero no está limitado a, virus, troyanos, spyware, adware,
entre otros.
16 En el contexto de un sistema de correo electrónico, un alias es un identificador de buzón que no
se corresponde necesariamente con un usuario real sino con uno o más usuarios con otro
nombre, comandos y/o comportamientos especiales del sistema de correo
17 Seguridad en la capa de transporte, por sus siglas en inglés
18 Capas de zócalos seguros, por sus siglas en inglés

17 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
debe verificar que su archivo de repositorios del sistema APT 19, /etc/apt/sources.list,
contiene una entrada similar a la siguiente:

deb http://debian.cnti.gob.ve/debian/ stable main

Los paquetes a instalar son postfix y postfix-tls. Opcionalmente usted podrá


instalar postfix-ldap para el soporte a tablas dinámicas basadas en LDAP 20 o postfix-
mysql/postfix-pgsql para el soporte a tablas dinámicas basadas en MySQL o PostgreSQL
respectivamente.

Es importante resaltar que Debian GNU/Linux trae un servidor de correo llamado


Exim que se debe eliminar, junto a sus dependencias y paquetes relacionados, antes de
intentar la instalación de Postfix:

aptitude purge exim4 exim4-base exim4-config exim4-daemon-light bsd-


mailx mailx

19 Herramienta avanzada de empaquetamiento, por sus siglas en inglés


20 Protocolo de acceso ligero a directorios, por sus siglas en inglés

18 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Una vez eliminado el servidor de correo anterior, se procede a instalar Postfix como
se describe a continuación21:

aptitude install postfix postfix-tls

21 Tenga en cuenta que otra opción posible es intentar directamente la instalación de los paquetes
postfix y postfix-tls y seguir las recomendaciones del gestor de paquetes aptitude, que
recomendará remover los paquetes de Exim. En este caso bastaría con presionar ENTER para
continuar. A efectos didácticos, sin embargo, se describe en detalle en este manual la remoción
de los paquetes.

19 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Debian GNU/Linux posee un pequeño asistente basado en debconf que nos
ayudará a configurar Postfix de forma inicial. Este asistente, que consta de varias
ventanas con preguntas y respuestas que debemos atender, generará la configuración de
Postfix a partir de la cual podremos continuar modificando y mejorando nuestro sistema
de correo:

20 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
En nuestro ejemplo, debemos indicarle al asistente que estamos instalando Postfix
en la modalidad de Sitio de Internet. De esta manera se configura Postfix para atender
conexiones desde Internet a través del puerto TCP 25.

21 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Así mismo, el asistente nos preguntará el nombre del servidor de correo. Este debe
ser un FQDN22, que usualmente contiene el nombre del dominio que se va a atender.

22 Nombre de dominio completamente calificado, por sus siglas en inglés. Se refiere a un nombre
de dominio que contenga tanto el nombre del equipo como el dominio al que pertenece, por
ejemplo: correo.dominio.com.

22 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Finalmente, el asistente nos pregunta si deseamos aceptar correos para dominios
adicionales. En este punto podemos indicar que algunas utilidades del sistema utilizan los
dominios localhost y localhost.localdomain para enviar mensajes para el administrador;
por ello recomendamos que si tiene herramientas que se comportan de esta forma le
diga al asistente que acepte correos para estos dominios.

23 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Felicidades, ¡ya ha instalado Postfix en su servidor Debian GNU/Linux! En los
siguientes capítulos estudiaremos en detalle la configuración del servidor de correo.

Sin embargo, quisiéramos hacer notar que la configuración predeterminada de


Postfix en Debian GNU/Linux es considerada segura ya que no permite que el servidor de
correo sea usado por personas u organizaciones inescrupulosas en el envío de UCE o el
impersonamiento de terceros23.

23 A esta condición se le denomina open relay. Existen varias listas negras a nivel internacional
que listan los servidores de correo que son open relays, por lo que se recomienda no cambiar la
configuración e inadvertidamente hacer que el servidor se convierta en un open relay.

24 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Descripción de los elementos de configuración y sus utilidades

A continuación describiremos los elementos de configuración de Postfix y las


utilidades que nos permitirán trabajar en la configuración del servidor:

Componente Descripción

/etc/postfix/master.cf Declaración de servicios modulares de


Postfix

/etc/postfix/main.cf Archivo de configuración principal de


Postfix

postconf Herramienta de consulta y configuración


de Postfix

Invoke-rc.d postfix reload Comando para recargar la configuración


de Postfix

Invoke-rc.d postfix restart Comando para reiniciar Postfix

El archivo /etc/postfix/main.cf, el único que trabajaremos en este manual y


donde se realiza la administración cotidiana del servidor de correo, tiene entradas de
configuración en el formato:

clave = valor

Puede utilizar líneas en blanco o el espaciado que desee para formatear y darle
legibilidad a los valores de sus claves.

Postfix tiene muchas opciones de configuración en main.cf. Si no las especifica


todas, Postfix tomará valores predeterminados para estas opciones. El comando postconf

25 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
arrojará en la salida estándar los valores de todas las opciones del sistema. Esto es útil
para consultar si alguna clave en particular no está siendo configurada como lo desea.

Descripción de los componentes MTA y MDA24

En nuestro escenario, Postfix recibirá conexiones al puerto TCP 25, procesará


correo entrante utilizando el protocolo SMTP, realizará cualquier acción o restricción que
hayamos especificado en la configuración y, una vez verificada la existencia del usuario
destino en el sistema, entregará el correo en el buzón del usuario en el disco duro.

Este componente es conocido como MDA, y usualmente se trata de una pequeña


aplicación a la cual se le indica cual es el usuario destino y cual es el formato de su
buzón, y se le pasa el correo que está entrando. En este manual utilizaremos procmail 25
como herramienta de entrega de correos, como está predeterminado en Debian.

De forma predeterminada, procmail no requiere ningun conjunto de reglas para


recibir y entregar correos a los buzones del sistema, pero en Postfix se debe incluir la
opción mailbox_command como se detalla más adelante. Esta opción está incluida de
forma predeterminada en la instalación de Postfix en Debian.

Existen en el mercado varios formatos de buzón de correos, algunos de ellos


propietarios, sin embargo los dos más difundidos son mbox y Maildir. La decisión sobre
cual de los dos es más apropiado debe ser estudiada caso por caso, dependiendo

24 Agente de entrega de correo, por sus siglas en inglés.


25 Procmail es una herramienta que permite definir reglas para procesamiento de correo
electrónico. Estas reglas seleccionan correos en base a criterios predefinidos y actúan en
consecuencia, por ejemplo, moviendo el correo electrónico a una carpeta específica.

26 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
principalmente del sistema de archivos y medio de almacenamiento a utilizar, así como el
soporte de otros componentes del servicio de correo para este formato.

Mbox es uno de los formatos tradicionales de almacenamiento de correo que


proviene de sistemas legados Unix. Cada usuario puede crear una cantidad determinada
de carpetas de correo que se representan en el sistema de archivos como un gran
archivo donde se concatenan todos los correos electrónicos de cada carpeta.

Por su parte, Maildir es un formato bastante maduro de buzón de correo en el que


cada carpeta de correo se representa como una carpeta en el sistema de archivos donde
se crean tres carpetas: new, que contiene los correos nuevos, cur, que contiene los
correos leídos, y tmp, que se utiliza temporalmente para garantizar la entrega segura de
correos. Dentro de cada carpeta se almacenan los correos como archivos individuales.

Algunos lectores podrán determinar a primera vista que Maildir resulta más
eficiente que mbox debido a que a medida que el usuario reciba más correos se irá
haciendo cada vez más grande su buzón concatenado, y se requerirá capacidad de
cómputo para buscar un correo entre todos los archivos concatenados.

Sin embargo, no es posible afirmar que alguno de los formatos de buzones sea
mejor que el otro, ya que, como se comentó anteriormente, depende del sistema de
archivos y el medio de almacenamiento. Existen además estudios que demuestran que
en varios escenarios mbox resulta más eficiente que Maildir, por lo que no se puede dar
una respuesta única a esta pregunta.

En Canaima GNU/Linux, Postfix utiliza un MDA configurado para mbox de forma

27 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
predeterminado. La bandeja de entrada de cada usuario estará ubicada en la carpeta
/var/mail, y opcionalmente el usuario podrá crear carpetas de correo adicionales bajo su
carpeta personal o donde lo indique el servidor de recuperación de correos.

Configuración de Postfix a través de main.cf

Postfix tiene más de quinientas opciones de configuración que pueden modificarse


en el archivo de configuración main.cf. Sin embargo, sólo se necesita atender unas pocas
para conseguir la funcionalidad deseada en nuestro caso de uso, ya que la mayoría de las
opciones predeterminadas no sólo funcionan sino que han sido pensadas para ofrecer la
mayor seguridad del servicio.

Opción Valor ejemplo Descripción

FQDN del servidor, con el


cual se identificará ante
myhostname servidor.correo.gob.ve otros servidores de correo.
El asistente de instalación
configura esta variable.

Dominio de correo principal


mydomain correo.gob.ve para el que este servidor
recibirá correos.

Dominios adicionales para


mydestination sub.correo.gob.ve los cuales se aceptarán
correos.

mynetworks 10.40.0.0/24 Subredes en formato CIDR

28 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
para las cuales se
aceptarán correos,
usualmente con pocas o
ninguna restricción.

Tamaño máximo en
mailbox_size_limit 1024000 kilobytes del buzón de
entrada de un usuario.

Interfaces de red en las


inet_interfaces all
cuales escuchará Postfix.

Lista de reglas para el


remitente, separadas por

permit_mynetworks, coma. Usualmente se


termina con la regla permit
smtpd_sender_restrictions reject_rbl_client list.dsbl.org,
y el resto de las reglas
permit utilizan reject o check para
eliminar conexiones no
deseadas.

Utiliza procmail para


mailbox_command procmail -a "$EXTENSION" entregar los correos
electrónicos a los buzones

29 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 6: Emulación de sesiones SMTP usando telnet26

En ocasiones puede ser de utilidad hacer uso de una herramienta como telnet para
probar temporalmente el comportamiento de un servidor de correo escribiendo
directamente mensajes del protocolo SMTP.

Esta técnica tiene la ventaja de no requerir acceso privilegiado a ningún equipo


involucrado, y que puede ejecutarse desde varios sistemas operativos, siempre que
tengan la utilidad telnet.

1. Conectarse al servidor por el puerto TCP 25:


telnet servidor.correo.gob.ve 25

2. Saludar al servidor utilizando EHLO y el nombre de la máquina


que lo contacta
EHLO servidor.canaima.gob.ve

3. Indicar el remitente del mensaje


MAIL FROM: fulano@canaima.gob.ve

4. Indicar el destinatario del mensaje


RCPT TO: mengano@correo.gob.ve

5. Indicar el inicio de la data del mensaje

26 http://www.yuki-onna.co.uk/email/smtp.html

30 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
DATA

6. Indicar la data del mensaje. Usualmente se requiere escribir un


Asunto para el correo que se envía. Adicionalmente, las cabeceras
deben separarse del cuerpo por un carácter de nueva línea. La
data se finaliza con un carácter de punto (.)
Subject: Mi primer correo por telnet
LOL WTF

7.Despedirse del sistema


exit

31 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
UNIDAD II: MEDIOS DE ACCESO AL BUZÓN DE CORREOS

Tema 1: Sistemas de correo basados en POP3

El Post Office Protocol (POP3) se utiliza en clientes locales de correo para


obtener los mensajes de correo electrónico almacenados en un servidor remoto.

La mayoría de los suscriptores de los proveedores de Internet acceden a sus


correos a través de POP3.

Las versiones del protocolo POP (informalmente conocido como POP1) y POP2 se
han hecho obsoletas debido a las últimas versiones de POP3. En general cuando uno se
refiere al término POP, nos referimos a POP3 dentro del contexto de protocolos de correo
electrónico.

32 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Características del POP3

Gráfico 1.1 Características del POP3

El diseño de POP3 es para recibir correo y no para enviar. Sus predecesores


permiten que los usuarios con conexiones intermitentes (tales como las conexiones
módem), descarguen su correo electrónico cuando se encuentren conectados de tal
manera que puedan ver y manipular sus mensajes sin necesidad de permanecer
conectados. Cabe mencionar que la mayoría de los clientes de correo incluyen la opción
de dejar los mensajes en el servidor, de manera tal que, un cliente que utilice POP3 se
conecta, obtiene todos los mensajes, los almacena en la computadora del usuario como
mensajes nuevos, los elimina del servidor y finalmente se desconecta. En contraste, el
protocolo IMAP permite los modos de operación conectado y desconectado.

33 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Los clientes de correo electrónico que utilizan IMAP dejan por lo general los
mensajes en el servidor hasta que el usuario los elimina explícitamente. Esto y otros
factores hacen que la operación de IMAP permita a múltiples clientes acceder al mismo
buzón de correo. La mayoría de los clientes de correo electrónico soportan POP3 ó IMAP;
sin embargo, solo unos cuantos proveedores de Internet ofrecen IMAP como un valor
agregado a sus servicios.

Los clientes que utilizan la opción dejar mensajes en el servidor por lo general
utilizan la orden UIDL27. La mayoría de las órdenes de POP3 identifican los mensajes
dependiendo de su número ordinal del servidor de correo. Esto genera problemas al
momento que un cliente pretende dejar los mensajes en el servidor, ya que los mensajes
con número cambian de una conexión al servidor a otra. Por ejemplo un buzón de correo
contenía 5 mensajes en la última conexión, después otro cliente elimina el mensaje
número 3, el siguiente usuario se topará con que los últimos dos mensajes están
decrementados en uno. El UIDL proporciona un mecanismo que evita los problemas de
numeración. El servidor le asigna una cadena de caracteres única y permanente al
mensaje. Cuando un cliente de correo compatible con POP3 se conecta al servidor utiliza
la orden UIDL para obtener el mapeo del identificador de mensaje. De esta manera el
cliente puede utilizar ese mapeo para determinar qué mensajes hay que descargar y
cuáles hay que guardar al momento de la descarga.

Al igual que otros viejos protocolos de Internet, POP3 utilizaba un mecanismo de


firmado sin cifrado. La transmisión de contraseñas de POP3 en texto plano aún se da. En
la actualidad POP3 cuenta con diversos métodos de autenticación que ofrecen una
diversa gama de niveles de protección contra los accesos ilegales al buzón de correo de
los usuarios. Uno de estos es APOP28, el cual utiliza funciones MD5 29 para evitar los

27 Identificación de lista única, por sus siglas en inglés


28 POP autenticado, por sus siglas en inglés
29 Resumen de mensajes MD5, por sus siglas en inglés

34 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
ataques de contraseñas. Mozilla, Eudora, Novell Evolution así como Mozilla Thunderbird
implementan funciones APOP.

Para establecer una conexión a un servidor POP, el cliente de correo abre una
conexión TCP en el puerto 110 del servidor. Cuando la conexión se ha establecido, el
servidor POP envía al cliente POP una invitación y después las dos máquinas se envían
entre sí otras órdenes y respuestas que se especifican en el protocolo. Como parte de
esta comunicación, al cliente POP se le pide que se autentifique (Estado de
autenticación), donde el nombre de usuario y la contraseña del usuario se envían al
servidor POP. Si la autenticación es correcta, el cliente POP pasa al Estado de transacción,
en este estado se pueden utilizar órdenes LIST, RETR y DELE para mostrar, descargar y
eliminar mensajes del servidor, respectivamente. Los mensajes definidos para su
eliminación no se quitan realmente del servidor hasta que el cliente POP envía la orden
QUIT para terminar la sesión. En ese momento, el servidor POP pasa al Estado de
actualización, fase en la que se eliminan los mensajes marcados y se limpian todos los
recursos restantes de la sesión.

Un usuario se puede conectar manualmente al servidor POP3 haciendo Telnet al


puerto 110. Es muy útil cuando se envía un mensaje con un archivo muy largo que no se
quiere recibir.

• USER <nombre> Identificación de usuario (Solo se realiza una vez).

• PASS <password> Envías la clave del servidor.

• STAT Da el número de mensajes no borrados en el buzón y su longitud total.

• LIST Muestra todo los mensajes no borrados con su longitud.

• RETR <número> Solicita el envío del mensaje especificando el número (no se

35 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
borra del buzón).

• TOP <número> <líneas> Muestra la cabecera y el número de líneas requerido del


mensaje especificando el número.

• DELE <número> Borra el mensaje especificando el número.

• RSET Recupera los mensajes borrados (en la conexión actual).

• QUIT Salir.

Ventajas del POP3

La ventaja del POP3 comparado a otros protocolos, es que entre servidor cliente no
se tienen que enviar tantas órdenes para la comunicación entre ellos.

El protocolo POP3 también funciona adecuadamente si no se utiliza una


conexión constante a Internet o a la red que contiene el servidor de correo.

Emulación de sesiones POP330

1.Conectarse al servidor por el puerto TCP 110:

telnet servidor.correo.gob.ve 110

30 http://pages.prodigy.net/michael_santovec/pop3telnet.htm

36 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
2.Indicar el nombre del usuario:

USER usuario

3.Indicar la contraseña del usuario:

PASS contraseña

4.Solicitar una lista de correos:

LIST

El resultado de este comando indicará el número de mensajes y


octetos que ocupan, así como el desglosado por mensaje.

5.Ver un correo específico:

RETR #

Donde # es un número de mensaje de acuerdo a LIST.

6.Cerrar la sesión:

QUIT

37 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 2: Sistemas de correo basados en IMAP

Gráfico 2.1 Funcionamiento del sistema de correo basados en IMAP

IMAP (acrónimo inglés de Internet Message Access Protocol) es un protocolo de red


de acceso a mensajes electrónicos almacenados en un servidor.

Mediante IMAP se puede tener acceso al correo electrónico desde cualquier equipo
que tenga una conexión a Internet. IMAP tiene varias ventajas sobre POP, que es el otro
protocolo empleado para obtener correo desde un servidor. Por ejemplo, es posible
especificar en IMAP carpetas del lado servidor. Por otro lado, es más complejo que POP ya
que permite visualizar los mensajes de manera remota y no descargando los mensajes
como lo hace POP.

38 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
IMAP y POP3 (Post Office Protocol versión 3) son los dos protocolos que prevalecen
en la obtención de correo electrónico. Todos los servidores y clientes de correo
electrónico están virtualmente soportados por ambos, aunque en algunos casos hay
algunas interfaces específicas del fabricante típicamente propietarias. Por ejemplo,
mientras que los protocolos propietarios utilizados entre el cliente Microsoft Outlook y su
servidor Microsoft Exchange Server o el cliente Lotus Notes de IBM y el servidor Domino,
estos productos también soportan interoperabilidad con IMAP y POP3 con otros clientes y
servidores. La versión actual de IMAP, IMAP versión 4 revisión 1 (IMAP4rev1), está
definida por el RFC 3501.

Características de IMAP. (IMAPv4)

IMAP fue diseñado como una moderna alternativa a POP por Mark Crispin en el año
1986. Fundamentalmente, los dos protocolos le permiten a los clientes de correo acceder
a los mensajes almacenados en un servidor de correo.

Ya sea empleando POP3 o IMAP4 para obtener los mensajes, los clientes utilizan
SMTP para enviar mensajes. Los clientes de correo electrónico son comúnmente
denominados clientes POP o IMAP, pero en ambos casos se utiliza SMTP. La mayoría de
los clientes de correo utilizan LDAP para sus servicios de directorio.

IMAP es utilizado frecuentemente en redes grandes; por ejemplo los sistemas de


correo de un campus. IMAP le permite a los usuarios acceder a los nuevos mensajes
instantáneamente en sus computadoras, ya que el correo está almacenado en la red. Con
POP3 los usuarios tendrían que descargar el email a sus computadoras o accederlo vía

39 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
web. Ambos métodos toman más tiempo de lo que le tomaría a IMAP, y se tiene que
descargar el email nuevo o refrescar la página para ver los nuevos mensajes.

De manera contraria a otros protocolos de Internet, IMAP4 permite mecanismos


nativos de cifrado. También está disponible la transmisión de contraseñas en texto plano.

Ventajas de IMAP4 en relación a POP3

Algunas de las características importantes que diferencian a IMAP4 y POP3 son:

• Soporte para los modos de operación conectados y desconectados: al utilizar


POP3, los clientes se conectan brevemente al servidor de correo, solamente el
tiempo que les tome descargar los nuevos mensajes. Al utilizar IMAP4, los clientes
permanecen conectados el tiempo que su interfaz permanezca activa y descargan
los mensajes bajo demanda. Esta manera de trabajar de IMAP4 puede dar tiempos
de respuesta más rápidos para usuarios que tienen una gran cantidad de mensajes
o mensajes grandes.

• Soporte para la conexión de múltiples clientes simultáneos a un mismo


destinatario: el protocolo POP3 supone que el cliente conectado es el único dueño
de una cuenta de correo. En contraste, el protocolo IMAP4 permite accesos
simultáneos a múltiples clientes y proporciona ciertos mecanismos a los clientes
para que se detecten los cambios hechos a un mailbox por otro cliente
concurrentemente conectado.

• Soporte para acceso a partes MIME de los mensajes y obtención parcial: casi todo
el correo electrónico de Internet es transmitido en formato MIME 31. El protocolo
31 Extensiones multipropósito de correo de Internet , por sus siglas en inglés, conjunto de
definiciones que describen el contenido de un archivo, por ejemplo, en el caso de un sistema de

40 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
IMAP4 le permite a los clientes obtener separadamente cualquier parte MIME
individual, así como obtener porciones de las partes individuales o los mensajes
completos.

• Soporte para que la información de estado del mensaje se mantenga en el


servidor: a través de la utilización de señales definidas en el protocolo IMAP4 de los
clientes, se puede vigilar el estado del mensaje, por ejemplo, si el mensaje ha sido
o no leído, respondido o eliminado. Estas señales se almacenan en el servidor, de
manera que varios clientes conectados al mismo correo en diferente tiempo
pueden detectar los cambios hechos por otros clientes.

• Soporte para accesos múltiples a los buzones de correo en el servidor: los clientes
del IMAP4 pueden crear, renombrar o eliminar correo (por lo general presentado
como carpetas al usuario) del servidor, y mover mensajes entre cuentas de correo.
El soporte para múltiples buzones de correo también le permite al servidor
proporcionar acceso a los directorios públicos y compartidos.

• Soporte para búsquedas de parte del servidor: IMAP4 proporciona un mecanismo


para que los clientes pidan al servidor que busque mensajes de acuerdo a una
cierta variedad de criterios. Este mecanismo evita que los clientes descarguen
todos los mensajes de su buzón de correo, agilizando, de esta manera, las
búsquedas.

• Soporte para un mecanismo de extensión definido: como reflejo de la experiencia


en versiones anteriores de los protocolos de Internet, IMAP define un mecanismo
explícito mediante el cual puede ser extendido. Se han propuesto muchas
extensiones de IMAP4 y son de uso común.

Un ejemplo de extensión es el IMAP IDLE, que sirve para que el servidor avise al cliente
cuando ha llegado un nuevo mensaje de correo y éstos se sincronicen. Sin esta
extensión, para realizar la misma tarea, el cliente debería contactar periódicamente al

correo electrónico, un adjunto de correo electrónico

41 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
servidor para ver si hay mensajes nuevos.

Emulación de sesiones IMAP32

1.Conectarse al servidor por el puerto TCP 143:


telnet servidor.correo.gob.ve 143

2.Identificarse con usuario y contraseña:


0 login usuario clave

3.Solicitar información de la bandeja de entrada:


1 select inbox

4.Solicitar las cabeceras del primer mensaje:


2 fetch 1 rfc822.header

5.Salir del sistema:


3 logout

32 http://bobpeers.com/technical/telnet_imap.php

42 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
43 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
44 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 3: Implementando un servidor IMAP/POP3

Instalación del servidor Dovecot sobre Debian GNU/Linux

Dovecot está disponible en el repositorio estable de Debian GNU/Linux, así que


basta con instalar el módulo que necesitemos para el protocolo deseado (IMAP o POP3) lo
cual se haría de la siguiente forma:

aptitude install dovecot-imapd dovecot-pop3d

45 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Formatos de almacenamiento de correos y buzones

Existen dos estándares de facto para almacenar los correos de los usuarios en sus
buzones: mbox y Maildir.

Mbox utiliza un sólo archivo por buzón. Es decir, si tenemos una Bandeja de
entrada, una carpeta de Archivo y otra de Spam, habrán tres (3) archivos mbox para
representar a estos buzones.

Cada correo electrónico se almacena en ese archivo en forma secuencial, por lo


que se suele argumentar que mbox es el formato más lento porque si quisiéramos leer el
correo número 10500 de un buzón con 31000 correos, debería desplazarse hasta la mitad
del archivo, malgastando tiempo.

El otro formato, Maildir, utiliza una carpeta por cada buzón, y dentro de cada
carpeta almacena los correos como archivos individuales, como se explicó con
anterioridad en este Manual. Al igual que mbox, se argumenta que Maildir es lento
porque depende de los tiempos del sistema de archivos para abrir y cerrar cada correo.

Sin embargo, el estudio más famoso33 realizado para comparar el rendimiento de


ambos formatos arroja como resultado que mbox es usualmente más rápido que Maildir y
que el rendimiento de Maildir se puede mejorar a nivel del sistema de archivos.

33 http://www.courier-mta.org/mbox-vs-maildir/#theend

46 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Bases de datos de usuarios y contraseñas

En un sistema de correos, deben mantenerse bases de datos de usuarios y


contraseñas para garantizar el acceso seguro a los buzones de correo por razones de
privacidad. En este capítulo mostramos los enfoques tradicionales y los basados en
servicios de red como LDAP.

Integración con módulos PAM y NSS

PAM34 es una porción clave de la arquitectura de autenticación en un sistema


GNU/Linux y permite incluir módulos para autenticar con distintos mecanismos.

En Debian GNU/Linux, su configuración se puede encontrar en la carpeta


/etc/pam.d, donde hay distintos archivos de configuración para cada servicio que usa PAM
en el sistema.

Algunos servicios comparten información de autenticación y autorización, por lo


que existen archivos comunes como common-account, common-auth, common-password
y common-session.

PAM es el responsable por autenticar y autorizar al usuario a un servicio en


particular. En Debian GNU/Linux, PAM viene preconfigurado para utilizar el archivo de
contraseñas /etc/shadow, que contiene una clave cifrada con el mecanismo crypt por
cada usuario local del sistema.
34 Módulos de autenticación apilables, por sus siglas en inglés

47 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
NSS35, por su parte, se encarga básicamente de relacionar los nombres de usuarios
(por ejemplo, pgonzalez) con un número de usuario que se utiliza internamente (129121,
por ejemplo) y para ello puede utilizar mecanismos locales y remotos. El archivo de
configuración de NSS es /etc/nsswitch.conf.

De forma predeterminada, en Debian GNU/Linux se utiliza la información provista


en el archivo /etc/passwd, que contiene información personal de los usuarios del sistema.

Integración con directorios LDAP

Para integrar el sistema con un directorio LDAP se requiere cambiar la


configuración de los archivos common-account, common-auth, common-password y
common-session de PAM y /etc/nsswitch.conf de NSS

/etc/pam.d/common-account:account sufficient pam_ldap.so

/etc/pam.d/common-account:account required pam_unix.so try_first_pass

/etc/pam.d/common-auth:auth sufficient pam_ldap.so

/etc/pam.d/common-auth:auth required pam_unix.so nullok_secure try_first_pass

/etc/pam.d/common-password:password sufficient pam_ldap.so

/etc/pam.d/common-password:password required pam_unix.so nullok obscure min=4

35 Conmutador del servicio de nombres, por sus siglas en inglés

48 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
max=8 md5 try_first_pass

/etc/pam.d/common-session:session required pam_mkhomedir.so skel=/etc/skel


umask=0077

/etc/pam.d/common-session:session sufficient pam_ldap.so

/etc/pam.d/common-session:session required pam_unix.so try_first_pass

Y en /etc/nsswitch.conf:

passwd: compat [SUCCESS=return] ldap [UNAVAIL=return]

group: compat [SUCCESS=return] ldap [UNAVAIL=return]

shadow: files

hosts: files dns

networks: files

protocols: db files

services: db files

ethers: db files

rpc: db files

netgroup: nis

49 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Configuraciones inherentes a los mailboxes

A continuación describimos la configuración de Dovecot para trabajar con


autenticación local y buzones mbox:

protocols = imap pop3 imaps pop3s

listen =

log_timestamp = "%Y-%m-%d %H:%M:%S "

ssl_listen =

mail_location = mbox:~/mail/:INBOX=/var/mail/%u

mail_privileged_group = mail

protocol imap {

protocol pop3 {

auth default {

mechanisms = plain

passdb pam {

userdb passwd {

user = root

50 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
dict {

plugin {

51 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
UNIDAD III: SERVICIO DE CORREO BASADO EN WEB (WEBMAILS)

Tema 1: Sistemas de correo basados en POP3

Webmail se refiere a un servicio de correo electrónico que se puede acceder vía un


navegador Web; es lo opuesto a las aplicaciones para leer correo electrónico en los
clientes (Thunderbird, Icedove, Evolution, entre otros), que requieren estar instaladas en
las maquinas de los clientes. La gran ventaja de utilizar los servicios de Webmail, es que
permite a los usuarios acceder a sus cuentas de correo en cualquier computador que este
conectado a Internet.

En 1997 Hotmail introduce el servicio de correo a través de un navegador, el cual


causó gran impacto y fue uno de los servicios de mayor crecimiento en la red. Luego de
éste, Yahoo y Gmail se consolidaron como alternativas de correo Web.

Existen aplicaciones de software libre que permiten la configuración de este


servicio, entre la más conocidas tenemos SquirrelMail y RoundCube.

52 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 2: Soluciones libres para Webmail

Horde Webmail

Instalación en Debian GNU/Linux

Primero, citamos los requisitos de instalación para Horde Groupware Webmail


Edition en Debian GNU/Linux:

1. Servidor de aplicaciones Apache2

aptitude install apache2

2. Módulo de procesamiento de PHP5 y CLI

aptitude install libapache2-mod-php5 php5-cli

3. Extensiones de PHP para soportar IMAP (si es necesario)

aptitude install php5-imap

4. Una base de datos (MySQL, PostgreSQL, SQLite3) para las funciones adicionales

aptitude install sqlite3

5. Extensiones de PHP para soportar esta base de datos

aptitude install php5-sqlite3

6. Extensiones de PHP para soportar mcrypt, gd y tidy

aptitude install php5-mcrypt php5-gd php5-tidy

53 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Revise la documentación del proveedor antes de instalar para verificar si existe algún
otro requerimiento.

A continuación se describe el procedimiento de instalación de Horde Groupware


Webmail Edition en Debian GNU/Linux. Aclaramos que en todo momento se puede seguir
el procedimiento oficial de instalación que está disponible en la página web del
proyecto36.

1. En la página web del proyecto 37 se descarga la última versión estable ( Current


Stable Release) de Horde Groupware Webmail Edition, comprimida en formato
tar.gz.

2. El contenido de este archivo se descomprime en la carpeta /srv/www 38 de


forma que quede /srv/www/horde.

• mkdir -p /srv/www

• tar xzf <nombre del archivo descargado> -C /srv/www

1. En la carpeta /srv/www/horde, ejecutamos el script de configuración del sistema


Horde:

• ./scripts/setup.php

1. Siga las instrucciones del script de instalación hasta finalizarlo, y una vez terminado
configure su servidor Web agregando el siguiente contenido al archivo
/etc/apache2/conf.d/horde

• Alias /horde /srv/www/horde

1. Verifique que la instalación se ha realizado correctamente dirigiendo su navegador a la

36 http://www.horde.org/webmail/docs/?f=INSTALL.html
37 http://www.horde.org/webmail/
38 Ver tema 3 para consideraciones sobre el sistema de archivos

54 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
dirección:

• http://<su servidor>/horde

SquirrelMail Webmail

SquirrelMail es un Webmail, desarrollado por Nathan and Luke Ehresman, está


39
escrito en PHP y puede ser instalado en servidores Web que puedan interpretar el
lenguaje PHP. La aplicación accede a los protocolos IMAP y SMTP para lectura y escritura
respectivamente.

Al ser una aplicación Web, SquirrelMail puede correr de manera independiente de


la plataforma en que se encuentra instalada.

Al ser desarrollada como una aplicación modular existen actualmente alrededor de


200 plugins que se pueden añadir, con lo cual se pueden incrementar las funcionalidades
de la aplicación.

Instalación en Debian GNU/Linux

Debemos ejecutar en una consola como usuario root el siguiente comando: #apt-
get install squirrelmail

Después del proceso de instalación se debe configurar el SquirrelMail, para eso se


39 Preprocesador de hipertexto PHP, por sus siglas en inglés

55 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
ejecuta desde una consola: #squirrelmail-configure

Esto debe presentar un muen, con todos las posibles configuraciones del squirrelmail, las
cuales son las siguientes :

• Opción 1 “Organization Preferences”, permite configurar los datos de la


organización, asi como logos del SquirrelMail.

• Opción 2 “Server Settings”, es la que me permitirá configurar todo lo relativo a


mi servidor IMAP y SMTP.

• Opciones 3 y 4 es recomendable no modificarlas, para probar la configuración del


servidor y luego revisar estas opciones especificas.

Luego se debe presionar “S” para salvar la configuración y “Q” para salir. Todas las
configuraciones están guardadas bajo el directorio /etc/squirrelmail, en este directorio se
encuentra un archivo llamado apache.conf, el cual incluye una configuración para el
servidor Web Apache.

• Para probar en el navegador se debe ir al siguiente URL 40


http://direccionIP/squirrelmail, donde dirección IP41 puede ser un nombre de
host.

RoundCube Webmail

Es un Webmail hecho con PHP y Mysql. La ventaja que tiene frente a otros
webmails es que usa AJAX42, lo cual lo convierte en un webmail con una interfaz sencilla
y amigable.

40 Ubicación uniforme de recurso, por sus siglas en inglés


41 Protocolo de Internet, por sus siglas en inglés
42 Javascript y XML asíncronos, por sus siglas en inglés

56 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
RoundCube, funciona como un cliente imap, lo que le permite conectarse a
cualquier servidor IMAP. Si lo quieres tener en tu servidor, necesitas instalar un servidor
imap.

Instalación en Debian GNU/Linux

1. Se debemos descargar el RoundCube, el sitio oficial es: http://www.roundcube.net.

2. El siguiente paso a seguir es modificar los permisos de los directorios temp y log para
que se puedan leer y escribir desde el servidor web. Se debe posicionar en el directorio
donde subimos el RoundCube y ejecutamos: #chown -R www:www temp logs

3. Ahora pasamos a crear la base de datos rcm en mysql. La forma más fácil es teniendo
phpmyadmin instalado, y crearlo por allí junto con el script de inicio que se encuentra en
SQL43/mysql.initial.sql

4. Nos vamos al directorio config y copiamos los archivos *.php.dist a *.php

#cp db.inc.php.dist db.inc.php


#cp main.inc.php.dist main.inc.php

5. Editamos db.inc.php y lo modificamos dándole el nombre de usuario y la contraseña


para poder ingresar a la base de datos creada en el paso 3. Específicamente tenemos
que modificar las variables:

$rcmail_config[’db_dsnw’] (acá se coloca el String de conexión a la BD),

$rcmail_config[’smtp_server’] (dejar en blanco y solo modificarlo si es que se prueba


que el php no puede enviar correos),

$rcmail_config[’default_host’] (si está en blanco al acceder por web se puede elegir a

43 Lenguaje de consultas estructuradas, por sus siglas en inglés

57 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
qué servidor imap conectarnos; si se coloca uno, ya no se puede elegir y solo nos
conectaremos a ese),
$rcmail_config[’enable_caching’] (si nuestro servidor Web está en el mismo equipo
que el servidor de correo esta opción debe estar en FALSE.

6. Estando todo listo, hay que ingresar por web y probar la aplicación.

58 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Tema 3: Consideraciones y prácticas recomendadas en el despliegue
de webmails

Un webmail es una aplicación web que le permite a los usuarios acceder a sus
buzones de correo electrónico a través de los protocolos IMAPv4, POP3 o buzones locales
mbox o maildir y provee valor agregado incorporando funcionalidades de trabajo por
colaboración, como por ejemplo calendarios, agendas compartidas, citas, tareas, libretas
de direcciones, entre otras funcionalidades.

Entre los webmail desarrollados con software libre y de estándares abiertos más
utilizados podemos resaltar los siguientes:

1.Squirrelmail

2.Horde

3.Roundcube Webmail

Es posible citar decenas de otros clientes de webmail con sólo hacer una búsqueda
en los grandes repositorios de software libre internacionales como Sourceforge 44 o
Freshmeat45. En el capítulo anterior ya hemos descrito el procedimiento de descarga,
instalación y configuración para estos tres webmails.

En este tema expondremos las consideraciones comunes que se deben manejar al


implementar este tipo de soluciones en un sistema operativo Debian GNU/Linux.

44 http://www.sourceforge.net/
45 http://www.freshmeat.net/

59 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Ubicación de aplicaciones en el sistema de archivos

El estándar FHS46 en su versión 2.3 indica que los directorios /srv y sus
subdirectorios son los apropiados para almacenar la data de los servicios provistos por un
sistema Debian GNU/Linux.

Una vez bajo /srv la nomenclatura queda a disposición del administrador, aunque
el ejemplo provisto para aplicaciones web (/srv/www) se ha convertido en un valor
predeterminado en millones de instalaciones a nivel mundial.

En caso de que el webmail utilice bases de datos relacionales como MySQL o


PostgreSQL, se deben utilizar las ubicaciones predeterminadas para estas bases de datos.
En Debian GNU/Linux, éstas son:

1. /var/lib/mysql para MySQL

2. /var/lib/postgres para PostgreSQL

En caso de que se decida utilizar el protocolo de acceso directo a buzones en disco,


y en atención a lo descrito en el resto de este Manual, el directorio a utilizar debe ser
/var/mail.

46 Estándar de la jerarquía del sistema de archivos, por sus siglas en inglés


http://www.pathname.com/fhs/pub/fhs-2.3.html

60 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Directivas de acceso al servicio Web

Dependiendo de la configuración de acceso al webmail, es posible que necesite


definir políticas de acceso basadas en direcciones IP para evitar el acceso dependiendo
del origen de la conexión47.

En Apache, basta con agregar un par de sentencias como las siguientes en la


sección <Directory> de la configuración de su aplicación de webmail:

Order allow,deny

Allow from 192.168.1.0/24

Lo cual permitiría el acceso sólo desde direcciones IP en la subred 192.168.1.0/24.

Protección basada en ACLs para el sistema de archivos de la


aplicación

Con frecuencia nos vemos en la necesidad de proteger los archivos de la aplicación


de forma que un potencial atacante vea frustrados algunos de sus vectores de ataque a
nuestro webmail.

En Debian GNU/Linux, el servidor web Apache se ejecuta con un usuario sin


privilegios llamado www-data. Con esto se logra una capa de seguridad basada en el
argumento de que en caso de un ataque a Apache, el atacante sólo podrá obtener los
47 http://httpd.apache.org/docs/2.0/howto/auth.html

61 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
privilegios del usuario www-data y cualquier privilegio heredado de los grupos a los
cuales pertenezca el usuario www-data.

Así como existe un usuario www-data también se crea un grupo www-data con la
finalidad de facilitar el acceso restringido a los archivos de la aplicación.

Cuando se utilizan módulos de preprocesamiento de scripts de algunos lenguajes


para Apache, como mod_php, basta con que el usuario www-data o el grupo al cual
pertenece este usuario puedan leer los archivos de la aplicación desde el disco.

Por esto, una opción recomendable para la permisología de archivos de aplicación


en este caso podría ser la siguiente:

•Dueño: root

•Permisos del dueño: leer y escribir (rw-, 6 en octal)

•Grupo: www-data

•Permisos del dueño: leer (r--, 4 en octal)

•Permisos para otros: leer (r--, 4 en octal) o ninguno (---, 0 en octal)

Y, así mismo, para los directorios:

•Dueño: root

•Permisos del dueño: leer, escribir y ejecutar (rwx, 7 en octal)

•Grupo: www-data

•Permisos del dueño: leer y ejecutar (r-x, 5 en octal)

•Permisos para otros: leer y ejecutar (r-x, 5 en octal) o ninguno (---, 0 en octal)

62 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Con esta permisología podemos minimizar el riesgo de que un atacante que
comprometa el servidor web destruya los archivos de la aplicación webmail. Sin embargo,
es posible que tengamos un equipo de desarrolladores o diseñadores gráficos o un grupo
de administradores que deban leer y escribir estos archivos.

El modelo de control de acceso POSIX es limitado en este sentido, pues sólo nos
permite definir un usuario dueño, un grupo y permisos para estos y para cualquier otra
persona. Repasemos cuáles serían las posibles soluciones:

1. Darle a todos los usuarios la contraseña de root: ¡esto no es apropiado en lo absoluto!

2. Unir a todos los usuarios al grupo www-data: como vimos antes, el grupo www-data
sólo tiene privilegios de lectura

3. Unir a todos los usuarios al grupo www-data y darle privilegios de escritura al grupo:
esto no es apropiado porque removemos la limitación que nos aportaba seguridad, y un
atacante que comprometa Apache automáticamente podrá destruir estos y otros archivos

La solución en este caso es el modelo de listas de control de acceso POSIX (POSIX


ACL), que funcionará siempre y cuando nuestro sistema de archivos lo permita. El
sistema de archivos ext3 usado por Debian GNU/Linux de forma predeterminada admite
este modelo.

Para activarlo, simplemente debemos montar el sistema de archivos con la opción


acl. Si ya esté montado, debemos remontarlo:

1. mount -o remount,acl <punto de montaje>

2. mount -o acl<, otras opciones> <punto de montaje>

63 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Así mismo, necesitamos el paquete acl para tener acceso a dos utilidades de
mucho valor en este proceso:

1.aptitude install acl

Con esto podemos empezar a definir listas de control de acceso mucho más
complejas que las que el modelo POSIX nos permite.

Supongamos que debemos darle permisos de escritura al grupo Desarrolladores


sobre la carpeta /srv/www/horde y todos sus archivos y subcarpetas. La especificación del
permiso, según la notación de POSIX ACL, sería:

g:Desarrolladores:rw-

Con la utilidad setfacl podemos fácilmente aplicar este permiso recursivamente:

1.setfacl -mR g:Desarrolladores:rw- /srv/www/horde

La utilidad ls y algunas otras del sistema no tienen la capacidad de mostrar las


listas POSIX ACL, así que debo usar la herramienta getfacl, instalada previamente en el
paquete acl, para obtener los permisos:

1.getfacl /srv/www/horde

Con esto podremos ver las listas, arbitrariamente largas y complejas, de


permisologías sobre archivos y carpetas.

64 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
ANEXOS

Ejercicio Propuesto N#1

Su organización es seleccionada para realizar la instalación de un servidor de


correo electrónico en el Banco Nacional de la Vivienda y Hábitat (BANAVIH), el ente desea
que la plataforma de correo electrónico opere en software libre con estándares abiertos
para reducir los costos de operación que su plataforma actual les impone y además para
hacer frente a la demanda incrementada del volúmen de mensajes que llegan a su
plataforma como resultado de la gestión al ciudadano ahorrista habitacional que requiere
su atención.

Premisas del ejercicio:

1. El Registro MX del servidor se encuentra definido como correo.banavih.gob.ve,


adicionalmente, posee un registro inverso (PTR) que coincide la dirección IP que posee el
servidor que fungirá como intercambiador de correo principal. Esta dirección es:
200.65.44.12.

2. Desean que el servicio solo permita el envío de correo a los usuarios válidos de su
plataforma, información que puede ubicarse a través del directorio LDAP interno que
posee BANAVIH, en un servidor de su plataforma cuyo nombre calificado en el servidor de
nombres es: banavihldap.banavih.gob.ve y cuya dirección IP es 172.16.1.15.

3. La base de búsqueda del servidor LDAP es “dc=banavih,dc=gob,dc=ve”.

4. El dominio destino por defecto para el servicio de correo es: “banavih.gob.ve”, sin
embargo, poseen un requerimiento especial para disponibilizar en la misma plataforma
de correo el dominio adicional: “serviciosalciudadano.gob.ve”, este último dominio posee
los registros DNS configurados adecuadamente a: correo.banavih.gob.ve. Como servidor

65 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
de correo principal para este dominio.

5. El servidor en cuestión se encuentra configurado con el módulo LDAP de las librerías


PAM, permitiendo la autenticación de usuarios válidos vía LDAP sin necesidad de exponer
al servicio de correo a la configuración de un transporte que tenga acceso de lectura
sobre la contraseña del usuario en el directorio.

6. Se requiere que estén disponibles las versiones seguras del protocolo IMAPv4 y POP3,
respectivamente, para la conexión de los usuarios tanto en la red interna como desde
internet.

7. La red interna de BANAVIH comprende las redes locales con direccionamiento:


172.16.1.0/24 y 172.16.3.0/24, respectivamente.

8. BANAVIH desea que ningún buzón exceda un tamaño de 600mb

9. La solución no contempla acceso vía web del buzón del usuario. Solo se permitirá la
conexión desde clientes de escritorio.

Solución del ejercicio

# Se instala el servicio de Correo electrónico, servidor


SMTP (Postfix, adicionando el soporte LDAP) y Servidor de
Buzones (Dovecot) con soporte IMAP y POP3

aptitude install postfix postfix-ldap dovecot-imapd


dovecot-pop3d

# Nos aseguraremos de configurar el postfix como “sitio de


internet”, si el proceso de instalación acaso nos

66 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
preguntase el modo de operación.

# A continuación, Editaremos el archivo


/etc/postfix/main.cf para definir la configuración básica
del servicio. Agregaremos o modificaremos las siguientes
órdenes según sea el caso: (Al instalar, el servidor
postfix genera una configuración básica, las órdenes
presentes en ella que no se encuentren a continuación
deberan mantenerse igual)

# Reglas de certificado de seguridad y llave de


encriptación (Postfix usará las instaladas por Dovecot si
se instalan en conjunto, como en este caso)

smtpd_tls_cert_file=/etc/ssl/certs/dovecot.pem
smtpd_tls_key_file=/etc/ssl/private/dovecot.pem
smtpd_use_tls=yes

# Parámetros de caché de sesión autenticada

smtpd_tls_session_cache_database = btree:$
{queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:$
{queue_directory}/smtp_scache
# Nombre del sistema de correo

myhostname = correo.banavih.gob.ve

67 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
# Nombre de máquina que se mostrará a los clientes SMTP en
tanto se conecten al servicio

helo_name = $myhostname

# Base de datos con destinos locales (no manejados por


LDAP) existentes. (si la modifica, recuerde ejecutar el
comando “newaliases”)

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

# Parámetro que indica de que nombre de host proviene el


correo remitido a los sistemas externos

myorigin = /etc/mailname

# Dominio principal que atiende este sistema


mydomain = banavih.gob.ve

# Dominios aceptados para recepción por este sistema

mydestination = correo.banavih.gob.ve, banavih.gob.ve,


serviciosalciudadano.gob.ve

# Redes desde las que pueden envíarse mensajes (cualquier

68 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
cliente que se conecte desde una red no listada será
rechazado)

mynetworks = 127.0.0.0/8, 172.16.1.0/24, 172.16.3.0/24,


200.65.44.12

# Comando de entrega al buzón del usuario

mailbox_command = procmail -a "$EXTENSION"

# Tamaño máximo del buzón del usuario (600MB, en este


ejemplo)

mailbox_size_limit = 629145600

# Cuando se necesita enviar un correo específicamente a un


recipiente, que carácter especial utilizar para separarlo.

recipient_delimiter = +

# Interfaces de red en las que el servicio Postfix


esperará conexiones (todas, en este ejemplo)

inet_interfaces = all

69 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
# Dónde buscar a los destinos locales

local_recipient_maps = hash:/etc/aliases,
ldap:/etc/postfix/ldap-usuarios.cf

# Parámetros para habilitar la autenticación SMTP (no se


permiten usuarios anónimos para el envío, en este ejemplo)

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes

# Restricciones para los clientes externos que intentan


enviar correo a un destinatario en el sistema

smtpd_helo_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_pipelining,
reject_non_fqdn_hostname,
reject_invalid_hostname,
permit

# Estos parámetros especifican que restricciones se


aplicarán a remitentes válidos

70 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
smtpd_sender_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_pipelining,
reject_non_fqdn_sender,
reject_unknown_sender_domain,
permit

# Estos parámetros especifican las restricciones que se


aplicarán a destinatarios válidos.

smtpd_recipient_restrictions =
permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_pipelining,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unauth_destination,
permit

# Demorar el rechazo al cliente hasta comprobar todas las


restricciones

smtpd_delay_reject = yes

# Solo permitir clientes (remitentes/destinatarios) que


comiencen la sesión SMTP con el comando SMTP “HELO”

71 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
smtpd_helo_required = yes

# Posteriormente, debemos asegurarnos que nuestro servidor


de correo se comunique correctamente con el servicio de
directorio LDAP que está configurado, hemos definido en la
configuración con anterioridad el parámetro :
“local_recipient_maps = ldap:/etc/postfix/ldap-usuarios.cf
” (Este parámetro indica donde el postfix debe ubicar a los
usuarios válidos del servicio de correo electrónico para
entrega y recepción externa). El archivo que especificamos
en este parámetro debemos editarlo para hacer la búsqueda
del atributo mail del usuario a través del directorio:

editor /etc/postfix/ldap-usuarios.cf

# Definimos los parámetros de conexión y búsqueda por LDAP.


Como puede observarse, buscamos tanto el atributo “mail”
con solo el nombre del usuario como el atributo mail con el
nombre de usuario y dominio calificado, de manera de poder
hacer frente sin mensajes de error a aquellas solicitudes
de validación que contengan la información de dominio ya
anexada.

server_host = 127.0.0.1
search_base = dc=banavih,dc=gob,dc=ve
query_filter = (|(mail=%s)(mail=%u*))

72 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
result_attribute = mail
bind = no
version = 3

# Nos dirigimos a continuación, a la configuración del


servicio de buzones, es decir, al servicio Dovecot. La
configuración por defecto es usualmente más que suficiente
ya que escuchará por los servicios instalados (en este caso
IMAP y POP3), solo cambiaremos los siguientes parámetros o,
le quitaremos el comentario (símbolo: “#”) de estar
precedidos con el mismo:

# Define las interfaces de red donde Dovecot esperará


conexiones (todas, en este ejemplo)

listen =

# Define los protocolos de almacenamiento de correo donde


Dovecot esperará conexiones (IMAP y POP3 seguro e inseguro,
en este ejemplo)

protocols = imap pop3 imaps pop3s

# Mecanismos de autenticación de clientes

auth default {

73 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
# Aquí se le indica a Dovecot que acepte contraseñas en
plano (por defecto Dovecot solo las aceptará de los
clientes que vengan desde el mismo sistema, para las
conexiones externas, al estar cifradas a nivel de
transporte, estas no se comprometen)

mechanisms = plain

# Utilizar las librerías PAM para la búsqueda y validación


de usuarios

passdb pam {
}
userdb passwd {
}
}

# Finalizamos nuestra configuración reiniciando ambos


servicios.

invoke-rc.d postfix restart


invoke-rc.d dovecot restart

# Por último, para realizar pruebas de envío y recepción


puede configurar un cliente de escritorio (Mozilla
Thunderbird, IceDove, Kmail) para que se conecte al

74 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
servidor de correo, utilizando bien sea IMAPv4 seguro
(puerto TCP: 993) o POP3 seguro (puerto TCP:995). Recuerde
que el SMTP utiliza TLS y autenticación, deberá
configurarlo para que envíe el nombre de usuario y solicite
la contraseña. Refiérase al manual de su cliente de
escritorio para la configuración adecuada del mismo.

Ejercicio Propuesto N#2

Agregue un sistema Webmail basado en Roundcube a la instalación realizada para


el BANAVIH en el ejercicio anterior.

75 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
GLOSARIO DE TÉRMINOS

• ACLs (Access Control List/Lista de Control de Acceso): es una tabla que le


dice a un sistema los derechos de acceso que cada usuario posee para un objeto
determinado, como directorios, ficheros, puertos, etc. Técnicas para limitar el
acceso a los recursos según la información de autenticidad y las normas de acceso.

• Apache: es un software libre servidor HTTP de código abierto para plataformas


Unix (BSD, GNU/Linux, etc.), Windows, Macintosh y otras. Presenta, entre otras
características, mensajes de error altamente configurables, bases de datos de
autenticación y negociado de contenido. Ha sido desde Abril de 1996 el servidor
HTTP más usado.

• APT (Advanced Packaging Tool): es un sistema de gestión de paquetes creado


por el proyecto Debian. APT simplifica en gran medida la instalación y eliminación
de programas en los sistemas GNU/Linux; no existe un programa apt en sí mismo,
sino que APT es una biblioteca de funciones C++ que se emplea por varios
programas de línea de comandos para distribuir paquetes. En especial, apt-get y
apt-cache.

• ARPANET: (Advanced Research Projects Agency Network/Red de la


Agencia de Proyectos de Investigación Avanzada): es una red militar
Norteamericana a través de líneas telefónicas, de la que posteriormente derivó
Internet.

• BIND (Berkeley Internet Name Domain, anteriormente: Berkeley Internet


Name Daemon): es la implementación del estándar DNS de uso más habitual en
la Internet, especialmente en los sistemas tipo Unix, en los cuales es un estándar
de facto.

• BIND9: es una nueva versión de BIND. Fue escrita desde cero en parte para
superar las dificultades arquitectónicas presentes anteriormente para auditar el

76 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
código en las primeras versiones de BIND, y también para incorporar DNSSEC.
BIND 9 incluye entre otras características importantes: TSIG, notificación DNS,
nsupdate, IPv6, rndc flush, vistas, procesamiento en paralelo, y una arquitectura
mejorada en cuanto a portabilidad. Es comúnmente usado en sistemas GNU/Linux.

• C++: es un lenguaje de programación diseñado a mediados de los años 80 por


Bjarne Stroustrup. La intención de su creación fue el extender al exitoso lenguaje
de programación C con mecanismos que permitan la manipulación de objetos. En
ese sentido, desde el punto de vista de los lenguajes orientados a objetos, el C++
es un lenguaje híbrido.

• Cache: es todo duplicado del una información original que se almacena en un


lugar de acceso más rápido que el original.

• Canaima: es una distribución GNU/Linux Venezolana basada en Debian que surge


como una solución para cubrir las necesidades ofimáticas de los usuarios finales de
la Administración Pública Nacional (APN) y para dar cumplimiento al decreto
presidencial Nro. 3.390 sobre el uso de Tecnologías Libres.

• Datagramas: es un fragmento de paquete que es enviado con la suficiente


información como para que la red pueda simplemente encaminar el fragmento
hacia el equipo terminal de datos receptor, de manera independiente a los
fragmentos restantes.

• Debian Project: es una comunidad conformada por desarrolladores y usuarios,


que mantiene un sistema operativo GNU basado en software libre precompilado y
empaquetado, en un formato sencillo en múltiples arquitecturas de computador y
en varios núcleos.

• DHCP (Dynamic Host Configuration Protocol / Protocolo de Configuración


Dinámica de Servidores): permite asignar IPs de forma dinámica, e indica
servidores de nombre de dominios y gateways desde un servidor a todos los
clientes que se la pidan.

77 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
• Direcciones IP: es un número que identifica de manera lógica y jerárquica a una
interfaz de un dispositivo (habitualmente una computadora) dentro de una red que
utilice el protocolo IP (Internet Protocol), que corresponde al nivel de red o nivel 3
del modelo de referencia OSI.

• Distribución: es una recopilación de programas y ficheros (paquetes),


organizados y preparados para su instalación en las diferentes arquitecturas de
hardware disponibles en el mercado, las cuales se pueden obtener a través de
Internet, o adquiriendo los CD de las mismas.

• DNS (Domain Name System): es un sistema de nombres que permite traducir


de nombres de dominio a direcciones IP y viceversa.

• Dominio: nombre básico de un conjunto de dispositivos y computadores dentro de


una red, los equipos o dispositivos que lo componen cada uno posee un nombre
perteneciente a ese dominio, que lo hace más fácil de recordar en vez de utilizar
direcciones numéricas para acceder a los mismos.

• Dovecot: es un servidor de IMAP y POP3 de código abierto para sistemas


GNU/Linux / UNIX-like, escrito fundamentalmente pensando en seguridad. Fue
desarrollado por Timo Sirainen, y apunta principalmente a ser un servidor de
correo de código abierto ligero, rápido, fácil de instalar y por sobre todo seguro.

• ESP (Encapsulating Security Payload): este protocolo proporciona autenticidad


de origen, integridad y protección de confidencialidad de un paquete. ESP también
soporta configuraciones de sólo cifrado y sólo autenticación.

• ESMTP (Enhanced Simple Mail Transfer Protocol): es una definición de


extensiones de protocolo para el estándar SMTP, cuyo formato de extensión fue
definido en el RFC 1869 en 1995. Este RFC estableció una estructura para todas las
extensiones existentes y futuras con el fin de producir una manera consistente y
manejable por la cual los clientes y servidores SMTP puedan ser identificados y los
servidores SMTP puedan señalar las extensiones soportadas a los clientes
conectados.

78 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
• Eudora: es un cliente de correo electrónico elaborado para las plataformas MS
Windows y Apple Mac OS X; así como para computadoras de mano basadas en
Palm OS, con posibilidad en este último caso, de sincronizar los mensajes con una
computadora de sobremesa. Pese a disponer de una cuota de mercado limitada,
sus usuarios acostumbran a ser fieles y confiar en la robustez y sencillez de este
software.

• Frame Relay: consiste en una forma simplificada de tecnología de conmutación


de paquetes que transmite una variedad de tamaños de tramas o marcos
(“frames”) para datos, perfecto para la transmisión de grandes cantidades de
datos. Esta técnica se utiliza para un servicio de transmisión de voz y datos a alta
velocidad que permite la interconexión de redes de área local separadas
geográficamente a un coste menor.

• FQDN (Fully Qualified Domain Name): es un nombre que incluye el nombre de


la computadora y el nombre del dominio asociado a ese equipo. La longitud
máxima permitida para un FQDN es 255 caracteres (bytes), con una restricción
adicional a 63 bytes por etiqueta dentro de un nombre de dominio. Las etiquetas
FQDN se restringen a un juego de caracteres limitado: letras A-Z de ASCII, los
dígitos, y el carácter «-», y no distinguen mayúsculas de minúsculas.

• GPL (General Public License / Licencia Pública General): la Licencia Pública


General de GNU o más conocida por su nombre en inglés GNU General Public
License o simplemente su acrónimo del inglés GNU GPL, es una licencia creada por
la Free Software Foundation a mediados de los 80, y está orientada principalmente
a proteger la libre distribución, modificación y uso de software.

• Header (Cabecera): es la primera parte de un paquete de datos que contiene


información sobre las características de este.

• HDLS (High bit rate Digital Suscriber Line / Línea Digital de Abonado de
alta velocidad): es un sistema de transmisión de datos de alta velocidad que
utiliza dos pares trenzados; obteniendo velocidades superiores al Megabit en

79 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
ambos sentidos.

• Horde Webmail: gestor de corre que permite la redacción de mensajes en html o


texto plano con adjuntos, búsqueda de mensajes, etiquetado de mensajes, reglas
de filtrado, cifrado PGP, organizar mensajes en carpetas o crear carpetas virtuales
para la organización dinámica del correo.

• Host: un host o anfitrión es un ordenador que funciona como el punto de inicio y


final de las transferencias de datos.; más comúnmente descrito como el lugar
donde reside un sitio web. Un host de Internet tiene una dirección de Internet única
(direción IP) y un nombre de dominio único o nombre de host.

• HTML (HyperText Markup Language / Lenguaje de Marcas de Hipertexto):


es el lenguaje de marcado predominante para la construcción de páginas web. Es
usado para describir la estructura y el contenido en forma de texto, así como para
complementar el texto con objetos tales como imágenes.

• Icedove: es un cliente de correo electrónico, grupos de noticias y RSS de código


abierto exclusivamente destinado a distribuciones Linux basadas en Debian
GNU/Linux.

• IDLE: hace referencia a la inactividad de un usuario en IRC.

• IETF (Internet Engineering Task Force/Grupo de Trabajo en Ingeniería de


Internet): es una organización internacional abierta de normalización, que tiene
como objetivos el contribuir a la ingeniería de Internet, actuando en diversas
áreas, tales como transporte, encaminamiento, seguridad. Fue creada en EE.UU en
1986.

• IKE (Internet key exchange): es un protocolo usado para establecer una


asociación de seguridad (SA) en el protocolo Ipsec. Supone una alternativa al
intercambio manual de claves, y su objetivo es la negociación de una Asociación
de Seguridad para IPSEC, permitiendo además especificar el tiempo de vida de la
sesión IPSEC, autenticación dinámica de otras máquinas, entre otras.

80 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
• IMAP (Internet Message Access Protocol): es un protocolo de red de acceso a
mensajes electrónicos almacenados en un servidor. Mediante IMAP se puede tener
acceso al correo electrónico desde cualquier equipo que tenga una conexión a
Internet.

• IP (Internet Protocol): el protocolo de comunicaciones IP permite que redes


grandes y geográficamente diversas de computadoras, se comuniquen con otras
rápida y económicamente a partir de una variedad de eslabones físicos.

• IPsec (Internet Protocol security): es un conjunto de protocolos cuya función


es asegurar las comunicaciones sobre el Protocolo de Internet (IP), autenticado y/o
cifrando cada paquete IP en un flujo de datos. IPsec incluye también protocolos
para el establecimiento de claves de cifrado.

• IPv4: es la versión 4 del Protocolo IP (Internet Protocol). Esta fue la primera


versión del protocolo que se implementó extensamente, y forma la base de

Internet. IPv4 usa direcciones de 32 bits, limitándola a 2 32 = 4.294.967.296


direcciones únicas, muchas de las cuales están dedicadas a redes locales (LANs).

• IPv6: es una nueva versión de IP (Internet Protocol) y está destinado a sustituir a


IPv4, cuyo límite en el número de direcciones de red admisibles está empezando a
restringir el crecimiento de Internet y su uso; pero el nuevo estándar mejorará el
servicio globalmente; por ejemplo, proporcionará a futuras celdas telefónicas y
dispositivos móviles con sus direcciones propias y permanentes.

• IPX (Internetwork Packet Exchange / Intercambio de paquetes interred):


es un protocolo de comunicaciones NetWare que se utiliza para encaminar
mensajes de un nodo a otro. Los paquetes IPX incluyen direcciones de redes y
pueden enviarse de una red a otra.

• IRC (Internet Relay Chat): es un protocolo de comunicación en tiempo real


basado en texto, que permite debates en grupo o entre dos personas. Se diferencia
de la mensajería instantánea, porque los usuarios no deben acceder a establecer la

81 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
comunicación de antemano; de tal forma, que todos los usuarios que se
encuentran en un canal pueden comunicarse entre sí, aunque no hayan tenido
ningún contacto anterior.

• ISC BIND: el nombre completo original del servidor BIND9 desarrollado por la
Internet Systems Consortium.

• ISP (Internet Service Provider/Proveedor de Servicios de Internet): es una


empresa dedicada a conectar a Internet a los usuarios, o las distintas redes que
tengan, y a dar el mantenimiento necesario para que el acceso funcione
correctamente. También ofrece servicios relacionados, como alojamiento web,
registro de dominios, entre otros.

• LAN (Local Área Network): es la interconexión de varias computadoras y


periféricos. Su extensión está limitada físicamente a un edificio o a un entorno de
hasta 200 metros; su aplicación más extendida es la interconexión de
computadoras personales y estaciones de trabajo en oficinas, fábricas, etc., para
compartir recursos e intercambiar datos y aplicaciones.

• LDAP (Lightweight Directory Access Protocol/Protocolo Ligero de Acceso a


Directorios): es un protocolo a nivel de aplicación que permite el acceso a un
servicio de directorio ordenado y distribuido, para buscar diversa información en
un entorno de red. LDAP también es considerado una base de datos (aunque su
sistema de almacenamiento puede ser diferente) a la que pueden realizarse
consultas.

• Mozilla Application Suite: es un navegador web y una plataforma de desarrollo


libre y de código abierto para la WWW.

• NAT (Network Address Translation/Traducción de Dirección de Red): es un


mecanismo utilizado por routers IP para intercambiar paquetes entre dos redes,
que se asignan mutuamente direcciones incompatibles. Consiste en convertir en
tiempo real las direcciones utilizadas en los paquetes transportados. También es
necesario editar los paquetes, para permitir la operación de protocolos que

82 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
incluyen información de direcciones dentro de la conversación del protocolo.

• NETBIOS (Network Basic Input/Output System): es una especificación de


interfaz para acceso a servicios de red, es decir, una capa de software desarrollado
para enlazar un sistema operativo de red con hardware específico.

• Nombres de dominio: son direcciones nemotécnicas o alias que identifican un


sitio de Internet.

• NSS (Network Switching Subsystem/Subsistema de Conmutación de Red): es el


componente que realiza las funciones de portar y administrar las comunicaciones
entre teléfonos móviles y la Red de Conmutada de Telefonía Pública (PSTN) para
una red GSM.

• OSI (Open Source Initiative): es una organización dedicada a la promoción del


código abierto. Fue fundada en febrero de 1998 por Bruce Perens y Eric S.
Raymond.

• PAM (Pluggable Authentication Modules/Módulos enchufables de autenticación): es


un sistema de autenticación que controla el acceso a RHL.

• PHP: es un lenguaje de programación interpretado,y diseñado originalmente para


la creación de páginas web dinámicas. Es usado principalmente en interpretación
del lado del servidor (server-side scripting) pero actualmente puede ser utilizado
desde una interfaz de línea de comandos o en la creación de otros tipos de
programas incluyendo aplicaciones con interfaz gráfica usando las bibliotecas Qt o
GTK+.

• Protocolos Criptográficos: también llamado protocolo criptográfico o protocolo


de cifrado, es un protocolo abstracto o concreto que realiza funciones relacionadas
con la seguridad, aplicando métodos criptográficos.

• POP3 (Post-Office Protocol/Protocolo de Oficina de Correos): es un


protocolo que permite recuperar el correo desde una máquina distinta a la que lo
recibe y que es el más utilizado en las conexiones habituales por módem o RDSI a

83 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
un proveedor (ya sea mediante PPP o SLIP).

• PPP (Point-to-point Protocol/Protocolo Punto a Punto): permite establecer


una comunicación a nivel de enlace entre dos computadoras. Generalmente, se
utiliza para establecer la conexión a Internet de un particular con su proveedor de
acceso a través de un módem telefónico. Ocasionalmente también es utilizado
sobre conexiones de banda ancha

• PPTP (Point to Point Tunneling Protocol): es un protocolo de red creado por


Microsoft que permite la realización de transferencias seguras desde clientes
remotos a servidores emplazados en redes privadas, empleando para ello tanto
líneas telefónicas conmutadas como Internet.

• RADIUS (Remote Authentication Dial-In User Service): es un protocolo de


autenticación y autorización para aplicaciones de acceso a la red o movilidad IP.

• RFC (Request For Comments/Petición de Comentarios): son una serie de notas


sobre Internet que comenzaron a publicarse en 1969. Cada una de ellas
individualmente es un documento cuyo contenido es una propuesta oficial para un
nuevo protocolo de la red Internet (originalmente de ARPANET), que se explica con
todo detalle para que en caso de ser aceptado pueda ser implementado sin
ambigüedades.

• RSA: el sistema criptográfico con clave pública RSA es un algoritmo asimétrico


cifrador de bloques, que utiliza una clave pública, la cual se distribuye (en forma
autenticada preferentemente), y otra privada, la cual es guardada en secreto por
su propietario.

• SGML (Standard Generalized Markup Language / Estándar de Lenguaje de


Marcado Generalizado): consiste en un sistema para la organización y
etiquetado de documentos. El lenguaje SGML sirve para especificar las reglas de
etiquetado de documentos y no impone en sí ningún conjunto de etiquetas en
especial.

84 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
• Sistema Operativo: es un software que administra y controla las actividades, y
recursos de la computadora. Comprende todos aquellos paquetes que le permiten
al computador funcionar como un conjunto de herramientas e intérpretes de
comandos.

• SMTP (Simple Mail Transfer Protocol/Protocolo Simple de Transferencia de


Correo): es un protocolo de la capa de aplicación. Protocolo de red basado en
texto utilizado para el intercambio de mensajes de correo electrónico entre
computadoras u otros dispositivos (PDA's, teléfonos móviles, entre otros.). Está
definido en el RFC 2821 y es un estándar oficial de Internet.

• SSL (Secure Sockets Layer/Protocolo de Capa de Conexión Segura):


proporciona autenticación y privacidad de la información entre extremos sobre
Internet mediante el uso de criptográficos.

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


Transport Layer Security/Seguridad de la Capa de Transporte): son
protocolos criptográficos que proporcionan comunicaciones seguras por una red,
comúnmente Internet.

• Subdominio: es un subgrupo o subclasificación del nombre de dominio, el cual es


definido con fines administrativos u organizativos, que podría considerarse como
un dominio de segundo nivel. Normalmente es una serie de caracteres o palabra
que se escriben antes del dominio. En Internet se podría decir que el subdominio
se utiliza para referirse a una dirección web, que trabaja como un anexo (o sitio
relacionado) de un dominio principal.

• SOA (Service Oriented Architecture / Arquitectura Orientada a Servicios):


es un software que administra y controla las actividades, y recursos de la
computadora. Comprende todos aquellos paquetes que le permiten al computador
funcionar como un conjunto de herramientas e intérpretes de comandos.

• SOAP (Simple Object Access Protocol): es un protocolo estándar que define


cómo dos objetos en diferentes procesos pueden comunicarse por medio de

85 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
intercambio de datos XML.

• SOAPHeader (Cabeceras SOAP): es una clase especial de bajo nivel para pasar
o devolver cabeceras SOAP. Es simplemente un contenedor de datos y no tiene
métodos especiales aparte de su constructor.

• TACACS (Terminal Access Controller Access Control System/Sistema de


Control de Acceso Mediante Control del Acceso desde Terminales): es un
protocolo de autenticación remota que se usa para comunicarse con un servidor de
autenticación comúnmente usado en redes Unix. TACACS permite a un servidor de
acceso remoto comunicarse con un servidor de autenticación para determinar si el
usuario tiene acceso a la red.

• TCP/IP (Transfer Control Protocol / Internet Protocol): conjunto de protocolos


definidos por catedráticos en el proyecto ARPANet del Departamento de Defensa
de Estados Unidos, para la red universitaria Internet en los años setenta. Esta
familia de protocolos es un estándar para el intercambio de comunicaciones entre
computadores.

• Telnet (TELecommunication NETwork): es el nombre de un protocolo de red


que sirve para acceder mediante una red a otra máquina, para manejarla
remotamente como si estuviéramos sentados delante de ella.

• TLD (Top Level Domain): son los nombres en lo alto de la jerarquía de los DNS.
Aparecen en los nombres de dominio, como "net" en "www.example.net". Los
administradores del "dominio de la raíz" o "zona de la raíz" ("root domain" or "root
zone") controlan lo que los TLDs sean reconocidos por los DNS. Los TLDs
comúnmente usados incluyen a .com, .net, .edu, .jp, .de, etc.

• TSIG (Transaction SIGnature): usa llaves o claves secretas compartidas y


germinador de una sola vía para proveer un significado seguro criptograficado,
para identificar cada punto final de una conexión así como el estar permitido a
hacer o responder a la actualización DNS.

86 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
• TTL (Time To Live): es el tiempo que un paquete permanece activo en una red.
Hay un numero TTL en cada header de paquete IP, y a medida que un paquete
pasa por cada router o enrutador, lo reduce por 1 este número. Si el paquete llega
a 0, los routers o enrutadores no seguirán reenviando el paquete.

• Tunneling: técnica que consiste en encapsular un protocolo de red sobre otro


(protocolo de red encapsulador) creando un túnel dentro de una red de
computadoras.

• UDP (User Datagram Protocol): es un protocolo del nivel de transporte basado


en el intercambio de datagramas. Permite el envío de datagramas a través de la
red, sin que se haya establecido previamente una conexión; ya que el propio
datagrama incorpora suficiente información de direccionamiento en su cabecera.

• UNIX: es un sistema operativo portable, multitarea y multiusuario; desarrollado,


en principio, en 1969 por un grupo de empleados de los laboratorios Bell de AT&T.

• WAM (Wide Area Networks/Red de Área Amplia): es un tipo de red de


computadoras capaz de cubrir distancias desde unos 100km hasta unos 1000 km,
dando el servicio a un país o un continente.

• XML (Extensible Markup Language / Lenguaje de Marcas Ampliable): es un


metalenguaje extensible de etiquetas desarrollado por el Word Wide Web
Consortium (W3C). Consiste en una simplificación y adaptación del SGML y permite
definir la gramática de lenguajes específicos (de la misma manera que HTML es a
su vez un lenguaje definido por SGML). Por lo tanto, XML no es realmente un
lenguaje en particular, sino una manera de definir lenguajes para diferentes
necesidades.

87 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve
Referencias

• Brooks, Frederick P. (consultado en mayo 2009), “The Postfix home page”.


Disponible en: http://www.postfix.org/

• Davidson, Tom (consultado en mayo 2009), “Telnet - SMTP Commands (sending


mail using telnet)”. Disponible en: http://www.yuki-onna.co.uk/email/smtp.html

• Double Precision, Inc. (consultado en mayo 2009), “Benchmarking mbox versus


maildir” Disponible en: http://www.courier-mta.org/mbox-vs-maildir/#theend

• Peers, Bob (consultado en mayo 2009), “Accessing IMAP email accounts using
telnet.” Disponible en: http://bobpeers.com/technical/telnet_imap.php

• Russell R., Quinlan D., y Yeoh C., (consultado en mayo 2009), “Filesystem Hierarchy
Standard”. Disponible en: http://www.pathname.com/fhs/pub/fhs-2.3.html

• Santovec, Michael (consultado en mayo 2009), “Using Telnet with a POP3 Mail
Server”. Disponible en: http://pages.prodigy.net/michael_santovec/pop3telnet.htm

• SourceForge, Inc. (consultado en mayo 2009), “Find and Build Open Source
Software”. Disponible en: http://www.sourceforge.net/

• The Apache Software Foundation, (consultado en mayo 2009), “Autentificación,


Autorización y Control de Acceso”. Disponible en:
http://httpd.apache.org/docs/2.0/howto/auth.html

• The Horde Project, (consultado en mayo 2009), “Horde Groupware Webmail


Edition”. Disponible en: http://www.horde.org/webmail/

• The Horde Project, (consultado en mayo 2009), “Installing Horde Groupware


Webmail Edition 1.1.”. Disponible en: http://www.horde.org/webmail/docs/?
f=INSTALL.html

88 / 89
Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – Venezuela
Master: (+58 212) 597.45.90 – www.cnti.gob.ve

También podría gustarte