SMTP es un protocolo que transfiere correo de forma fiable y eficiente entre servidores, permitiendo que los mensajes se envíen a través de múltiples servidores. SMTP funciona mediante una serie de comandos y respuestas entre el cliente y servidor para identificar remitentes y destinatarios, transferir el cuerpo del mensaje, y confirmar la entrega del correo. Las extensiones SMTP hacen que el protocolo sea más robusto al agregar funcionalidades como verificación de direcciones y cancelación de envíos.
La empresa sostenible: Principales Características, Barreras para su Avance y...
Simple Mail Transfer Protocol
1. SMTP (Simple Mail Transfer Protocol)
• RFC 5321, octubre del 2008
• El servicio SMTP es ofrecido por la capa de aplicación del modelo TCP/IP al
usuario.
• El objetivo de SMTP es transferir correo de forma fiable y eficiente.
• SMTP es capaz de transportar correo a través de varios servidores SMTP, esta
capacidad recibe el nombre de “SMTP mail relaying”.
Correo electrónico y mensajería Francesc Pérez Fdez
capacidad recibe el nombre de “SMTP mail relaying”.
• MODELO BÁSICO SMTP
ORDEN
RESPUESTA
Mail User Agent
Mail Transfer Agent Mail Transfer Agent
Mail User Agent
MailBox
2. SMTP (Simple Mail Transfer Protocol)
• MODELO BÁSICO SMTP
La responsabilidad del cliente es transferir mensajes de correo a uno o
más servidores, o informar al usuario sobre el fallo de la operación tras
la notificación del servidor.
Cuando el mismo mensaje es enviado a varios usuarios de un mismo
destino, el cliente SMTP sólo envía una copia al servidor.
Correo electrónico y mensajería Francesc Pérez Fdez
El contenido de un mensaje está formado por una cabecera (header) y
unos datos (body).
Las especificaciones MIME (RFC 2045) determinan el body del mensaje.
Una dirección de correo (jose.gomez@stucom.com) es una cadena que
identifica al destinatario cuyo mensaje será enviado (MUA) o una espacio
en el que el mensaje será depositado (Buzón de correo – Mailbox).
3. SMTP (Simple Mail Transfer Protocol)
• CONFIGURACIONES SMTP
Correo electrónico y mensajería Francesc Pérez Fdez
4. SMTP (Simple Mail Transfer Protocol)
• Una sesión SMTP empieza cuando un cliente abre una conexión (típicamente
capa transporte TCP) hacia un servidor (típicamente puerto 25) y el servidor
responde con un mensaje de apertura.
Correo electrónico y mensajería Francesc Pérez Fdez
221 OK
5. SMTP (Simple Mail Transfer Protocol)
• Cuando el cliente recibe el mensaje de bienvenida (220) del servidor, puede
enviar dos comandos diferentes en función de si soporta las extensiones
SMTP (EHLO) o no (HELO), indicando su identidad. Después, el cliente solicita
al servidor una lista con las extensiones SMTP que soporta.
• Si el servidor SMTP es antiguo y no soporta las extensiones SMTP
responderá con un mensaje “command not recognized”.
Correo electrónico y mensajería Francesc Pérez Fdez
6. SMTP (Simple Mail Transfer Protocol)
• Para realizar la transferencia de un correo es necesario ejecutar tres pasos:
El cliente envía el comando MAIL, para identificarse y negociar las
extensiones si fuera el caso. De esta forma le indicamos al servidor que va
a empezar una nueva transferencia.
Correo electrónico y mensajería Francesc Pérez Fdez
El cliente envía el comando RCPT, que puede ser repetido varias veces,
indicando el destinatario/s del mensaje. Si se envía un comando RCPT
antes que el COMANDO MAIL, el servidor envía la respuesta 503: bad
sequence command”.
7. SMTP (Simple Mail Transfer Protocol)
• Para realizar la transferencia de un correo es necesario ejecutar tres pasos:
El cliente envía el comando DATA. Cuando el servidor recibe todos los
datos los entrega al MUA del destinatario o lo almacena para que el MUA lo
pueda recoger más tarde.
Correo electrónico y mensajería Francesc Pérez Fdez
• Extensiones SMPT: son actualizaciones SMTP que hacen al protocolo más
robusto que el estándar inicial.
8. SMTP (Simple Mail Transfer Protocol)
• Los comandos VRFY y EXP preguntan al receptor que verifique el nombre de
un usuario o muestre el contenido de un “mailing list” (comandos utilizados
para debugar direcciones).
• El comando RSET indica que la transferencia del mensaje actual sea
abortada.
• El comando HELP hace que el servidor envíe información de ayuda al cliente.
Correo electrónico y mensajería Francesc Pérez Fdez
• El comando NOOP hace que el servidor envíe una respuesta “250 ok”. No
tiene ninguna otra función.