O que é o SMTP e como funciona?
Costuma enviar e receber e-mails? Esta tecnologia tão essencial como corriqueira do nosso quotidiano funciona graças ao SMTP, o protocolo na base de todas as comunicações por correio eletrónico. Neste artigo explicaremos o que é o SMTP, o que significa e como funciona.
Índice
Índice
O que é o SMTP?
O SMTP (“Simple Mail Transfer Protocol”, ou Protocolo de Transferência de Correio Simples) é um protocolo TCP/IP para o envio de correio eletrónico (e-mail) entre computadores e/ou redes informáticas. O STMP cria uma linguagem comum que permite o envio de mensagens independentemente do software e hardware de cada uma das máquinas envolvidas. Assemelha-se ao formato padrão do envio de correio (envelope fechado, morada do destinatário, etc.) que permite a sua distribuição independentemente das moradas de envio e receção, da natureza da caixa de correio, do serviço do carteiro, etc. Não surpreende que uma resposta alternativa à pergunta o que significa SMTP seja o acrónimo “Sending Mail To People” (enviar correio a pessoas).
É importante a questão do envio, e não da receção, pois aqui reside uma diferença fundamental entre o que é o SMTP e o serviço de correio físico e tradicional. O SMTP é um protocolo para envio de correio eletrónico, e não para a respetiva receção. Se quisermos ser mais precisos nesta comparação, o servidor SMTP trata da tarefa de colocar o correio na caixa de correio do destinatário. Mas a ação de abrir a caixa e tirar de lá correio já não compete ao carteiro – tal como não compete ao servidor SMTP nem cabe na natureza deste protocolo.
Como funciona o SMTP?
O funcionamento é muito simples, e pode resumir-se nos seguintes passos:
- Tudo começa no “Mail User Agent” (MUA, ou agente do utilizador de e-mail), o programa ou aplicação utilizado para enviar e receber e-mails (que pode ser um software instalado, como o Microsoft Outlook, ou um programa na cloud como o Gmail). Este programa, o cliente SMTP, liga-se ao servidor SMTP do seu domínio (Agente de Transferência de Mail ou MTA), através do chamado “handshake” ou “aperto de mão”, através do qual as máquinas se identificam.
- A sessão SMTP começa quando a conexão é estabelecida. O cliente SMTP envia toda a informação necessária (endereço de envio e destino, conteúdo da mensagem, anexos, etc.).
- O servidor SMTP verifica se os domínios do emissor e do recetor/destinatário são os mesmos.
- Se sim, o e-mail é enviado imediatamente para o servidor de receção do destinatário.
- Se não, o servidor SMTP pede a um servidor DNS que indique o endereço de IP do servidor de e-mail do recetor. Quando tiver esta informação, o servidor SMTP liga-se ao seu homólogo do recetor, o Mail Delivery Agent (MDA, ou agente de entrega de e-mail).
- Se o servidor SMTP do recetor estiver indisponível, a mensagem é colocada numa fila de espera ou enviada para um servidor de recurso.
- Quando receber a mensagem, o servidor SMTP do recetor verifica o nome de domínio e o nome de utilizador do mesmo. Se estiver correto, envia a mensagem para o servidor de receção de e-mail correspondente.
Aqui fica mais claro que o protocolo SMTP funciona apenas para o envio de correio, e não para a sua receção. A comunicação na parte final, quando a mensagem já se encontra “do lado” do recetor mas ainda tem de fazer o caminho entre o servidor e o programa de correio de quem vai receber o e-mail, é feita com outros protocolos, que abordaremos abaixo com mais detalhe.
Esta explicação ajuda a esclarecer também porque pode ser mais fácil enviar correio dentro da mesma rede, ou dentro de endereços de e-mail com o mesmo nome de domínio (i.e., a mesma terminação). Mais uma vez a comparação com o correio físico é útil. Um carta colocada num marco de correio gerido pela mesma estação de correios da área de entrega (supondo que se envia uma carta dentro da mesma cidade) é entregue muito mais rapidamente, pois não precisa de viajar entre estações e/ou entidades diferentes.
Tipos de SMTP
A literatura especializada distingue diferentes funções e naturezas, mas se nos cingirmos à especificação RFC 5321, existem quatro tipos de SMTP:
- SMTP original: o primeiro a interagir com a internet, enviando o e-mail;
- SMPT de entrega: o sistema que recebe os e-mails e os entrega ao destinatário (mais precisamente, ao servidor que se irá comunicar com o destinatário através de um protocolo diferente, como veremos adiante);
- SMTP Relay, que faz a retransmissão entre servidores MTA sem alterar a mensagem;
- SMTP Gateway, que faz a retransmissão e altera a mensagem, se for necessário. Normalmente trata-se de uma firewall que reescreve o endereço, como se fosse um router que redireciona uma mensagem para um ponto específico de uma rede.
O que são os comandos SMTP?
Os comandos SMTP são instruções em texto que as partes envolvidas no envio de e-mail usam para comunicar do que se trata e o que se deve fazer em seguida. Vejamos os principais exemplos:
HELO: este comando, num trocadilho com a palavra inglesa “hello”, significa literalmente um olá. O cliente de e-mail apresenta-se ao servidor SMTP para que seja estabelecida uma conexão. Este comando tem vindo a ser substituído pelo semelhante EHLO, usado pelo protocolo ESMTP (Extended Simple Message TransferProtocol).
MAIL FROM: o comando inicia a transferência do e-mail e indica o endereço de e-mail do emissor. Nalgumas situações, esta informação pode ficar em branco; por exemplo, quando um sistema automático responde a alguém sobre um erro no envio de uma mensagem, não sendo possível ao emissor responder (por sua vez) a esse e-mail.
RCPT TO: este comando indica o endereço de envio da mensagem. Se existir mais do que um recetor, o comando será usado tantas vezes quantos os recetores envolvidos.
DATA: trata-se de um pedido de autorização ao servidor para enviar o conteúdo da mensagem. Se o cliente de e-mail receber uma autorização positiva (código 254), começará o envio, linha a linha, até colocar um ponto final na última linha para indicar que a transferência de dados terminou.
HELP: é um pedido ao servidor SMTP para que responda indicando quais os comandos que consegue executar, isto é, quais as funções ou tarefas que consegue fazer.
RSET: é um reiniciar (“reset”), que limpa toda a informação (tabelas, “buffers”, etc.) mas não corta a comunicação estabelecida entre máquinas através do comando HELO. Começar uma nova transferência de mensagem pode ser a forma mais fácil de eliminar erros.
QUIT: indica ao servidor SMTP para terminar a sessão, sendo que primeiro o servidor deverá responder com o código 221 para indicar que vai terminar.
O que são os fornecedores de serviços SMTP
Os seus programas de correio eletrónico estão configurados para usar determinados servidores SMTP, mas o utilizador não está obrigado a essa configuração. É possível escolher outro fornecedor de serviço SMTP ou até configurar o seu próprio servidor, para maior segurança e personalização. Algumas empresas tendem a seguir este caminho.
Imagine que o SMTP Gmail está com algum problema e que os e-mails estão a chegar e a sair com dificuldade. Poderá configurar um outro servidor SMTP para resolver o problema, enquanto a Google resolve pelo seu lado. O mesmo é válido para o STMP Outlook, utilizado também por milhões de pessoas.
Portas SMTP
Em informática (mais especificamente, na área de redes), uma porta é um ponto virtual, representado por um número, para o qual são encaminhados dados relativos a um determinado serviço, função ou tarefa. Não se deve confundir com o conceito de porta na área de hardware, que são conexões físicas (por exemplo, uma entrada USB).
Eis as portas SMTP:
- Porta 25 (historicamente usada, hoje em gradual desuso)
- Porta 465 (desenhada para uso com encriptação SSL, está também a cair em desuso)
- Porta 587 (padrão atual para envio de e-mails, com encriptação TLS)
- Porta 2525 (usada por alguns serviços de e-mail caso as restantes estejam bloqueadas)
Quais as diferenças entre o SMTP, o POP3 e o IMAP
Certamente já encontrou referências a estas siglas, especialmente se já pensou em configurar o SMTP no Outlook. A grande diferença é que o IMAP e o POP3 são protocolos para receber correio eletrónico, enquanto o SMTP é para envio. Abordemos com mais detalhe:
Usando IMAP, o cliente de e-mail começa por retirar apenas os dados referentes à informação do emissor, datas e assunto, conservando estes dados na sua cache local, para preservar largura de banda. O resto do conteúdo (a mensagem propriamente dita) só é descarregada quando o recetor clica para abrir o e-mail. Como o IMAP não apaga os e-mails do servidor depois da entrega, o utilizador pode aceder a partir de vários dispositivos. E tem a garantia de que o “status” das mensagens é igual em todos, mesmo que haja “replies” ou alterações.
O protocolo POP descarrega os e-mails pendentes (anexos incluídos) para o servidor de e-mail do seu dispositivo e apaga as cópias. A grande vantagem é que os e-mails podem ser lidos mesmo que não tenha acesso à internet. Porém, não poderá lê-los a partir de outros dispositivos – terá de transferi-los manualmente se quiser fazê-lo.
É de salientar que todos estes três protocolos são do tipo TCP, ou seja, são desenhados para garantir a verificação e a minimização de erros, ao contrário do que acontece nos protocolos UDP em que a velocidade é a prioridade (abordamos este assunto com mais detalhe no nosso artigo TCP vs UDP). Na prática, para que um e-mail seja enviado, por exemplo, a partir do Gmail, será necessária a execução do protocolo num servidor SMTP Gmail para o envio, e posteriormente a execução de um protocolo de receção, como o POP3 ou o IMAP, para que o recetor possa efetivamente receber o e-mail.
Existem ameaças à segurança do SMTP?
O servidor SMTP será sempre um alvo para hackers e cibercriminosos, no sentido em que por ali passam os e-mails (leia-se comunicações, atividades e listas de endereços de envio) das pessoas.
Algumas das principais ameaças incluem:
- Acesso não autorizado ao conteúdo dos e-mails;
- Vazamento e roubo de dados;
- Envio de spam, manobras de phishing e até malware para os contactos identificados;
- Lançamento de ataques DDoS a partir do servidor.
Nem sempre é fácil saber como identificar um scammer, e os ciberataques estão cada vez mais sofisticados e insidiosos. É fundamental respeitar um conjunto de regras básicas para se proteger.
Deixamos em seguida algumas:
- Nunca envie e-mails sem uma proteção TLS ou SSL, pois as probabilidades de o conteúdo da mensagem e até a password do seu e-mail serem intercetadas por estranhos aumentam imenso;
- Utilize passwords complexas, mude-as periodicamente e nunca use a mesma password em serviços diferentes;
- Tenha muita atenção aos endereços de origem dos e-mails que recebe, e desconfie sempre que uma mensagem lhe parecer suspeita. Entre o spoofing e as melhorias na qualidade do texto, os ataques de phishing estão cada vez mais convincentes;
- Use uma VPN no seu dia-a-dia, criando uma camada de encriptação que torna quase impossível a hackers decifrar o conteúdo das mensagens que envia e recebe, bem como os sites que visita, etc.
Deixamos ainda um convite para espreitar o nosso artigo com nada menos que 28 dicas para aumentar a sua segurança, da sua família, da sua empresa e redes informáticas.
A segurança online começa com um clique.
Fique em segurança com a principal VPN do mundo