Manipulando E-Mail Via Telnet
Introdução
Este documento explica como usar o comando telnet
para acessar e
"conversar" com diversos protocolos relacionados ao envio e recebimento
de e-mail (SMTP, POP3, IMAP4). Objetivo principal aqui é servir de ferramenta
de teste. O protocolo SMTP é usado para o envio de e-mails e POP3/IMAP4
são protocolos de recebimento.
SMTP
O protocolo SMTP (Simple Mail Transfer Protocol) é descrito na RFC 821
.
Abrir Conexão
Para abrir uma conexão, use o comando telnet nome-do-host smtp
(SMTP é a porta 25).
$ telnet localhost smtp
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 dharma.haxent ESMTP Sendmail 8.12.10/8.12.10; Sat, 17 Jan 2004 14:24:45 -0200
Ok, o servidor que estou conectado roda o Sendmail. Em um outro...
$ telnet nash smtp
Trying 192.168.200.101...
Connected to nash.
Escape character is '^]'.
220 nash.haxent ESMTP Postfix (2.0.9)
este roda Postfix.
Identificando-se
Use o comando HELO seu-host
para dizer ao servidor de onde estás conectado. Bom, isso é meio furado, qualquer lixo que se botar ai vai funcionar.
HELO localhost
250 dharma.haxent Hello localhost.localdomain [127.0.0.1], pleased to meet you
Compor Mensagem
Vejamos como compor uma mensagem para o rruddaa@yahoo.com
. Eu sou o ruda@haxent
, vou deixar um Subject
mas é opcional. O texto deve ser passado em ASCII e use o ponto .
sozinho em uma linha para indicar o fim da mensagem.
MAIL FROM: ruda@localhost
250 2.1.0 ruda@localhost... Sender ok
RCPT TO: rruuddaa@yahoo.com
250 2.1.5 rruuddaa@yahoo.com... Recipient ok
DATA
354 Enter mail, end with "." on a line by itself
Subject: Testando 1,2,3
Olah, como vai?
.
250 2.0.0 i0HHjEHS009506 Message accepted for delivery
Desconectar-se
Simplesmente digite QUIT
.
QUIT
221 2.0.0 dharma.haxent closing connection
Connection closed by foreign host.
POP3
O protocolo POP3 (Post Office Protocol Version 3) é descrito na RFC 1939.
Abrir Conexão
Para abrir uma nova conexão, use o comando telnet nome-do-host pop3
(POP3 é a porta 110).
$ telnet nash pop3
Trying 192.168.200.101...
Connected to nash.
Escape character is '^]'.
+OK nash.haxent Cyrus POP3 v2.2.2-BETA-Invoca-RPM-2.2.2-2 server ready <1925083136.1075043121@nash.haxent>
Uma resposta positiva do servidor é indicada por +OK
e uma resposta negativa é indicada por -ERR
.
Identificando-se
Use o comando USER nome
e em seguida PASS senha
.
USER ruda
+OK Name is a valid mailbox
PASS hackme
+OK Mailbox locked and ready
Descontectar-se
Simplesmente digite QUIT
.
QUIT
+OK
Connection closed by foreign host.