Cursos / Redes de Computadores / Redes de Computadores II / Aula

arrow_back Aula 11 - Correio Eletrônico – Parte I

Enviando uma Mensagem

Usando o telnet para enviar uma mensagem

O envio de uma mensagem de e-mail implica na troca de diversos pacotes entre o cliente e o servidor.

A Figura 3 mostra a troca de informações que acontece para o envio de um único e-mail, ou seja, ela descreve o funcionamento do protocolo SMTP. As mensagens enviadas pelo cliente são mostradas em negrito, enquanto as mensagens de resposta do servidor são mostradas em texto normal.

Nesse exemplo, o usuário joao@gmail.com irá conectar no servidor de e-mail da UFRN (que se chama tapioca.ufrn.br) para enviar uma mensagem para o usuário maria@ufrn.br.

aluno@maquina:~$ telnet tapioca.ufrn.br 25
220 tapioca.ufrn.br ESMTP
EHLO gmail.com
250-tapioca.ufrn.br
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from: joao@gmail.com
250 2.1.0 Ok
rcpt to: maria@ufrn.br
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
subject: teste de email
from: joao@gmail.com
to: maria@ufrn.br

Isso é apenas um teste
de email utilizando o telnet.
.
250 2.0.0 Ok: queued as BD1AB192B21
quit

Figura 3 - Enviando um e-mail através do telnet usando linhas de comandos.

Vamos entender agora o que essas linhas significam.

telnet tapioca.ufrn.br 25 – Quando o usuário digita este texto é aberta uma conexão TCP na porta 25 da máquina tapioca.ufrn.br. Como quem está escudando nessa porta é o servidor de e-mail, ele envia a mensagem “220 tapioca.ufrn.br ESMTP” para o cliente, indicando que ele está pronto para receber os comandos e que suporta ESMTP (que é uma extensão do SMTP).

EHLO gmail.com – Quando o usuário digita esse texto, uma mensagem é enviada ao servidor. O comando EHLO solicita que o servidor informe algumas de suas características. As linhas seguintes, que começam com “250”, são nomes das características suportadas que o servidor informou. 250-SIZE 10240000, por exemplo, indica o tamanho máximo de cada mensagem, enquanto STARTTLS significa que o servidor suporta criptografia. O texto colocado ao lado da palavra EHLO normalmente é o nome do seu domínio (de quem está enviando a mensagem; no nosso exemplo, gmail.com).

MAIL FROM: joao@gmail.com – Ao digitar esse texto, o usuário está informando ao servidor quem é o remetente da mensagem. O servidor pode fazer alguma validação para ver se esse usuário pode enviar mensagens. A mensagem “250 2.1.0 Ok”, enviada pelo servidor, indica que não existe nenhuma restrição para esse usuário, de modo que ele pode enviar o e-mail.

RCPT TO: maria@ufrn.br – Ao digitar esse texto, o usuário está informando ao servidor para quem a mensagem é destinada. O servidor pode fazer alguma validação para ver se o usuário pode enviar mensagens para esse destinatário, ou mais genericamente, para esse domínio. A mensagem “250 2.1.5 Ok” enviada pelo servidor, indica que ele pode.

DATA – Ao digitar esse texto, o usuário está informando ao servidor que vai começar a enviar o texto da mensagem. O servidor responde com “354 End data with <CR><LF>.<CR><LF>”, dizendo ao cliente que para sinalizar o final do texto da mensagem ele deve digitar apenas um ponto sozinho em uma linha. O usuário então digitou as linhas “Isso é apenas um teste” e “de email utilizando o telnet.”. Depois digitou um ponto sozinho na linha e digitou <ENTER>. Isso sinaliza que o texto da mensagem está completo. O Servidor então responde com a mensagem “250 2.0.0 Ok: queued as BD1AB192B21”, que informa que a mensagem foi enfileirada para ser entregue.

Quit – Quando o usuário digita este comando, a conexão com o servidor é encerrada, conforme dito nas duas últimas linhas da Figura 3.

Veja aqui a explicação em vídeo sobre a utilização do Telnet para envio de mensagens.

Versão 5.3 - Todos os Direitos reservados