El documento explica el protocolo SMTP (Simple Mail Transfer Protocol), que permite la transferencia de correo electrónico entre servidores. SMTP es un protocolo de texto que funciona a través de una conexión punto a punto utilizando el puerto 25. El proceso implica que el cliente envía un correo al servidor especificando el remitente y destinatario, luego transfiere el cuerpo del mensaje.
2. SMTP
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.
2
3. SMTP
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.)
Es utilizado para transferir correo confiable y
eficaz.
3
5. Historia
En 1982 se diseñó el primer sistema para
intercambiar correos electrónicos para ARPANET,
definido en los 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
5
6. Funcionamiento
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.
6
7. Funcionamiento
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.
7
8. Funcionamiento
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.
Utiliza normalmente el puerto 25 en el servidor
para establecer la conexión.
8
9. SMTP entiende comandos muy
simples:
HELO – Date a conocer
EHLO – Date a conocer y solicita el modo extendido
MAIL FROM – Especifica el remitente
TCPT TO – Especifica el destinatario
9
10. Comandos:
DATA – Especifica el cuerpo del mensaje
RSET – Resetea
QUIT – Cierra la sesión
HELP – Ayuda con los comandos
VRFY – Verifica una dirección
VERB – En modo verbal
10
11. Proceso
El emisor SMTP establece una conexión con el
SMTP de destino y espera a que el servidor
envíe un mensaje "220 Service ready" o "421
Service not available“.
Se envía un HELO (abreviatura de "hello"), con el
que el receptor se identificará devolviendo su
nombre de dominio. El SMTP emisor puede
usarlo para verificar si contactó con el SMTP de
destino correcto.
11
12. Proceso
El emisor inicia ahora una transacción enviando
el comando MAIL al servidor. Este comando
contiene la ruta de vuelta al emisor que se puede
emplear para informar de errores. (paso 3)
Si se acepta, el receptor replica con un "250 OK".
12
13. Proceso
Darle al servidor SMTP el destino del
mensaje(puede haber más de un receptor).
Esto se hace enviando uno o más comandos
RCPT TO:<forward-path>. Cada uno de ellos
recibirá una respuesta "250 OK" si el servidor
conoce el destino, o un "550 No such user here"
si no.
13
14. Proceso
Cuando se envían todos los comandos rcpt, el
emisor envía un comando DATA para notificar al
receptor que a continuación se envían los
contenidos del mensaje.
El servidor replica con "354 Start mail input, end
with <CRLF>.<CRLF>". Nótese que se trata de la
secuencia de terminación que el emisor debería
usar para terminar los datos del mensaje.
14
15. Proceso
El cliente envía los datos línea a línea, acabando
con la línea <CRLF>. <CRLF> que el servidor
reconoce con "250 OK" o el mensaje de error
apropiado si cualquier cosa fue mal.
15
16. Proceso
Ahora hay varias acciones posibles:
El emisor no tiene más mensajes que enviar;
16
cerrará la conexión con un comando QUIT, que
será respondido con "221 Service closing
transmission channel".
El emisor no tiene más mensajes que enviar, pero
está preparado para recibir mensajes(si los hay) del
otro extremo. Mandará el comando TURN. Los dos
SMTPs intercambian sus papelees y el emisor que
era antes receptor puede enviar ahora mensajes
empezando por el paso 3 de arriba.
El emisor tiene otro mensaje que enviar, y
simplemente vuelve al paso 3 para enviar un nuevo
MAIL.
17. Ejemplo
En el siguiente ejemplo se muestra una conexión
típica. Se nombra con la letra C al cliente y con S
al servidor.
17
18. Ejemplo
18
S: 220 Servidor ESMTP
C: HELO
S: 250 Hello, please meet you
C: MAIL FROM: yo@midominio.com
S: 250 Ok
C: RCPT TO: destinatario@sudominio.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: Hola,
C: Esto es una prueba.
C: Adios.
C: .
S: 250 Ok: queued as 12345
C: quit
S: 221 Bye
19. !Ups¡
SMTP también tiene algunas deficiencias que no
se habían previsto cuando fue creado, y que ha
creado problemas para muchos usuarios
modernos. SMTP no tiene manera de verificar los
remitentes son quienes dicen que son.
19
20. Diferencias con otros protocolos
•POP y IMAP son protocolos para el
almacenamiento de correo electrónico.
• SMTP es un protocolo para enviar y
recibir.
20
21. Mas claro…
Para dar un ejemplo del mundo real
SMTP sería como un cartero o cartero. Él o ella
puede entregar o recoger el correo para el
traslado a otro lugar.
POP es como un buzón de correo o apartado
postal. Es el lugar el correo es entregado y donde
permanece hasta que el beneficiario está listo
para leerlo.
21