Ícone do site Mailtrap

Diferença Entre Protocolos de Email IMAP, POP3 e SMTP

Três partes principais estão envolvidas na transferência de uma mensagem eletrônica: o remetente, o destinatário e o servidor de email. O email vai do remetente para o servidor de email, que então permite que o destinatário receba a mensagem.

Qual é o papel dos protocolos de email aqui? Eles estabelecem conexões entre as partes transferidoras. Portanto, um protocolo é necessário para enviar e outro para receber.

Hoje, vamos revisar e comparar os três protocolos de email mais comumente usados – IMAP vs POP3 vs SMTP – e ajudar você a escolher a opção certa para suas necessidades.

O que é um protocolo de email?

Um protocolo de email é uma combinação de princípios e regras que tornam possível transferir mensagens entre diferentes servidores, máquinas e clientes de email. Ele cria padrões que as mensagens devem seguir para chegar aos destinatários em seu estado original.

Por exemplo, quando você envia um email do cliente Gmail para alguém com endereço do Outlook, você espera que todos os anexos e elementos do corpo estejam presentes quando visualizarem seu email. Isso é verdade, quer eles usem clientes Apple Mail, Microsoft Outlook ou Thunderbird para acessar sua caixa de entrada.

Os protocolos de email também determinam como as mensagens devem ser enviadas e acessadas, qual formato elas devem ter e qual estrutura a conexão deve seguir.

SMTP – um protocolo padrão para enviar emails

O que é SMTP?

O Simple Mail Transfer Protocol (SMTP) estabelece como a mensagem chega do remetente ao servidor de email. Além disso, é usado por um agente de transferência de email (MTA) para entregar emails entre servidores. Esse processo é chamado de retransmissão de email (ou retransmissão SMTP).

SMTP é destinado apenas ao envio de mensagens de email.

Como o SMTP funciona

O fluxo de trabalho do SMTP consiste em comandos enviados pelo cliente SMTP e respostas correspondentes pelo servidor SMTP.

Os comandos SMTP padrão são baseados em texto, como HELO, MAIL FROM e outros. Às vezes, você pode encontrar comandos SMTP estendidos (ESMTP), como EHLO, STARTTLS, etc.

As respostas são representadas por códigos numéricos de conclusão (por exemplo, 220, 250, 354, e assim por diante). Para mais sobre comandos SMTP e códigos de resposta, leia nosso post dedicado no blog.

Qualquer conversa SMTP consiste em três etapas:

Vamos dar uma olhada na interação entre o cliente SMTP e o servidor através de um exemplo simples de entrega de email:

Comando ou respostaO que significa
Cliente: HELO client.rocket.com
ou
EHLO client.rocket.com
Identifica-se e inicia a conversa SMTP. O nome de domínio ou endereço IP geralmente é enviado como um argumento junto com o comando. EHLO é um comando alternativo para iniciar a conversa. Identifica que o cliente usa o protocolo ESMTP.
Servidor:250OK ou completado
Cliente: MAIL FROM:<andy@rocket.com>Informa que uma nova transação de email está começando e especifica o remetente.
Servidor:250OK ou completado
Cliente: RCPT TO:<jane@gmail.com>Especifica o destinatário. (Para vários destinatários, o comando será repetido para o endereço de cada destinatário)
Servidor:250OK ou completado
Cliente: DATAInicia a transferência do conteúdo do email, incluindo corpo de texto, anexos e assim por diante.
Servidor:354Permite que o cliente inicie a transferência de conteúdo.
Cliente: Date: Qua, 24 Julho 2019 16:03:23Data
Cliente: From: andy@rocket.comCabeçalho From
Cliente: Subject: How SMTP worksAssunto
Cliente: To: jane@gmail.comCabeçalho To
Cliente: Linha vazia
Cliente: Espero que não seja aborrecido:)Corpo de texto
Cliente: .Uma vez que o conteúdo da mensagem foi transferido, um único ponto deve ser enviado em uma linha para terminar.
Servidor:250OK ou completado
Cliente: QUITSolicitação para terminar a conversa SMTP
Servidor:221Fecha o canal de transmissão

Portas SMTP

Esta é uma porta padrão para retransmissão de mensagens entre servidores de email. Provedores de hospedagem em nuvem e muitos clientes de email (Gmail, Microsoft Outlook, Mozilla Thunderbird, etc.) bloqueiam a porta 25 para evitar spam. Eles geralmente priorizam conexões seguras como 587 ou 465.

465 não é uma porta compatível com RFC. Foi destinada ao wrapper de criptografia e autenticação SMTPS sobre SMTP. A IANA registrou 465 como uma porta SMTP, mas nunca foi reconhecida como um canal oficial de transmissão ou submissão SMTP.

Mais tarde, a porta 465 tornou-se obsoleta e foi revogada em favor do wrapper STARTTLS sobre SMTP. No entanto, hoje muitos servidores ainda usam SMTPS e mantêm a 465.

Uma porta SMTP padrão 587 é a opção para enviar um email para roteamento. A criptografia TLS garante a submissão segura do email. Quase todos os servidores de email suportam 587.

Não é uma porta SMTP oficial, mas quase qualquer provedor de serviços de email a suporta. 2525 é protegida de maneira semelhante à 587 e é frequentemente usada em seu lugar. Portanto, se o uso da porta SMTP padrão causar algum problema, tente 2525.

Para mais informações sobre isso, leia nosso post no blog sobre portas SMTP.

E para aprofundar o seu conhecimento sobre as diferenças entre SMTP e um protocolo como IMAP, confira este vídeo:

IMAP4 e POP3 – protocolos para receber emails

Uma vez que o email bate à porta do servidor de email, IMAP ou POP3 serão usados para recuperá-lo. Ambos esses servidores são agentes de acesso a mensagens (MAAs).

O que é IMAP?

O Internet Message Access Protocol (IMAP) é um padrão de comunicação para acessar emails. Hoje, sua quarta versão está em uso, daí o nome IMAP4.

IMAP armazena emails em um servidor remoto e os baixa sob demanda quando o destinatário os abre. Portanto, o protocolo IMAP permite o acesso ao email de qualquer dispositivo ou local se autorizado. Isso permite a sincronização de emails, razão pela qual o IMAP é a opção preferida para a maioria dos provedores de serviços de email.

Como o IMAP funciona

Aqui está o fluxo básico da interação cliente/servidor IMAP:

Nos bastidores, uma conexão IMAP primitiva pode parecer assim:

Comando do clienteDescrição
LOGINAbre a conexão IMAP
LISTCREATERENAME
e outros comandos
Comandos que permitem gerenciar a caixa de correio
SELECTDefine a caixa de correio atual e abre uma sessão IMAP
LISTDOWNLOADDELETE
e outros comandos
Comandos que permitem gerenciar mensagens
CLOSEFecha a sessão IMAP. Se você quiser abrir uma nova sessão, pode fazer isso configurando outra caixa de correio atual. Uma vez que a nova sessão é aberta, o servidor IMAP atualiza permanentemente as mensagens de acordo com a sessão anterior.
LOGOUTFecha a conexão IMAP

Aqui você encontrará uma seleção completa de comandos do cliente.

Bolas! Esquecemo-nos das respostas do servidor IMAP. Existem três formas delas:

Elas podem incluir um código de resposta como ALERT ou CAPABILITY. Um código de resposta fornece informações adicionais além da condição de resposta de status.

These responses include Server and Mailbox Status (CAPABILITY, LIST, etc.), Mailbox Size (EXISTS and RECENT), and Message Status (EXPUNGE and FETCH)

Essa resposta confirma que o servidor está pronto para aceitar a continuação do comando do cliente. É representada por um token “+”.

Portas IMAP

O que é POP3?

O Post Office Protocol 3 é uma maneira mais simples de acessar caixas de correio. Usamos sua terceira versão – por isso é chamado de POP3. Os usuários adoram esse protocolo por sua baixa dependência de conexões à Internet.

O protocolo POP3 baixa emails do servidor para o computador local, para que você possa lê-los mesmo offline. O servidor exclui as mensagens assim que são recuperadas. Esta é a configuração padrão e comum, mas há a opção de impor uma política de site em relação à retenção de emails no servidor.

Ao mesmo tempo, mesmo que o cliente POP3 contenha opções de configuração para armazenar emails, o servidor não suportará tal ação.

Como o POP3 funciona

A conexão POP3 consiste em quatro etapas:

Vamos dar uma olhada nos bastidores de uma sessão POP3 também.

Comando ou respostaO que significa
Servidor:O servidor está esperando pela conexão na porta TCP/IP 110.
Cliente: O cliente estabelece uma conexão TCP.
Servidor:+OK POP3 server ready <exemplo.servidor.com>Se tudo estiver OK, a resposta do servidor será consistente. Caso contrário, mostrará -ERR
Cliente: APOP mrose c4c9334bac560ecc979e58001b3e22fbFornece identificação de origem e proteção contra repetição para a sessão. mrose é o parâmetro de nome e c4c9334bac560ecc979e58001b3e22fb é o parâmetro de resumo. Eles identificam uma caixa de correio e uma string de resumo MD5.
Servidor:+OK Se tudo estiver OK, a resposta do servidor será consistente. Caso contrário, mostrará -ERR
Cliente: STATAgora, a sessão entra no estado de TRANSAÇÃO. O comando STAT pergunta quantas mensagens estão atualmente na caixa de correio e seu tamanho em octetos.
Servidor:+OK 1 334Maildrop tem uma mensagem de 334 octetos.
Cliente: DELE 1Exclui a mensagem
Servidor:+OK mensagem 1 excluídaSe tudo estiver OK, a resposta do servidor será consistente. Caso contrário, mostrará -ERR
Cliente: QUITUma vez que a sessão termina, o cliente se desconecta via comando QUIT.
Servidor:+OK dewey POP3 server signing off (maildrop empty)Se tudo estiver OK, a resposta do servidor será consistente. Caso contrário, mostrará -ERR
Cliente: O cliente fecha a conexão TCP.
Servidor:O servidor está esperando pela conexão na porta TCP 110

Usamos apenas dois comandos (DELE e STAT) que são válidos no estado de TRANSAÇÃO. Você pode encontrar mais opções aqui.

Quanto às respostas do POP3, elas contêm um indicador de status (+OK ou -ERR) e uma palavra-chave que pode ser aprimorada com informações adicionais (por exemplo, -ERR no such message, only 2 messages in maildrop).

Portas POP3

IMAP ou POP3 – qual protocolo devo escolher?

A princípio, consideramos fazer uma tabela com uma comparação dos prós e contras do IMAP e POP3. Mas essa ideia se mostrou inviável, pois diferentes usuários teriam demandas diferentes em termos dos padrões de protocolo de email. Então, decidimos configurá-la dessa maneira.

Escolha IMAP4 se:

Escolha POP3 se:

Se você ainda não sabe qual protocolo escolher, confira nosso artigo sobre as diferenças principais entre IMAP e POP3 ou assista a este vídeo:

E quanto ao HTTP?

O HyperText Transfer Protocol (HTTP) é outra opção para acessar emails, mas não é um protocolo de email. Independentemente disso, o HTTP pode ser usado para enviar e receber mensagens de webmail, como Gmail.com. Também é uma boa prática acessar emails em aplicativos móveis através do HTTP.

Este protocolo tem duas portas padrão: 80 para conexões não criptografadas e 443 para conexões seguras.

Como um email chega de um remetente a um destinatário

Agora, você sabe para que serve cada protocolo de email. Vamos mapear uma imagem completa de como uma mensagem eletrônica pode chegar de um remetente (bruce@remetente.com) a um destinatário (jane@destinatario.com).

É suficiente configurar protocolos de email para enviar e receber emails com sucesso?

A resposta curta é não. Embora a configuração adequada dos protocolos de email seja essencial, eles certamente não são suficientes. Você precisa de uma infraestrutura de email segura com ferramentas de entrega integradas para alcançar as caixas de entrada dos destinatários.

Para saber mais sobre o que é uma infraestrutura de email, confira nosso vídeo dedicado:

Junto com uma infraestrutura de email, você também pode precisar de uma caixa de entrada virtual para receber todos os seus emails de teste.

Mailtrap é uma plataforma única que cuida de todas as suas necessidades relacionadas ao email. Teste seus emails usando um servidor SMTP falso fornecido pelo Email Testing, envie seus emails com o servidor SMTP confiável do Email API/SMTP e monitore o desempenho de sua infraestrutura. Tudo isso dentro de uma única Plataforma de Email Delivery do Mailtrap.

O Email Testing é um Email Sandbox que captura todo o seu tráfego SMTP. Você pode usá-lo para verificar a funcionalidade de envio de emails do seu aplicativo e ver se o servidor SMTP está configurado corretamente. Com os recursos de Verificação de HTML e Análise de Spam do Email Testing, você resolverá problemas de entrega antes que seu aplicativo entre em ambiente de produção.

Uma vez que você termine de testar, pode configurar seu aplicativo para usar o servidor SMTP do Email API/SMTP que entrega seus emails nas caixas de entrada em segundos. Alternativamente, integre o Mailtrap com API para mais flexibilidade. Qualquer que seja o método escolhido, você terá acesso às capacidades únicas de monitoramento do Email API/SMTP – análises acionáveis com relatórios detalhados e painéis de visão geral.

Aqui está como o fluxo de entrega de emails se parecerá se você usar o Email API/SMTP ou o Email Testing do Mailtrap:

Para mais informações sobre como integrar e usar o Mailtrap, consulte nosso guia de introdução.

Esperamos que nosso post no blog sobre IMAP vs POP3 vs SMTP tenha ajudado a esclarecer o mundo complicado dos emails!

Sair da versão mobile