Tradicionalmente, os Unix mail
e derivados (e muitas outras ferramentas Unix) utilizam a interface /usr/bin/sendmail
, fornecida por quase todos os agentes de transferência de correio (MTAs - postfix, exim, courier, e, claro, sendmail).
, ou seja, o programa mail
não fala nenhum protocolo de rede - alimenta a mensagem para sendmail
via stdin, e permite-lhe tratar da entrega efectiva. (Isto remonta aos dias em que alguns e-mails usavam SMTP, outros UUCP, outros BITNET…)
Assim que uma mensagem é colocada em fila de espera através de sendmail
, o MTA trata da transmissão real da mensagem, seja através de SMTP ou outra coisa qualquer. Dependendo da configuração, pode ligar-se directamente ao MTA de destino, ou retransmitir correio através de outro host (também chamado smarthost).
A ligação directa é mais comum em servidores; a retransmissão via smarthost é mais comum em computadores pessoais em ligações domésticas - a retransmissão através do seu Gmail ou ISP/conta de correio electrónico do trabalho é essencial para evitar os filtros anti-spam “dynamic IP”.
(Alguns MTAs tais como esmtp
ou nullmailer
são construídos especificamente para utilizadores domésticos e de qualquer forma utilizam um relayhost. Estes não suportam a recepção de correio e são muito mais leves em termos de recursos).
mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → recipient MTA → recipient inbox
mailx → [/usr/bin/sendmail] → local MTA queue → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox
Outros programas, principalmente os clientes gráficos de fácil utilização, tais como Thunderbird ou Outlook, always ligam-se directamente a um servidor SMTP de retransmissão/smarthost (novamente, normalmente Gmail ou ISP/servidor SMTP de trabalho), que transmite a mensagem em seu nome.
O suporte SMTP nativo está presente em heirloom-mailx
, mas não no tradicional bsd-mailx
.
app → [SMTP] → Gmail or ISP/work servers → [SMTP] → recipient MTA → recipient inbox
O terceiro método - ligação directa ao servidor do destinatário - é quase nunca* utilizado, e nenhum MUA o suporta. Nos computadores pessoais, a sua utilização faria com que a sua mensagem fosse rejeitada (muito spam é enviado a partir de endereços IP de utilizadores domésticos infectados).
app → [SMTP] → recipient MTA → caught by the spam filter