|
Article on other languages:
|
Simple Mail Transfer Protocol (SMTP), o protocolo simple de transferencia de correo. Protocolo de red basado en texto utilizado para el intercambio de mensajes de correo electrónico entre computadoras o distintos dispositivos (PDA's, teléfonos móviles, etc.). Está definido en el RFC 2821 y es un estándar oficial de Internet.[1]
HistoriaEn 1982 se diseñó el primer sistema para intercambiar correos electrónicos para ARPANET, definido en los Request for comments RFC 821 y RFC 822. La primera de ellas define este protocolo y la segunda el formato del mensaje que este protocolo debía transportar. Con el tiempo se ha convertido en uno de los protocolos más usados en internet. Para adaptarse a las nuevas necesidades surgidas del crecimiento y popularidad de internet se han hecho varias ampliaciones a este protocolo, como poder enviar texto con formato. FuncionamientoSMTP 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 digitos, 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. En el conjunto de protocolos TCP/IP, el SMTP va por encima del TCP, usando normalmente el puerto 25 en el servidor para establecer la conexión. Resumen simple del funcionamiento del protocolo SMTP
Puede que el servidor SMTP soporte las extensiones definidas en el RFC 1651, en este caso, la orden HELO puede ser sustituida por la orden EHLO, con lo que el servidor contestará con una lista de las extensiones admitidas. Si el servidor no soporta las extensiones, contestará con un mensaje "500 Syntax error, command unrecognized". En el ejemplo pueden verse las órdenes básicas de SMTP:
De los tres dígitos del código numérico, el primero indica la categoría de la respuesta, estando definidas las siguientes categorías:
Una vez que el servidor recibe el mensaje finalizado con un punto puede bien almacenarlo si es para un destinatario que pertenece a su dominio, o bien retransmitirlo a otro servidor para que finalmente llegue a un servidor del dominio del receptor. Ejemplo de una comunicación SMTPEn primer lugar se ha de establecer una conexión entre el emisor (cliente) y el receptor (servidor). Esto puede hacerse automáticamente con un programa cliente de correo o mediante un cliente telnet. En el siguiente ejemplo se muestra una conexión típica. Se nombra con la letra C al cliente y con S al servidor. S: 220 Servidor ESMTP C: HELO S: 250 Hello, please meet you C: MAIL FROM: yo@midominio.com S: 250 Ok C: RCPT TO: hackerhigueyano@hotmail.com S: 250 Ok C: DATA S: 354 End data with <CR><LF>.<CR><LF> C: Subject: Campo de asunto C: From: yo@midominio.com C: To: destinatario@sudominio.com C: C: Hola, C: Esto es una prueba. C: Adios. C: . S: 250 Ok: queued as 12345 C: quit S: 221 Bye Formato del mensajeComo se muestra en el ejemplo anterior, el mensaje es enviado por el cliente después de que éste mande la orden DATA al servidor. El mensaje está compuesto por dos partes:
Seguridad y spamUna de las limitaciones del SMTP original es que no facilita métodos de autenticación a los emisores, así que se definió la extensión SMTP-AUTH. A pesar de esto, el spam es aún el mayor problema. No se cree que las extensiones sean una forma práctica para prevenirlo. Internet Mail 2000 es una de las propuestas para reemplazarlo. ESPECIFICACIONES DEL PROTOCOLO SMTP Ejemplo de transferencia de mensajes SMTP Las líneas precedidas de <<"C:">> corresponden a comandos emitidos por el cliente y las que comienzan con <<"S:">> son las consiguientes respuestas que devuelve el servidor. S: <en espera de conexión TCP en el puerto 25> c: <abre la conexión con el servidor> s:220 beta.gov Simple Mail Transfer Service ready c:HELO <alpha.edu> s:250 beta.gov c:MAIL from : <smith@alpha.edu> s:250 OK c:RCPT TO: <jones@beta.edu> s:250 OK c:RCPT TO: <green@beta.edu> s:550 No such user here c:DATA s:354 Start mail input; end with <CRLF>.<CRLF> c:.... se envía el contenido del mensaje (cabecera y cuerpo)... s:<CRLF>.<CRLF> s:250 OK c:QUIT s:221 beta.gov Service closing transmition channel 1. Conexión al inicio del protocolo Cuando se emplea el protocolo TCP el servidor SMTP escucha permanentemente al puerto 25, en espera de algún cliente que desea enviarlo. El protocolo de aplicación SMTP inicia el comando HELO, seguido de la identificación del cliente, el servidor lo acepta con un código <<250 OK>>. 2. Envío de mensajes Una vez iniciado el protocolo, se realiza el envío de mensajes desde el cliente al servidor, mediante el siguiente proceso. 2.1.Envío del sobre En primer lugar se transmite la dirección del buzon del origen del mensaje, el comando es el MAIL FROM y si el servidor acepta envía el mensaje 250 OK. Luego se transmite la dirección de destino, mediante el comando RCPT TO y el servidor confirma con 250 OK, pero si el destinatario no existe se envía 550 Failure. 2.2.Envío del contenido del mensaje El cliente informa al servidor de que va a enviar el mensaje mendiante el comando DATA, si el servidor esta dispuesto envía 354, todas las líneas que el cliente envía a partir de este momento se consideran parte del contenido del mensaje, al final del mensaje se considera enviando el <<.>>, cuando el servidor recibe el fin del mensaje confirma con 250 OK, 3. Cierre de la conexión Una vez enviado todos los mensajes, el cliente puede cerrar la conexión mediante el comando QUIT, caso contrario la máquina que recibió los mensajes sea quien las envíe con el comando TURN, el servidor confirma con 250 OK, dando una sección que se inicia con el comando HELO. ReferenciasVéase tambiénEnlaces externos |
This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.
Mercedes Car
This site monitored by SitePinger.net