configurar o servidor SMTP

na postagem do blog melhores servidores SMTP gratuitos, tocamos nas soluções baseadas em nuvem para o envio de E-mails. Estes são bastante comuns para todos os tamanhos de projetos. Mas e se você não quiser usar os Serviços de retransmissão de E-mail do Gmail SMTP ou suas alternativas? Neste artigo, ensinaremos como configurar um servidor SMTP local e se livrar de quaisquer dependências de envio de E-mail.

você realmente precisa de um servidor SMTP?

usar um servidor SMTP de saída é o método tradicional de envio de E-mails. Uma solução alternativa é ignorar o servidor SMTP e enviar diretamente para o destino. É conhecido como envio direto e você pode usá-lo por meio de programas de software de E-mail específicos. O envio direto não é muito confiável, e aqui está o porquê:

  • não pode ser usado se a porta 25 estiver bloqueada pelo seu ISP.
  • é impróprio para E-mail em massa devido a várias conexões com muitos servidores diferentes.
  • não pode enviar e-mails não personalizados.
  • pode ser bloqueado por filtros de E-mail porque os e-mails não são enviados de um servidor SMTP normal.

vamos colocar direto enviar embora. O que você pode estar interessado é por que você executaria seu próprio servidor SMTP.

Prós e contras de um servidor de SMTP local

Prós Contras
  • não diária ou horária limite no número de e-mails enviados
  • instantâneas de relatórios
  • privacidade e controle de todo o seu mail de saída
  • nenhum IP compartilhado
  • executando um servidor de SMTP local leva tempo e esforço
  • a taxa de rejeição pode aumentar 20-30%
  • Algumas soluções baseadas na nuvem, como Mailgun e SendPulse proporcionar todas as vantagens acima. No entanto, todos esses recursos são pagos e você ainda precisa confiar em um serviço de terceiros. Em vez disso, você pode configurar um servidor SMTP em seu computador usando um software específico.

    requisitos para um servidor SMTP local

    não há requisitos específicos até agora. No entanto, você deve estar preparado para o seguinte:

    • alguns ISPs podem bloquear a porta 25. Você pode resolver isso entrando em contato com seu provedor de ISP e aprendendo sobre as limitações que eles podem impor. Além disso, você precisa solicitar um servidor DNS correto e permissão para resolução de registro MX.
    • para E – mails em massa, você provavelmente deve optar por um domínio e um endereço IP fixo associado a ele-isso aumentará sua resistência a Filtros de spam.

    configuração rápida do servidor SMTP

    agora, vamos fazer o trabalho. Como você vai configurar um servidor SMTP em seu computador, é crucial saber qual sistema operacional é usado. É por isso que revisaremos três maneiras de fazer isso para macOS, Windows e Linux.

    Nota importante: se você enviar e-mails de teste para o endereço de E-mail real, talvez não os encontre na caixa de entrada. Não se esqueça de verificar a pasta spam. ESPs como Gmail, Yahoo e outros suspeitam de novos agentes de transferência de E-mail.

    para macOS

    as versões mais recentes do macOS X vêm pré-instaladas com Postfix-um servidor de E-mail padrão. Então, tudo que você precisa fazer é ajustar a configuração do servidor SMTP da seguinte forma:

    Postfix config file

    • o arquivo de configuração principal do Postfix é o primeiro a trabalhar. Correr:
    sudo vim /etc/postfix/main.cf
    • diga ao Postfix qual nome ele deve usar para se identificar com outros servidores de email. Adicione as seguintes linhas:
    myhostname = john.example.commyorigin = example.com

    Se o seu nome de usuário local é João, o mail irá, parecem ser de [email protected].

    • O host de retransmissão é a máquina que vai aceitar a mails depois de autenticação e retransmiti-las para o servidor SMTP.
    relayhost=mail.example.com:25
    • você precisa habilitar o SASL com um arquivo de configuração adicional, onde a senha é armazenada.
    smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/saslpasswd
    • esta linha significa que o Postfix usará apenas conexões criptografadas em TLS.
    smtp_tls_security_level = encrypt
    • aqui está como main.cf parece na íntegra:
    myhostname = john.example.commyorigin = example.comrelayhost=mail.example.com:25smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/saslpasswdsmtp_tls_security_level = encrypt
    • Salve o arquivo com:
    sudo postmap /etc/postfix/main.cf

    Arquivo com SASL senha

    • Criar sasl_passwd arquivo:
    sudo vim /etc/postfix/sasl_passwd
    • Adicione a seguinte linha:
    mail.example.com:25 [email protected]:
    • Guarde o ficheiro com:
    sudo postmap /etc/postfix/sasl_passwd
    • E reinicie o Postfix:
    sudo postfix reload

    O servidor de SMTP local está pronto. Experimente enviando um e-mail de teste:

    date | mail -s "Test email" [email protected]

    Nota: Este fluxo de configuração é adequado para máquinas não macOS que possuem um daemon Postfix regular.

    Para Linux

    a maioria das distribuições Linux são enviadas com as duas implementações SMTP mais comuns: Sendmail e Postfix. O Sendmail tem um design bastante complexo e é menos seguro; é por isso que escolhemos o Postfix novamente.

    instalação

    se você não tiver o Postfix em sua máquina, instale-o primeiro. Além disso, você precisará Do pacote de correio Mailutils, que inclui programas necessários para que o Postfix funcione:

    sudo apt install mailutils postfix

    na janela Configuração do Postfix, você precisará escolher a configuração do correio do Site da Internet. Finalmente, você precisará especificar o nome do Email do sistema. Deve ser o mesmo que o nome atribuído ao nome de domínio que aponta para o seu servidor. Vamos usar example.com.

    configuração

    agora, vamos configurar o Postfix para processar solicitações para enviar e-mails do localhost. Para isso, você precisa ajustar o arquivo principal de configuração main.cf:

    sudo nano /etc/postfix/main.cf

    Role para baixo até a linha inet_interfaces = all e substitua-o com inet_interfaces = loopback-only

    além disso, você precisará modificar mydestination, que especifica a lista de domínios. Deve olhar como este:

    mydestination = $myhostname, localhost.$example.com, $example.com

    Salve o arquivo e reinicie o Postfix com:

    sudo systemctl restart postfix

    No final, tente enviar um e-mail de teste:

    echo "Test email body" | mail -s "Test email subject line" receipient's_email_address

    Para Windows

    existem várias opções de software para configurar um servidor SMTP no Windows, incluindo MailEnable e Apache James. Mas optamos pelo mais popular, chamado hMailServer.

    instalação

    baixe a versão mais recente aqui e instale-a. No início da instalação, você precisa prestar atenção ao seguinte:

    • na janela Selecionar Componentes, certifique-se de que a instalação completa é escolhida. Os componentes do servidor e administrativos devem ser verificados.
    • na janela Selecionar tipo de servidor de banco de dados, verifique o mecanismo de banco de dados integrado.
    • na janela de segurança do hMailServer, crie uma senha para o usuário padrão.

    uma vez instalado, execute o hMailServer e agora vamos configurá-lo.

    configuração

    • clique em Conectar na janela inicial e digite a senha que você configurou durante a instalação. Clique em Adicionar domínio e insira seu nome de domínio no campo correspondente. A propósito, você pode usar um nome de domínio falso, pois o real não é necessário para enviar e-mails. Mas, neste caso, certifique-se de que o domínio falso não existe realmente. Clique em Salvar e você verá seu domínio criado na guia esquerda.
    • selecione a pasta contas na guia esquerda e clique em Adicionar… para configurar uma. Tudo o que você precisa fazer aqui é inserir um nome no campo Endereço. Isso configurará seu endereço de E-mail. Opcionalmente, você pode especificar uma senha. Clique em Salvar e vá para as configurações na guia esquerda.
    • expanda o segmento configurações e selecione protocolos. Desmarque POP3 e IMAP. Para saber mais sobre esses protocolos, leia nossa postagem no blog IMAP vs. POP3 vs. SMTP. Clique Em Salvar.
    • Agora, selecione Avançado no segmento configurações e digite localhost no campo Domínio Padrão na guia direita. Clique Em Salvar. Para acabar com as configurações Avançadas, selecione proibição automática e desmarque a caixa habilitada. Clique Em Salvar.
    • no final, expanda o segmento utilitários e selecione diagnósticos. Selecione seu domínio para executar testes e clique em Iniciar. Não estamos interessados em todos os testes, basta coletar detalhes do servidor e testar a porta de saída. Estes devem ser marcados em verde.

    é isso. Agora você pode enviar seu e-mail de teste. Isso pode ser feito com o PowerShell-é rápido e fácil. Para saber mais sobre isso, leia nossa postagem no blog envie e-mails do PowerShell. Execute a seguinte linha (não se esqueça de inserir seus dados):

    Send-MailMessage -To "<recipient's email address>" -From "<your email address>" -Subject "Your email subject" -Body "Your email body text" -Credential "<your username>" -SmtpServer "127.0.0.1" -Port 25

    na janela pop-up, você precisará inserir sua senha.

    um servidor SMTP é bom para testes?

    na maioria dos casos, as pessoas configuram servidores SMTP locais para fins de teste. Se você estiver desenvolvendo um aplicativo que enviará e-mails, precisará testar essa função e um servidor SMTP real em execução em sua máquina local pode parecer uma boa opção. Mas é? Por um lado, não é problemático instalar e configurar um servidor SMTP local. No entanto, existe uma solução muito melhor.

    se você usar o Mailtrap para teste, obterá uma ferramenta avançada com base em um servidor SMTP falso. Isso significa que seu aplicativo enviará e-mails, mas não os entregará. Seu e-mail de saída terminará na caixa de entrada de demonstração do Mailtrap. Portanto, você não precisará se preocupar com destinatários de E-mail reais e verificar a pasta de spam sempre que executar testes. Nenhuma instalação é necessária. Tudo que você precisa fazer é atualizar suas configurações SMTP com credenciais Mailtrap. Como alternativa, você pode copiar e colar um trecho de código pronto para uso. Diferentes integrações estão disponíveis para as estruturas e linguagens de programação mais comuns. Para obter mais informações sobre outros benefícios e recursos, leia o Guia Mailtrap Getting Started.

    para encerrar

    executar um servidor de email local às vezes pode ser uma dor. É necessário muito conhecimento e esforço para obter uma boa entregabilidade de E-mail usando seu próprio servidor SMTP. Talvez seja uma boa opção para fins de teste, mas Mailtrap, ou outras ferramentas de teste de E-mail, fará melhor. Então, você realmente precisa de um servidor SMTP local? Você é o único que pode responder a isso. Boa sorte!

    Leave a Reply

    Deixe uma resposta

    O seu endereço de email não será publicado.