Manual Correo Posfix
-
Upload
edwin-vera-rojas -
Category
Documents
-
view
61 -
download
9
Transcript of Manual Correo Posfix
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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
ContenidoCréditos y licencia...............................................................................................................2Convenciones tipográficas..................................................................................................2INTRODUCCIÓN................................................................................................................... 6UNIDAD I: PROTOCOLO SIMPLE DE TRANSFERENCIA DE CORREO - SMTP...........................7
Tema 1: Características del Protocolo SMTP....................................................................7Características............................................................................................................8
Tema 2: Servidores SMTP saliente. ...............................................................................10Definición de intercambiadores de correo – registros MX..........................................10
Tema 3: Autenticación SMTP CON SMTP-AUTH..............................................................16Tema 4: Implementaciones libres de servidores SMTP..................................................17Tema 5: Servicio MTA basado en Postfix.......................................................................19
Características de Postfix..........................................................................................19Instalación de Postfix en Canaima GNU/Linux...........................................................21Descripción de los elementos de configuración y sus utilidades...............................33Descripción de los componentes MTA y MDA............................................................34
Configuración de Postfix a través de main.cf........................................................36Tema 6: Emulación de sesiones SMTP usando telnet....................................................38
UNIDAD II: MEDIOS DE ACCESO AL BUZÓN DE CORREOS..................................................40Tema 1: Sistemas de correo basados en POP3..............................................................40
Características del POP3...........................................................................................41Ventajas del POP3.....................................................................................................44Emulación de sesiones POP3.....................................................................................44
Tema 2: Sistemas de correo basados en IMAP...............................................................46Características de IMAP. (IMAPv4).............................................................................47Ventajas de IMAP4 en relación a POP3......................................................................48Emulación de sesiones IMAP.....................................................................................50
Tema 3: Implementando un servidor IMAP/POP3...........................................................56Instalación del servidor Dovecot sobre Debian GNU/Linux........................................56Formatos de almacenamiento de correos y buzones................................................57Bases de datos de usuarios y contraseñas................................................................58Integración con módulos PAM y NSS.........................................................................58Integración con directorios LDAP...............................................................................59Configuraciones inherentes a los mailboxes.............................................................61
UNIDAD III: SERVICIO DE CORREO BASADO EN WEB (WEBMAILS) ....................................63Tema 1: Sistemas de correo basados en POP3..............................................................63Tema 2: Soluciones libres para Webmail......................................................................64
Horde Webmail..........................................................................................................64Instalación en Debian GNU/Linux..........................................................................64
SquirrelMail Webmail.................................................................................................66
2 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
Instalación en Debian GNU/Linux..........................................................................66RoundCube Webmail.................................................................................................67
Instalación en Debian GNU/Linux..........................................................................68Tema 3: Consideraciones y prácticas recomendadas en el despliegue de webmails.....70
Ubicación de aplicaciones en el sistema de archivos................................................71Directivas de acceso al servicio Web.....................................................................72Protección basada en ACLs para el sistema de archivos de la aplicación..............72
ANEXOS............................................................................................................................. 76Ejercicio Propuesto N#1................................................................................................76
Solución del ejercicio.................................................................................................77Ejercicio Propuesto N#2................................................................................................86
GLOSARIO DE TÉRMINOS...................................................................................................87
3 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 ARPANET1, 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 RFC3 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 POP5 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és3 Solicitud de comentarios, por sus siglas en inglés4 SMTP extendido, por sus siglas en inglés5 Protocolo de oficina de correos, por sus siglas en inglés6 Protocolo de acceso a mensajes de Internet, por sus siglas en inglés
7 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 MUA7 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 TCP11 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és8 Agente de transferencia de correos, por sus siglas en inglés9 Servicio de nombres de dominio, por sus siglas en inglés10 Intercambiador de correos, por sus siglas en inglés11Protocolo de comunicación de transferencias, por sus siglas en inglés
8 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 ISP12. 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
12Proveedor de servicios de Internet, por sus siglas en inglés
9 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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:<[email protected]>
S: 250 Ok
C: RCPT TO:<[email protected]>
Página 5 de 26
S: 250 Ok
C: RCPT TO:<[email protected]>
S: 250 Ok
C: DATA
S: 354 End data with <CR><LF>.<CR><LF>
C: From: "Jose" [email protected]
C: To: Maria <[email protected]>
C: Cc: [email protected]
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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
13http://www.postfix.org/
15 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 TLS17 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
14Correo comercial no solicitado, por sus siglas en inglés. Usualmente llamado spam.15Por 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.
16En 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
17Seguridad en la capa de transporte, por sus siglas en inglés18Capas de zócalos seguros, por sus siglas en inglés
17 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
debe verificar que su archivo de repositorios del sistema APT19, /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 LDAP20 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
19Herramienta avanzada de empaquetamiento, por sus siglas en inglés20Protocolo de acceso ligero a directorios, por sus siglas en inglés
18 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
21Tenga 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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.
22Nombre 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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.
23A 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 procmail25
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
24Agente de entrega de correo, por sus siglas en inglés.25Procmail 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
myhostname servidor.correo.gob.ve
FQDN del servidor, con el
cual se identificará ante
otros servidores de correo.
El asistente de instalación
configura esta variable.
mydomain correo.gob.ve
Dominio de correo principal
para el que este servidor
recibirá correos.
mydestination sub.correo.gob.ve
Dominios adicionales para
los cuales se aceptarán
correos.
mynetworks 10.40.0.0/24 Subredes en formato CIDR
28 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
para las cuales se
aceptarán correos,
usualmente con pocas o
ninguna restricción.
mailbox_size_limit 1024000
Tamaño máximo en
kilobytes del buzón de
entrada de un usuario.
inet_interfaces allInterfaces de red en las
cuales escuchará Postfix.
smtpd_sender_restrictions
permit_mynetworks,
reject_rbl_client list.dsbl.org,
permit
Lista de reglas para el
remitente, separadas por
coma. Usualmente se
termina con la regla permit
y el resto de las reglas
utilizan reject o check para
eliminar conexiones no
deseadas.
mailbox_command procmail -a "$EXTENSION"
Utiliza procmail para
entregar los correos
electrónicos a los buzones
29 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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: [email protected]
4. Indicar el destinatario del mensaje
RCPT TO: [email protected]
5. Indicar el inicio de la data del mensaje
26http://www.yuki-onna.co.uk/email/smtp.html
30 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 MD529 para evitar los
27 Identificación de lista única, por sus siglas en inglés28POP autenticado, por sus siglas en inglés29Resumen de mensajes MD5, por sus siglas en inglés
34 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
30http://pages.prodigy.net/michael_santovec/pop3telnet.htm
36 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 MIME31. El protocolo
31Extensiones 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
32http://bobpeers.com/technical/telnet_imap.php
42 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
43 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
44 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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.
33http://www.courier-mta.org/mbox-vs-maildir/#theend
46 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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.
34Módulos de autenticación apilables, por sus siglas en inglés
47 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
35Conmutador del servicio de nombres, por sus siglas en inglés
48 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve
dict {
}
plugin {
}
51 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 proyecto37 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/www38 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
36http://www.horde.org/webmail/docs/?f=INSTALL.html37http://www.horde.org/webmail/38Ver tema 3 para consideraciones sobre el sistema de archivos
54 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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á
escrito en PHP39 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
39Preprocesador de hipertexto PHP, por sus siglas en inglés
55 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 URL40
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.
40Ubicación uniforme de recurso, por sus siglas en inglés41Protocolo de Internet, por sus siglas en inglés42 Javascript y XML asíncronos, por sus siglas en inglés
56 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
43Lenguaje de consultas estructuradas, por sus siglas en inglés
57 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 Sourceforge44 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.
44http://www.sourceforge.net/45http://www.freshmeat.net/
59 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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.
46Estándar de la jerarquía del sistema de archivos, por sus siglas en ingléshttp://www.pathname.com/fhs/pub/fhs-2.3.html
60 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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
47http://httpd.apache.org/docs/2.0/howto/auth.html
61 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 232 = 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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+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 / 89Correo en GNU/Linux
Av. Andrés Bello, Torre BFC, Piso 16, Municipio Libertador, Caracas – VenezuelaMaster: (+58 212) 597.45.90 – www.cnti.gob.ve