Chances está a ler este post do blog depois de ter pesquisado no Google “como testar o retransmissor SMTP”. Lembra-se dos resultados da sua pesquisa? Eles lidam principalmente com servidores de correio electrónico, ligação SMTP, e usam Telnet para os testar. Sistematizámos todos os aspectos que possa estar a procurar e demos uma resposta detalhada ao seu inquérito. Vamos começar com o básico.
SMTP relay é o processo de encaminhamento de e-mails para o servidor SMTP de destino adequado. Não é um software nem uma aplicação, ao contrário dos agentes de transferência de correio que participam no fluxo de entrega de correio electrónico. O reencaminhamento acontece entre o MSA e o MDA se o remetente e o destinatário vierem de domínios diferentes (tratados por servidores SMTP diferentes). Se o correio electrónico for transferido dentro do mesmo domínio sem qualquer servidor adicional envolvido, não conta como um retransmissor de correio electrónico.
p>alguns de vós estão provavelmente familiarizados com o termo graças ao nosso post no blog sobre o retransmissor SMTP. Para aqueles que não tiveram oportunidade de o verificar, forneceremos uma breve explicação usando os seguintes infográficos:
NB: Se precisar de esfregar conhecimento da diferença entre IMAP vs. POP3 vs. SMTP, consulte o nosso post no blog dedicado a este assunto.
Na prática, o termo SMTP relay refere-se frequentemente ao servidor SMTP relay, também conhecido como um agente de transferência de correio (MTA). Um MTA é um servidor SMTP que permite o reencaminhamento. Normalmente, são criados por serviços SMTP relay como o Sendinblue ou Mailgun para envio de correio electrónico em massa e envio de correio electrónico transaccional. Assim, quando é necessário testar o SMTP relay, é necessário testar o servidor SMTP real que retransmite e-mails. Neste caso, o SMTP relay e o servidor SMTP podem ser considerados como sinónimos, e assim o Google trata-os como termos interrelacionados.
O que é o teste de relay aberto?
P>Além de verificar a ligação SMTP, também precisa de verificar se o seu servidor é um relay aberto. O que é que isto implica? O servidor SMTP deve ter um mecanismo de autenticação que permita a retransmissão de e-mails para um servidor diferente. Como regra, se o servidor solicitar credenciais (nome de utilizador e palavra-passe) para efectuar a retransmissão, NÃO é um servidor de retransmissão aberto. O retransmissor aberto torna o seu servidor acessível a utilizadores não autorizados. Os spammers serão capazes de enviar e-mails não solicitados a partir dele. Esta actividade maliciosa irá fazer cair a sua reputação de endereço IP, o que é crucial para uma boa entregabilidade de correio electrónico. O seu servidor de retransmissão aberto pode estar na lista negra, e muitos servidores SMTP não aceitarão e-mails a partir dele.
Então, como posso fazer o teste de retransmissão aberta? Pode enviar um e-mail para o servidor e para outro domínio utilizando os comandos MAIL FROM e RCPT TO. Se o código de resposta final for 250 e nenhuma autenticação foi solicitada, o seu servidor é um retransmissor aberto.
Testes alternativos e mais fáceis podem ser feitos com as seguintes ferramentas online:
- CheckOR.com
- Teste de retransmissão anónima
- Teste de retransmissão aberta da Ajuda Spam
- e muitos mais
Posso testar retransmissão SMTP apenas com telnet?
Telnet é a forma mais comum de verificar se o servidor de correio permite a retransmissão de um determinado domínio. Escrevemos no blog sobre a sua utilização em How to Test SMTP Server. Na maioria dos casos, a telneting para o seu servidor SMTP será suficiente para diagnosticar problemas básicos de ligação. No entanto, Telnet tem as suas desvantagens específicas:
- sem encriptação – tem de construir manualmente cadeias de caracteres de autenticação usando uma ferramenta MIME
- desconexão frequente do servidor
- sem macros com comandos SMTP incorporados
- limitações relacionadas com ligação SSL e TLS
p> Tendo isso em mente, decidimos guardar Telnet e introduzir outras formas de resolução de problemas de retransmissão SMTP.
/div>
/div>
Testar ligação do servidor de relé SMTP com ferramentas instaláveis
smtp-cli
Este é um cliente de linha de comando SMTP. smtp-cli suporta STARTTLS, SMTP-AUTH, e muitas outras características avançadas. Também pode utilizar esta poderosa ferramenta para testar e depurar servidores SMTP. É uma boa alternativa ao telnet porque o smtp-cli permite verificar as definições de encriptação do servidor habilitado para TLS com uma autenticação de utilizador subsequente. Fazer isto com telnet seria impraticável.
Instalação
P>Pode descarregar a última versão do smtp-cli a partir da página de lançamentos do GitHub. Alternativamente, pode usar um utilitário de download como widget e instalá-lo com um comando apropriado:
$ wget -o smtp-cli https://github.com/mludvig/smtp-cli/releases/{LATEST_RELEASE}$ chmod +x smtp-cli
Desde que algumas características smtp-cli sejam opcionais, verifique os módulos Perl necessários e instale-os. As dependências são especificadas na página GitHub da ferramenta. Por exemplo, os utilizadores do Ubuntu devem instalar os seguintes pacotes:
$ sudo apt install libio-socket-ssl-perl libdigest-hmac-perl libterm-readkey-perl libmime-lite-perl libfile-libmagic-perl libio-socket-inet6-perl
SMTP relay test
Vejamos como funciona o smtp-cli. Primeiro, vamos testar o localhost. Vamos ligar-nos ao servidor e observar o SMTP básico para a frente e para trás.
$ ./smtp-cli --verbose --server localhost 'localhost ESMTP Postfix'> EHLO localhost 'localhost' 'PIPELINING' 'SIZE 20480000' 'ETRN' '8BITMIME'> QUIT 'Bye'
Agora, vamos testar o relé. Vamos tentar enviar um e-mail através do servidor que requer autenticação. Assim será a sessão SMTP:
$ ./smtp-cli --verbose --host smtp.example.com:587 --enable-auth --user test--from [email protected] --to [email protected] --data message.txt 'smtp.example.com ESMTP Postfix'> EHLO localhost 'smtp.example.com' 'PIPELINING' 'SIZE 10240000' 'VRFY' 'ETRN' 'AUTH PLAIN LOGIN DIGEST-MD5 CRAM-MD5' 'AUTH=PLAIN LOGIN DIGEST-MD5 CRAM-MD5' 'XVERP' '8BITMIME'AUTH method (PLAIN LOGIN DIGEST-MD5 CRAM-MD5): using CRAM-MD5> AUTH CRAM-MD5 'PDE0OTQyOTcxOC4yNjAwOTYwQHNlcnZlci5kb21haW4udG9wPg=='> dGVzdCBmOTUyY2RkM2VlODBiMzk1YjYxNDI4NjBlYzg2Y2ExZnJvb3Q= 'Authentication successful'Authentication of test@localhost succeeded> MAIL FROM: <[email protected]> 'Ok'> RCPT TO: <[email protected]> 'Ok'> DATA 'End data with <CR><LF>.<CR><LF>' 'Ok: queued as'> QUIT 'Bye'
SMTP Server Connection Diagnostics Tool
Aqui está outra alternativa telnet que lhe permite fazer facilmente a verificação do retransmissor SMTP. É uma ferramenta de diagnóstico de ligação ao servidor SMTP construída pela SocketLabs. Tem uma autenticação incorporada, suporta ligações abertas e SSL, e é mais seguro do que o telnet. Além disso, não tem de digitar manualmente todos os comandos necessários para testar a retransmissão. A ferramenta tem uma biblioteca de macros, o que facilita o fluxo de testes.
Instalação
Neste caso, não é necessário instalar a ferramenta. Basta descarregar e executar a ferramenta. Este é o aspecto:
SMTP relay test
- Passo 1: Ligar ao servidor
Seleccionar Acções no canto esquerdo da ferramenta e clicar em Ligar. Introduza a informação do seu servidor SMTP: nome do servidor e porta. Mantenha a opção LocalIp como padrão. Clique em Connect.
- li>Step 2: Test relaying
Use as macros de comando incorporadas para enviar um e-mail do seu servidor SMTP. Na verdade, o fluxo é o mesmo que com o telnet. A diferença é que não tem de fazer tudo manualmente.
swaks
Este é o testador de transacções SMTP para todos os fins abreviado de Swiss Army Knife SMTP. swaks é uma ferramenta de linha de comando escrita em Perl para testar configurações SMTP. É uma verdadeira ferramenta de dinossauro – a primeira versão foi lançada em 2003. No entanto, foi actualizada muitas vezes e agora lida com inúmeras características SMTP e extensões como TLS, autenticação, pipelining, e muitas mais. Se a iteração telnet smtp.example.com 25
demorar demasiado tempo, swaks é definitivamente o que se precisa.
Instalação
Executar o seguinte para instalar swaks no Ubuntu:
apt-get install swaks
em macOS
brew install swaks
Teste de retransmissãoSMTP
Digamos que tem um servidor SMTP smtp.example.com
que permite retransmissão para utilizadores autenticados. Pode testar isto da seguinte forma:
swaks --to [email protected] \ [email protected] \ --auth \ --auth-user=john \ --auth-password=hell-no \ --server smtp.example.com
Esta é a aparência da conversa:
smtp.example.com Hi remote.server.name PIPELINING AUTH PLAIN CRAM-MD5> AUTH CRAM-MD5 PGQ4ZcakejQ5ZDcheeseiQHNreC54ZW4taG9zpiesZy5uZXQ+> c3RldsubliminalZmZDMxZmVkNmJjswimM2M4M2VkM2IsmileMDg= Authentication successful for john - Authenticated john; relaying permitted> MAIL FROM:<[email protected]> <[email protected]>, sender OK - how exciting to get mail from you!> RCPT TO:<[email protected]> <[email protected]>, recipient ok> DATA go ahead> Date: Sun, 05 Apr 2019 21:24:34 +0100> To: [email protected]> From: [email protected]> Subject: Test email > X-Mailer: swaks v20181104.0 jetmore.org/john/code/#swaks>> This is a test mailing> . Queued!> QUIT closing connection=== Connection closed with remote host.
Ferramentas baseadas na web para testar o retransmissor SMTP
Testar torna-se muito mais fácil com ferramentas baseadas na web. Para a maioria delas, só precisa de entrar no seu servidor SMTP e clicar no botão para fazer as coisas. Além disso, algumas delas permitem-lhe testar o servidor para o retransmissor aberto! Aqui estão as opções mais úteis.
Mail Server Testing Tool by DNS EXIT
DNS EXIT fornece um conjunto de serviços DNS estáticos/dinâmicos e outras soluções relacionadas com correio electrónico. Com a sua Ferramenta de Teste de Servidor de Correio Electrónico, pode enviar a mensagem telnet ao seu servidor SMTP e tentar entregar a mensagem. Se houver algumas falhas de configuração, a ferramenta avisá-lo-á e dar-lhe-á uma dica de como corrigir o erro.
verificador do servidor SMTP por DNSQueries
Esta ferramenta é útil para verificar o estado de saúde do servidor SMTP. Além disso, avisará se tudo está a funcionar correctamente e se o servidor não é um relé aberto. Introduza o nome do anfitrião do seu servidor SMTP e clique em Run tool. Tentará ligar-se ao servidor e enviar e-mails através dele. Pegámos no servidor SMTP do Gmail e verificámo-lo com o verificador DNSQueries. Eis como os resultados são apresentados:
MX toolbox
SMTP Diagnostics tool by MXToolbox funciona de forma semelhante. Basta introduzir o nome do seu servidor SMTP e clicar em Test Email Server. Aqui está uma amostra do resultado do teste:
Também, mostra a transcrição da sessão abaixo.
Esta é uma ferramenta integrada que testa de uma só vez os registos MX, DNS, lista negra e SMTP. Se quiser realizar um teste ou pesquisa em particular, utilize um comando especial, por exemplo “blacklist: smtp.example.com”.
SMTPer
“Simplicidade é a Sofisticação Suprema” – esta citação de Leonardo Da Vinci brilha no topo da página inicial do SMTPer. É necessário preencher vários campos para utilizar esta ferramenta de teste de retransmissão SMTP:
- hospedeiroSMTP
- Port
- Endereço de e-mail do remetente
- Endereço de e-mail do destinatário
Op>Opcionalmente, pode seleccionar “Use Secured Connection” e “Use authentication” (tendo especificado Login e Password). O SMTPer é uma ferramenta simples, mas pode fazer o trabalho.
O Mailtrap é uma ferramenta de teste de relé SMTP?
Mailtrap pode fazer muitas coisas para teste de correio electrónico:
- enviar emails de teste sem atingir caixas de entrada reais
- detectar se os seus emails são spam
li>teste HTML para suporte por clientes de email básicosli>organizar emails de teste em caixas de entrada especiaisli>executar integração ou carregar testes de email via API li>teste Bcc nos seus emails
mas o teste SMTP relay não é o caso. Por baixo do Mailtrap existe um servidor SMTP falso. Pode utilizá-lo em vez de um servidor real para testar a capacidade de envio de correio electrónico da sua aplicação. Isto irá impedi-lo de enviar spam a clientes reais com emails de teste. Para mais informações sobre como pode beneficiar do Mailtrap, leia o Guia de Primeiros Passos.
se gostou deste artigo, por favor partilhe e espalhe a palavra. Iremos realmente apreciá-lo.