Em mais esta alternativa de SMTP Relay mostrarei como configurar o Elastic Email que permite o envio de até 25 mil emails mensais, sem limite de envios diários, na conta gratuita. Das empresas que selecionei essa é a que oferece a maior quantidade de envios na versão free.
Uma das grandes vantagens de se usar SMTP Relay externo é a garantia da entrega dos emails na caixa de entrada. Em nossos tutoriais anteriores mostramos como adicionar regras de firewall e tentar garantir que hackers não usem nosso servidor com técnicas de spoofing e backscatter, que “sujam” o IP do VPS adicionando-o em blacklists. Mas mesmo assim, digamos que você tenha uma revenda de hospedagem e um dos seus clientes seja spammer, isso também irá prejudicar o seu IP. Spammers buscam hospedagens que não tenham muito controle nas contas porque as grandes empresas limitam o envio.
Escreverei este tutorial de maneira muito parecida com o anterior e optando por SMTP Relay seletivo, podendo ser usado para somente algumas contas de um domínio ou domínios inteiros.
* Este tutorial foi testado em nosso servidor Debian 7 com ISPConfig 3 e Postfix, clique aqui e veja como instalar. Consideraremos que a sua tabela DNS de domínio já esteja configurada e devidamente propagada.
A Crie uma conta: Clique neste link para cadastrar-se: https://elasticemail.com/account#/create-account
» Email: <– [email protected] (o email que irá gerenciar a conta)
» Confirm Email: <– [email protected] (confirme o email)
» Password: <– digite uma senha e confirme no próximo campo
» Account Type: <– Transactional (Marketing é um tipo de conta para emails de campanha, e Transactional são emails de contato, suporte, etc.. *Você poderá alterar isso a qualquer momento no painel)
» Marque a opção “I have read and agree to the Terms of Use” e clique em “Create“. *Será enviado um email de confirmação para habilitar a conta.
B Adicione um domínio: Selecione a opção “Settings” no menu e clique no botão “Adicionar Domínio“. Digite o nome do seu domínio sem o “www” e clique em “Salvar“. Após salvar teremos que verificar o domínio.
C Adicione os registros DNS do domínio: Isso é necessário, se não fizermos este passo a conta não enviará emails. Abra sua tabela DNS para editar os registros, na DigitalOcean o link é: https://cloud.digitalocean.com/domains/seudominio.com.br
* Se tiver dúvidas ao adicionar os registros abaixo consulte a documentação oficial do Elastic Email neste link.
* Aprenda como adicionar registros na tabela DNS seguindo este link.
» SPF: Na entrada SPF altere para incluir o servidor do elasticemail (e substitua o IP pelo do seu servidor), exemplo:
"v=spf1 ip4:104.130.85.225 include:_spf.elasticemail.com ~all" *Um segundo exemplo: Digamos que você já tenha seguido algum tutorial nosso de outro SMTP Relay, pode-se digitar vários "includes" da seguinte maneira (não podemos criar mais do que um registro SPF na tabela, dará erro na verificação do cabeçalho do email): "v=spf1 ip4:104.130.85.225 include:spf.mandrillapp.com include:_spf.elasticemail.com ~all"
» DKIM: Adicione uma entrada DKIM com os seguintes dados (pode usar a mesma chave abaixo que é genérica para todas as contas no Elastic Email):
* Deixe o texto com a chave entre aspas duplas e substitua seudominio.com.br. Note o ponto no final. Tipo: TXT Hostname: api._domainkey.seudominio.com.br. Texto: "k=rsa;t=s;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCbmGbQMzYeMvxwtNQoXN0waGYaciuKx8mtMh5czguT4EZlJXuCt6V+l56mmt3t68FEX5JJ0q4ijG71BGoFRkl87uJi7LrQt1ZZmZCvrEII0YO4mp8sDLXC8g1aUAoi8TJgxq2MJqCaMyj5kAm3Fdy2tzftPCV/lbdiJqmBnWKjtwIDAQAB"
» CNAME: Temos que adicionar um registro CNAME para confirmar ao Elastic Email que gerenciamos o domínio (note o ponto no final):
Tipo: CNAME Host: tracking.seudominio.com.br. Hostname: api.elasticemail.com.
D Verifique o domínio: Após adicionar as entradas na tabela retorne ao painel do Elastic Email. Clique no botão azul “Verificar” ao lado do domínio. Se você fez tudo certo os registros todos irão validar. Clique em “OK“.
A Edite o arquivo /etc/postfix/main.cf e modifique/adicione as seguintes linhas (os números das linhas referem-se ao arquivo original, se você alterou o arquivo por algum motivo encontre-as):
# Linha 23:
smtpd_use_tls = yes
# Modifique a linha 35 para um valor nulo
relayhost =
# Adicione estas linhas ao final (lembre-se de deixar uma linha vazia no final do arquivo para prevenir problemas). Isso ira ativar o SASL para autenticação externa smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd sender_dependent_relayhost_maps = hash:/etc/postfix/relayhost_maps smtp_sasl_security_options = noanonymous
B Em seguida edite o arquivo /etc/postfix/sasl_passwd. *Se o arquivo não existir crie-o com o seguinte comando “> touch /etc/postfix/sasl_passwd“, MAS SOMENTE EXECUTE O COMANDO touch SE O ARQUIVO NÃO EXISTIR pois isso irá excluir todo o conteúdo. Dentro do arquivo adicione a seguinte linha (substituindo o email e senha pela credencial criada no passo 1E acima):
* A senha_API é aquela chave que aparece no campo "API Chave" quando clicamos em "Settings" no menu [smtp.elasticemail.com]:587 [email protected]:senha_API
C Edite o arquivo /etc/postfix/relayhost_maps. *Se o arquivo não existir crie-o com o seguinte comando “> touch /etc/postfix/relayhost_maps“, MAS SOMENTE EXECUTE O COMANDO touch SE O ARQUIVO NÃO EXISTIR pois isso irá excluir todo o conteúdo. Dentro do arquivo adicione a seguinte linha (substituindo seudominio.com pelo nome do seu domínio adicionado no passo 1B):
@seudominio.com [smtp.elasticemail.com]:587
*Como já explicamos em outros tutoriais pode-se adicionar emails ou domínios de forma seletiva neste arquivo. Exemplo: [email protected] fará com que somente emails de newsletter sejam enviados por este serviço, os demais poderiam usar uma outra opção de SMTP Relay ou, se não estiverem relacionados neste arquivo, serão enviados diretamente pelo servidor.
D Salve os arquivos e execute os comandos finais do Postfix para usar as novas configurações:
> postmap /etc/postfix/sasl_passwd
> postmap /etc/postfix/relayhost_maps
> /etc/init.d/postfix restart
Faça testes enviando alguns emails, no cabeçalho deverá aparecer que foi enviado pelo ElasticEmail. Caso o email não seja entregue verifique o arquivo de log /var/log/mail.log e observe nas últimas linhas se houve algum problema.
Duas coisas me chamaram a atenção no serviço oferecido pelo Elastic Email: A grande quantidade (25 mil por mês) sem limitações diárias de envios no plano gratuito; E a possibilidade de poder adicionar vários domínios e limitar a quantidade de envios diários por domínio, facilitando a vida do administrador de uma revenda de hospedagem.