Вы находитесь на странице: 1из 26

Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Curso de Servicio de Correo en


GNU/Linux
(20 horas)

Teoría y prácticas

Página 1 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Creative Commons
Reconocimiento-No comercial-Compartir bajo la
misma licencia 3.0
Usted es libre de:

• copiar, distribuir y reproducir públicamente la obra

• hacer obras derivadas

Bajo las siguientes condiciones:

• Reconocimiento. Debe reconocer los créditos de la obra de la


manera especificada por el autor o el licenciante (pero no de una manera
que sugiera que tiene su apoyo o apoyan el uso que hace de su obra).

• No comercial. No puede utilizar esta obra para fines comerciales.

• Compartir bajo la misma licencia. Si altera o transforma esta obra,


o genera una obra derivada, sólo puede distribuir la obra generada bajo
una licencia idéntica a ésta.
• Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de
la licencia de esta obra.
• Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del
titular de los derechos de autor
• Nada en esta licencia menoscaba o restringe los derechos morales del
autor.

Los derechos derivados de usos legítimos u otras limitaciones


reconocidas por ley no se ven afectados por lo anterior.
Esto es un resumen fácilmente legible del texto legal de versión original en Idioma Inglés (la 
licencia completa)
http://creativecommons.org/licenses/by­nc­sa/3.0/ec/legalcode

Página 2 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Índice de contenido
Introducción............................................................................................................4
Protocolo SMTP.......................................................................................................4
Servidores SMTP saliente.......................................................................................6
Ejemplo de Comunicaciones del protocolo SMTP...................................................6
SMTP-AUTH ...........................................................................................................8
Servidores SMTP ....................................................................................................8
Servidor SMTP Postfix.........................................................................................8
Estabilidad ......................................................................................................9
Rendimiento.....................................................................................................9
Instalación y Configuración de un Sistema Postfix con SMTP-AUTH y TLS en
Debian Etch...........................................................................................................10
POP3......................................................................................................................16
Características del POP3...................................................................................17
Comandos con POP3..........................................................................................18
Ventajas del POP3..............................................................................................20
IMAP......................................................................................................................20
Ventajas sobre POP3..........................................................................................21
Instalación de Servidor IMAP/POP3 Courier.........................................................23
Correo basado en Web (Webmail).........................................................................24
SquirrelMail.......................................................................................................24
Instalación de SquirrelMail en Debian Etch..................................................25
RoundCube........................................................................................................26
Instalación de RoundCube en Debian Etch : ................................................26

Página 3 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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 (Advanced
Research Projects Agency Network), el predecesor de la Internet que hoy se
conoce. Con el desarrollo de Internet, el correo electrónico se ha 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.

Protocolo SMTP

Simple Mail Transfer Protocol (SMTP) es el estándar de facto para el correo


electrónico que actualmente es utilizado en la Internet. Formalmente fue
definido en el RFC 821 y luego modificado en el RFC 1123. El protocolo es
ampliamente utilizado hoy en dia y es formalmente denominado SMTP extendido
(ESMTP), el cual es definido en el RFC 2821.

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 el Post Office Protocol (POP) o el Internet Message Access Protocol
(IMAP).

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


textos y posiblemente otros objetos codificados, en el cual uno o mas

Página 4 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

destinatarios de un mensaje pueden ser especificados. El mensaje es transferido


a un servidor remoto utilizando un procedimiento de preguntas y respuestas
entre el cliente y el servidor. Se utilizan para esta operación clientes de correo
electrónicos denominados MUA (Mail User Agent) y servidores de relay MTA
(Mail Transport Agent) 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 envio de correo de clientes
determina a cual servidor SMTP debe conectarse para enviar el correo, para esto
utiliza el registro de DNS MX (Mail eXchange), para cada destinatario del correo.

El cliente SMTP inicia una conexión TCP 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.

Servidores SMTP saliente

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


un servidor SMTP como parte de su configuración. El servidor debe enviar el
mensaje al destinatario en lugar del cliente. Esta configuración permite el diseño
de diferentes políticas y redes. Usuarios finales conectados a Internet pueden
utilizar los servicios de un proveedor de correo electrónico, que no
necesariamente es el mismo del ISP (Internet Service Provider). 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

Página 5 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Ejemplo de Comunicaciones del protocolo SMTP

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 realiza leyendo los registros MX
del DNS.

S: 220 smtp.dominio.com ESMTP


C: HELO cliente.dominio.com
S: 250 Hello cliente.dominio.com, I am glad to meet you
C: MAIL FROM:<jose@dominio.com>
S: 250 Ok
C: RCPT TO:<maria@dominio.com>
S: 250 Ok
C: RCPT TO:<pedro@dominio.com>
S: 250 Ok
C: DATA

Página 6 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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


C: From: "Jose" <jose@dominio.com>
C: To: Maria <maria@dominio.com>
C: Cc: pedro@dominio.com
C: Date: Tue, 15 Jan 2008 16:02:43 -0500
C: Subject: Prueba
C:
C: Hola Maria.
C: Este es un mensaje de prueba.
C: Saludos,
C: Jose
C: .
S: 250 Ok: queued as 12345
C: QUIT
S: 221 Bye
{El servidor cierra la conexion}

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.

Página 7 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Servidores SMTP

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

Servidor SMTP Postfix

Postfix fue escrito por Witse Venema, y su código estuvo disponible como
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


multiples 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 numero de procesos y el numero 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

Página 8 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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.

Instalación y Configuración de un Sistema Postfix con SMTP-AUTH y TLS


en Debian Etch

Para instalar Postfix con SMTP-AUTH y TLS siga los pasos siguientes:
● #apt-get install postfix libsasl2 sasl2-bin libsasl2-modules libdb3-util
procmail postgrey

Le serán hechas dos preguntas. Responda de acuerdo a lo siguiente:


General type of configuration? <-- Internet Site
Mail name? <-- servidor1.prueba.gob.ve

Luego ejecute
● #dpkg-reconfigure postfix

Nuevamente, algunas preguntas le serán hechas:

General type of configuration? <-- Internet Site


Where should mail for root go <-- [blank]
Mail name? <-- servidor1.prueba.gob.ve
Other destinations to accept mail for? (blank for none) <--
servidor1.prueba.gob.ve, localhost.prueba.gob.ve, localhost.localdomain,
localhost
Force synchronous updates on mail queue? <-- No
Local networks? <-- 127.0.0.0/8
Use procmail for local delivery? <-- Yes

Página 9 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Mailbox size limit <-- 0


Local address extension character? <-- +
Internet protocols to use? <-- all

Luego, se realiza lo siguiente:

#postconf -e 'smtpd_sasl_local_domain ='


#postconf -e 'smtpd_sasl_auth_enable = yes'
#postconf -e 'smtpd_sasl_security_options = noanonymous'
#postconf -e 'broken_sasl_auth_clients = yes'
#postconf -e 'smtpd_recipient_restrictions =
#permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination'
#postconf -e 'inet_interfaces = all'
#echo 'pwcheck_method: saslauthd' >> /etc/postfix/sasl/smtpd.conf
#echo 'mech_list: plain login' >> /etc/postfix/sasl/smtpd.conf

Posteriormente creamos los certificados para TLS:


#mkdir /etc/postfix/ssl
#cd /etc/postfix/ssl/
#openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
#chmod 600 smtpd.key
#openssl req -new -key smtpd.key -out smtpd.csr
#openssl x509 -req -days 3650 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
#openssl rsa -in smtpd.key -out smtpd.key.unencrypted
#mv -f smtpd.key.unencrypted smtpd.key
#openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem
-days 3650

Luego configuramos Postfix para TLS:


#postconf -e 'smtpd_tls_auth_only = no'
#postconf -e 'smtp_use_tls = yes'

Página 10 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

#postconf -e 'smtpd_use_tls = yes'


#postconf -e 'smtp_tls_note_starttls_offer = yes'
#postconf -e 'smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key'
#postconf -e 'smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt'
#postconf -e 'smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem'
#postconf -e 'smtpd_tls_loglevel = 1'
#postconf -e 'smtpd_tls_received_header = yes'
#postconf -e 'smtpd_tls_session_cache_timeout = 3600s'
#postconf -e 'tls_random_source = dev:/dev/urandom'
#postconf -e 'myhostname = servidor1.prueba.gob.ve'

El archivo /etc/postfix/main.cf debería verse similar a esto:

cat /etc/postfix/main.cf
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
# Debian specific:
Specifying a file name will cause the first
# line of that file to be used as the name.
The Debian default
# is /etc/mailname.
#myorigin = /etc/mailname
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings
#delay_warning_time = 4h
# TLS parameters
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_use_tls = yes

Página 11 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

myhostname = servidor1.prueba.gob.ve
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = servidor1.prueba.gob.ve, localhost.prueba.gob.ve,
localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
smtpd_sasl_local_domain =
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks
,reject_unauth_destination,check_policy_service inet:127.0.0.1:60000
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom

Página 12 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Reinicie Postfix:

#/etc/init.d/postfix restart

La autenticación será hecha por saslauthd, que es un proceso demonio que


maneja las peticiones de autenticación de texto. Debemos modificar unas pocas
cosas para que funcione adecuadamente. Ya que Postfix se ejecuta enjaulado
(chroot) en /var/spool/postfix debemos hacer lo siguiente:

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

Ahora se tiene que editar /etc/default/saslauthd para activar saslauthd. Para ello
colocar el parámetro START en sí y cambiar la línea OPTIONS="-c" por
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r":

#vi /etc/default/saslauthd
#
# Settings for saslauthd daemon
#
# Should saslauthd run automatically on startup? (default: no)
START=yes
# Which authentication mechanisms should saslauthd use? (default: pam)
#
# Available options in this Debian package:
# getpwent
-- use the getpwent() library function
# kerberos5 -- use Kerberos 5
# pam
-- use PAM
# rimap

Página 13 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

-- use a remote IMAP server


# shadow
-- use the local shadow password file
# sasldb
-- use the local sasldb database file
# ldap
-- use LDAP (configuration is in /etc/saslauthd.conf)
#
# Only one option may be used at a time. See the saslauthd man page
# for more information.
#
# Example: MECHANISMS="pam"
MECHANISMS="pam"
# Additional options for this mechanism. (default: none)
# See the saslauthd man page for information about mech-specific options.
MECH_OPTIONS=""
# How many saslauthd processes should we run? (default: 5)
# A value of 0 will fork a new process for each connection.
THREADS=5

# Other options (default: -c)


# See the saslauthd man page for information about these options.
#
# Example for postfix users: "-c -m /var/spool/postfix/var/run/saslauthd"
# Note: See /usr/share/doc/sasl2-bin/README.Debian
OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r"

Ahora inicie saslauthd ejecutando el siguiente comando:

#/etc/init.d/saslauthd start

Para comprobar que SMTP-AUTH y TLS funcionan apropiadamente se debe

Página 14 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

ejecutar el siguiente comando:

#telnet localhost 25
Luego de establecer la conexión con el servidor de correo Postfix, ingresar
#ehlo localhost

Si observa las siguientes líneas


250-STARTTLS
y
250-AUTH PLAIN LOGIN
todo está bien.

La salida en el sistema se debe observar observar:


servidor1:/etc/postfix/ssl# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
220 servidor1.prueba.gob.ve ESMTP Postfix (Debian/GNU)
ehlo localhost
250-servidor1.prueba.gob.ve
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye

Página 15 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Connection closed by foreign host.


Escriba “quit” para regresar a la línea de comandos.

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.

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.

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

Página 16 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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 UIDL ('Unique IDentification Listing). 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 APOP, el cual
utiliza funciones MD5 para evitar los ataques de contraseñas. Mozilla, Eudora,
Novell Evolution así como Mozilla Thunderbird implementan funciones APOP.

Página 17 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Comandos con POP3

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

Página 18 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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

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.

Página 19 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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

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

Página 20 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

contraseñas en texto plano.

Ventajas de IMAP4 en relación a POP3

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


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

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


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

● Soporte para acceso a partes MIME de los mensajes y obtención parcial:


casi todo el correo electrónico de Internet es transmitido en formato
MIME. El protocolo 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

Página 21 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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 servidor para ver si hay mensajes nuevos.

Página 22 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Instalación de Servidor IMAP/POP3 Courier.

Ejecutar el siguiente comando para instalar Courier-IMAP/Courier-IMAP-


SSL (para IMAPs en el puerto 993) y Courier-POP3/Courier-POP3-SSL (para
POP3s en el puerto 995):

#apt-get install courier-authdaemon courier-base courier-imap courier-imap-ssl


courier-pop courier-pop-ssl courier-ssl gamin libgamin0 libglib2.0-0

Dos preguntas le serán hechas:


Create directories for web-based administration ? <-- No
SSL certificate required <-- Ok

Se configura Postfix para entregar mensajes de correo al Maildir* de los


usuarios:
#postconf -e 'home_mailbox = Maildir/'
#postconf -e 'mailbox_command ='
#/etc/init.d/postfix restart

Correo basado en Web (Webmail)

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

Página 23 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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.

SquirrelMail

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


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

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


independiente de la plataforma en que se encuentra instalada.

Al ser desarrollada como una aplicación modular existen actualmente


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

Instalación de SquirrelMail en Debian Etch

Ejecutar en una consola como usuario root :


#apt-get install squirrelmail

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


eso se ejecuta desde una consola:
#squirrelmail-configure

Página 24 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

Esto debe presentar un menu, 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 permitira configurar todo lo


relativo a mi servidor IMAP y SMTP.

Opciones 3 y 4 es recomendable no modificarlas, para probar la


configuración del servidor y luego revisar estas opciones especificas.

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

Para probar en el navegador se debe ir al siguiente URL


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

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

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 de RoundCube en Debian Etch.


1) Se debe descargar el RoundCube el sitio oficial es http://www.roundcube.net.

Página 25 de 26
Tecno-Redes Sistemas VCG Agosto-2008 Correo-v01

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 BD 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 SQL/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 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.

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

Página 26 de 26

Вам также может понравиться