SMTP SMTP Simple Mail Transfer Protocol RFC 821

  • Slides: 23
Download presentation
SMTP

SMTP

SMTP • • • Simple Mail Transfer Protocol RFC 821 (1982) RFC 2821 (2001)

SMTP • • • Simple Mail Transfer Protocol RFC 821 (1982) RFC 2821 (2001) RFC 5821 (2008) Puertos: 25 (TCP), 587 (TCP alternativo para clientes de correo, 465 (SMTP)

Visión General • En 1982 se diseñó el primer sistema para intercambiar correos electrónicos

Visión General • En 1982 se diseñó el primer sistema para intercambiar correos electrónicos en ARPANET, (RFC 821 y RFC 822). La comunicación entre el cliente y el servidor consiste enteramente en líneas de texto compuestas por caracteres ASCII. El tamaño máximo permitido para estas líneas es de 1000 caracteres. • A cada comando enviado por el cliente (validado por la cadena de caracteres ASCII CR/LF, que equivale a presionar la tecla Enter) le sigue una respuesta del servidor SMTP compuesta por un número y un mensaje descriptivo. • En el protocolo SMTP todas las órdenes, réplicas o datos son líneas de texto, delimitadas por el carácter <CRLF>. Todas las réplicas tienen un código numérico al comienzo de la línea.

Comunicación • • Cuando un cliente establece una conexión con el servidor SMTP, espera

Comunicación • • Cuando un cliente establece una conexión con el servidor SMTP, espera a que éste envíe un mensaje “ 220 Service ready” o “ 421 Service non available” Se envía un HELO desde el cliente. Con ello el servidor se identifica. Esto puede usarse para comprobar si se conectó con el servidor SMTP correcto. MAIL FROM. Como argumento de esta orden se puede pasar la dirección de correo al que el servidor notificará cualquier fallo en el envío del correo (Por ejemplo, MAIL FROM: <fuente@host 0>). Luego si el servidor comprueba que el origen es válido, el servidor responde “ 250 OK”. RCPT TO: <destino@host>. Se pueden mandar tantas órdenes RCPT como destinatarios del correo queramos. Por cada destinatario, el servidor contestará “ 250 OK” o bien “ 550 No such user here”, si no encuentra al destinatario.

Comunicación • Una vez enviados todos los RCPT, el cliente envía una orden DATA

Comunicación • Una vez enviados todos los RCPT, el cliente envía una orden DATA para indicar que a continuación se envían los contenidos del mensaje. El servidor responde “ 354 Start mail input, end with <CRLF>” Esto indica al cliente como ha de notificar el fin del mensaje. • El cuerpo del correo electrónico eventualmente contenga algunos de los siguientes encabezados: Date (Fecha) Subject (Asunto) Cc Bcc (Cco) From (De) • • •

Comunicación • Tras el envío, el cliente, si no tiene que enviar más correos,

Comunicación • Tras el envío, el cliente, si no tiene que enviar más correos, con la orden QUIT corta la conexión. También puede usar la orden TURN, con lo que el cliente pasa a ser el servidor, y el servidor se convierte en cliente. Finalmente, si tiene más mensajes que enviar, repite el proceso hasta completarlo

Órdenes básicas • • • • HELO, para abrir una sesión con el servidor

Órdenes básicas • • • • HELO, para abrir una sesión con el servidor MAIL FROM, para indicar quien envía el mensaje RCPT TO, para indicar el destinatario del mensaje DATA, para indicar el comienzo del mensaje, éste finalizará cuando haya una línea únicamente con un punto. QUIT, para cerrar la sesión RSET Aborta la transacción en curso y borra todos los registros. SEND Inicia una transacción en la cual el mensaje se entrega a una terminal. SOML El mensaje se entrega a un terminal o a un buzón. SAML El mensaje se entrega a un terminal y a un buzón. VRFY Solicita al servidor la verificación del argumento. EXPN Solicita al servidor la confirmación del argumento. HELP Permite solicitar información sobre un comando. NOOP Se emplea para reiniciar los temporizadores. TURN Solicita al servidor que intercambien los papeles.

Códigos Numéricos • 2 XX, la operación solicitada mediante el comando anterior ha sido

Códigos Numéricos • 2 XX, la operación solicitada mediante el comando anterior ha sido concluida con éxito. • 3 XX, la orden ha sido aceptada, pero el servidor esta pendiente de que el cliente le envíe nuevos datos para terminar la operación. • 4 XX, para una respuesta de error, pero se espera a que se repita la instrucción. • 5 XX, para indicar una condición de error permanente, por lo que no debe repetirse la orden

Ejemplo • • • • • S: C: S: C: C: C: S: C:

Ejemplo • • • • • S: C: S: C: C: C: S: C: 220 smtp. gmail. com SMTP Ready EHLO machine 1. gmail. com 250 smtp. gmail. com MAIL FROM: <webmaster@gmail. com> 250 OK RCPT TO: <arquitectura@yahoo. com> 250 RCPT TO: <clienserv@tittom. fr> 550 No such user here DATA 354 Start mail input; end with <CRLF> Subject: Hola clase ¿Que haciendo por acá? Espero que saquemos 10 todos <CRLF> 250 QUIT R: 221 smtp. gmail. com closing transmission

POP 3 • El protocolo POP (Protocolo de oficina de correos), permite recoger el

POP 3 • El protocolo POP (Protocolo de oficina de correos), permite recoger el correo electrónico en un servidor remoto (servidor POP). Es necesario para las personas que no están permanentemente conectadas a Internet, ya que así pueden consultar sus correos electrónicos recibidos sin que ellos estén conectados. Es un protocolo de nivel de aplicación en el Modelo OSI.

Características • POP 3 está diseñado para recibir correo, no para enviarlo; le permite

Características • POP 3 está diseñado para recibir correo, no para enviarlo; le permite a los usuarios conexiones intermitentes o muy lentas (tales como las conexiones por módem), descargar su correo electrónico mientras tienen conexión y revisarlo posteriormente incluso estando desconectados. La mayoría de los clientes de correo electrónico soportan POP 3 ó IMAP. • Este protocolo tiene asignado el puerto 110.

Características • El protocolo POP 3 administra la autenticación utilizando el nombre de usuario

Características • El protocolo POP 3 administra la autenticación utilizando el nombre de usuario y la contraseña. Sin embargo, esto no es seguro, ya que las contraseñas, al igual que los correos electrónicos, circulan por la red como texto sin codificar (de manera no cifrada). • Es posible cifrar la contraseña utilizando un algoritmo MD 5. Sin embargo, debido a que esto es opcional, pocos servidores lo implementan. Además, el protocolo POP 3 bloquea las bandejas de entrada durante el acceso, lo que significa que es imposible que dos usuarios accedan de manera simultánea a la misma bandeja de entrada.

 • El UIDL proporciona un mecanismo que evita los problemas de numeración. El

• 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 POP 3 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. • En la actualidad POP 3 cuenta con diversos métodos de autenticación, Uno de estos es APOP, el cual utiliza funciones MD 5 para evitar los ataques de contraseñas. Mozilla Thunderbird implementa funciones APOP.

Comando Descripción USER identification Este comando permite la autenticación. Debe estar seguido del nombre

Comando Descripción USER identification Este comando permite la autenticación. Debe estar seguido del nombre de usuario, una cadena de caracteres que identifique al usuario en el servidor. PASS password El comando PASS permite especificar la contraseña del usuario STAT Información acerca de los mensajes del servidor RETR Número del mensaje que se va a recoger DELE Número del mensaje que se va a eliminar LIST [msg] Número del mensaje que se va a mostrar NOOP Permite mantener la conexión abierta en caso de inactividad TOP <message. ID> <n> Comando que muestra n líneas del mensaje, cuyo número se da en el argumento. UIDL [msg] Solicitud al servidor para que envíe una línea que contenga información sobre el mensaje que eventualmente se dará en el argumento. QUIT El comando QUIT solicita la salida del servidor POP 3.

Internet Message Access Protocol IMAP

Internet Message Access Protocol IMAP

Internet Message Access Protocol • Es un protocolo de aplicación de acceso a mensajes

Internet Message Access Protocol • Es un protocolo de aplicación de acceso a mensajes electrónicos almacenados en un servidor

Familia: Protocolos de Internet Función: acceso a correo electrónico Puertos: 143/TCP 220/TCP (IMAP 3)

Familia: Protocolos de Internet Función: acceso a correo electrónico Puertos: 143/TCP 220/TCP (IMAP 3) 993/TCP (IMAPS) Estándares: RFC 3501

 • IMAP fue diseñado como una moderna alternativa a POP por Mark Crispin

• IMAP fue diseñado como una moderna alternativa a POP por Mark Crispin en el año 1986. • En Stanford

 • Los clientes de correo electrónico son comúnmente denominados clientes POP o IMAP,

• Los clientes de correo electrónico son comúnmente denominados clientes POP o IMAP, pero en ambos casos se utiliza SMTP.

Referencias • http: //es. wikipedia. org/wiki/Simple_Mail_Tr ansfer_Protocol • http: //es. kioskea. net/contents/internet/smt p. php

Referencias • http: //es. wikipedia. org/wiki/Simple_Mail_Tr ansfer_Protocol • http: //es. kioskea. net/contents/internet/smt p. php 3#el-protocolo-pop 3 • https: //es. wikipedia. org/wiki/Internet_Mess age_Access_Protocol