SMTP (Simple Mail Transfer Protocol). SMTP (Simple Mail Transfer Protocol). SMTP El Simple Mail Transfer Protocol (SMTP) o “protocolo para transferencia simple de correo”, es un protocolo de red utilizado para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos (PDA, teléfonos móviles, etcétera). Fue definido en el RFC 2821 y es un estándar oficial de Internet.1 El funcionamiento de este protocolo se da en línea, de manera que opera en los servicios de correo electrónico. Sin embargo, este protocolo posee algunas limitaciones en cuanto a la recepción de mensajes en el servidor de destino (cola de mensajes recibidos). Como alternativa a esta limitación se asocia normalmente a este protocolo con otros, como el POP o IMAP, otorgando a SMTP la tarea específica de enviar correo, y recibirlos empleando los otros protocolos antes mencionados (POP O IMAP). Historia En 1982 se diseñó el primer sistema para intercambiar correos electrónicos en ARPANET, definido en los Request for comments RFC 821 y RFC 822. La primera de ellas define este protocolo y la + SMTP se basa en el modelo cliente-servidor, donde un cliente envía un mensaje a uno o varios receptores. 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. Las respuestas del servidor constan de un código numérico de tres dígitos, seguido de un texto explicativo. El número va dirigido a un procesado automático de la respuesta por autómata, mientras que el texto permite que un humano interprete la respuesta. 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.2 Modelo de procesamiento del correo. El correo electrónico es presentado por un cliente de correo (MUA, agente de usuario de correo) a un servidor de correo (MSA, agente de sumisión de correo) usando SMTP. Una gran parte de los abastecedores de caja permiten la sumisión. Desde allí, el MSA entrega el correo a su agente de transferencia postal mejor conocido como el MTA (Mail Transfer Agent, Agente de Transferencia de Correo). En algunas ocasiones, estos dos agentes son casos diferentes aunque hay que destacar que provienen del mismo software de donde fueron lanzados sólo que presentan opciones diferentes dentro de la misma máquina. El procesamiento local que se presenta puede ser realizado en una sola máquina o partido entre varias aplicaciones; en este segundo caso, los procesos implicados pueden compartir archivos; aquí SMTP es usado para la transferencia de mensajes internamente, con cada uno de los hosts configurados para usar la siguiente aplica- SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). ción como un anfitrión elegante. Para lograr la localización del servidor objetivo, el MTA divisorio tiene que usar el sistema de nombre de dominio (DNS) para lograr la búsqueda del registro interno de cambiado de correo conocido como registro MX para la esfera del recipiente (la parte de la dirección a la derecha). Es en ese instante cuando el registro de MX devuelto contiene el nombre del anfitrión objetivo. Luego el MTA se une al servidor de cambio como un cliente SMTP. Una vez que MX acepta el mensaje entrante, este a su vez se lo da a un agente de entrega de correo (MDA) para luego ser llevado a la entrega de correo local. El MDA, además de entregar mensajes es también capaz de salvar mensajes en un buzón de formato, y la recepción de correo puede ser realizada usando muchas computadoras. Hay dos formas en que un MDA puede entregar mensajes: ya sea enviándolos directamente al almacenamiento, o expedirlos sobre una red usando SMTP. Una vez entregado al servidor de correo local, dicho correo es almacenado para la recuperación de la hornada. Su recuperación se logra por medio de las aplicaciones de usuario final, conocidas como clientes de correo electrónico, usando el Protocolo de Acceso de Mensaje de Internet (IMAP), este protocolo que facilita tanto el acceso para enviar, como el manejo de correo almacenado. Mail exchanger (MX) MDA MUA @ @ MSA MTA User SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). User SMTP Server You @ @ SMTP SMTP POP/IMAP SMTP The Internet SMTP Server 1 2 SMTP es un protocolo de la capa 5 modelado en el sistema de correo. Servidor SMTP distributye e-mails, mientras que Servidor POP/IMAP manejan mail boxes. El usuario se conecta con un Cliente (Outlook, Notes) a un Servidor IMAP o POP para enviar y recibir emails. 3 Cuando un e-mail llega a un servidor SMTP, se relay a otro Servidor SMTP se almacena en un mailbox SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). Puertos Los puertos 25 y 587 se utilizan para proporcionar la conectividad del cliente con el servicio de transporte en la parte delantera de la función de servidor de acceso de cliente (CAS). Los puertos 25, 465 y 475 son utilizados por el servicio de transporte de buzón de correo. El Puerto 7641 garantiza la entrega de paquetes de datos en la misma orden, en que fueron mandados Descripción del Protocolo SMTP es un protocolo orientado a la conexión basado en texto, en el que un remitente de correo se comunica con un receptor de correo electrónico mediante la emisión de secuencias de comandos y el suministro de los datos necesarios en un canal de flujo de datos ordenado fiable, normalmente un protocolo de control de transmisión de conexión (TCP). Una sesión SMTP consiste en comandos originados por un cliente SMTP (el agente de inicio, emisor o transmisor) y las respuestas correspondientes del SMTP del servidor (el agente de escucha, o receptor) para que la sesión se abra y se intercambian los parámetros de la sesión. Una sesión puede incluir cero o más transacciones SMTP. Una transacción de SMTP se compone de tres secuencias de comando / respuesta Ellos son: MAIL: comando para establecer la dirección de retorno, también conocido como Return-Path, remitente o sobre. Esta es la dirección para mensajes de despedida. RCPT: comando, para establecer un destinatario de este mensaje. Este mandato puede emitirse varias veces, una para cada destinatario. Estas direcciones son también parte de la envolvente. SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). DATA: para enviar el mensaje de texto. Este es el contenido del mensaje, en lugar de su envoltura. Se compone de una cabecera de mensaje y el cuerpo del mensaje separado por una línea en blanco. DATA es en realidad un grupo de comandos, y el servidor responde dos veces: una vez para el comando de datos adecuada, para reconocer que está listo para recibir el texto, y la segunda vez después de la secuencia final de los datos, para aceptar o rechazar todo el mensaje. SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). El protocolo SMTP El protocolo SMTP (Protocolo simple de transferencia de correo) es el protocolo estándar que permite la transferencia de correo de un servidor a otro mediante una conexión punto a punto. Éste es un protocolo que funciona en línea, encapsulado en una trama TCP/IP. El correo se envía directamente al servidor de correo del destinatario. El protocolo SMTP funciona con comandos de textos enviados al servidor SMTP (al puerto 25 de manera predeterminada). 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. A continuación se describe una situación en la que se realiza una solicitud para enviar correos a un servidor SMTP: • Al abrir la sesión SMTP, el primer comando que se envía es el comando HELO seguido por un espacio (escrito <SP>) y el nombre de dominio de su equipo (para decir "hola, soy este equipo"), y después validado por Enter (escrito <CRLF>). Desde abril de 2001, las especificaciones para el protocolo SMTP, definidas en RFC 2821, indican que el comando HELO sea remplazado por el comando EHLO. • El segundo comando es "MAIL FROM:" seguido de la dirección de correo electrónico del remitente. Si se acepta el comando, el servidor responde con un mensaje "250 OK". • El siguiente comando es "RCPT TO:" seguido de la dirección de correo electrónico del destinatario. Si se acepta el comando, el servidor responde con un mensaje "250 OK". • El comando DATA es la tercera etapa para enviar un correo electrónico. Anuncia el comienzo del cuerpo del mensaje. Si se acepta el comando, el servidor responde con un mensaje intermediario numerado 354 que indica que puede iniciarse el envío del cuerpo del mensaje y considera el conjunto de líneas siguientes hasta el final del mensaje indicado con una línea que contiene sólo un punto. El cuerpo del correo electrónico eventualmente contenga algunos de los siguientes encabezados: Date (Fecha): Subject (Asunto): Cc: Bcc (Cco): From (De): Si se acepta el comando, el servidor responde con un mensaje "250 OK". SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). Comando Ejemplo Descripción HELO: EHLO 193.56.47.125 MAIL FROM: Identificación que utiliza la dirección IP o el nombre de dominio del equipo remitente MAIL FROM: MAIL FROM: originator@domain .com Identificación de la dirección del remitente RCPT TO: RCPT TO: recipient@domain. com Identificación de la dirección del destinatario DATA DATA message Cuerpo del correo electrónico QUIT QUIT Salida del servidor SMTP HELP HELP Lista de comandos SMTP que el servidor admite Todas las especificaciones del protocolo SMTP se encuentran definidas en RFC 821 (desde abril de 2001, las especificaciones del protocolo SMTP se encuentran definidas en RFC 2821). MTP SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática SMTP (Simple Mail Transfer Protocol). Bibliografía https://es.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol https://www.youtube.com/watch?v=v9MCuUW5pKs CS071 11.14 Capa de Aplicaciones - Protocolo SMTP mariontechacademy http://es.ccm.net/contents/279-protocolos-de-mensajeria-smtp-pop3-e-imap4 SMTP (Simple Mail Transfer Protocol) // Rafael Gracia - Willmer Calderon - Juan Camilo Álvarez Universidad de Córdoba - Facultad de Ingeniería - Ingeniería de Sistemas - Telemática