As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
O Sendmail foi lançado no início dos anos 1980 e vem ganhando continuamente melhorias. Ele é um agente de transferência de mensagens (MTA) flexível e configurável com uma grande comunidade de usuários. O Sendmail foi adquirido pela Proofpoint em 2013, mas a Proofpoint continua oferecendo uma versão de código aberto do Sendmail. Você pode fazer download da versão de código aberto do Sendmail
As instruções nesta seção mostram como configurar o Sendmail para enviar e-mails por meio do Amazon SES. Este procedimento foi testado em um servidor que executa o Ubuntu 18.04.2 LTS.
nota
O Sendmail é uma aplicação de terceiros e não é desenvolvido nem suportado pela Amazon Web Services. Os procedimentos nesta seção são fornecidos apenas para fins informativos e estão sujeitos a alterações sem aviso prévio.
Pré-requisitos
Antes de concluir o procedimento desta seção, você deverá concluir as seguintes etapas:
-
Instalar o pacote do Sendmail no servidor.
nota
Dependendo da distribuição do sistema operacional que você usa, talvez também seja necessário instalar os seguintes pacotes:
sendmail-cf
,m4
ecyrus-sasl-plain
. -
Verificar uma identidade para usar como seu endereço de remetente. Para obter mais informações, consulte Criação da identidade de um endereço de e-mail.
Se sua conta for na sandbox do Amazon SES, você também deve verificar os endereços aos quais envia e-mails. Para obter mais informações, consulte Solicitar acesso à produção (sair da sandbox do Amazon SES).
Se você estiver usando o Amazon SES para enviar e-mails de uma EC2 instância da Amazon, você também deve concluir as seguintes etapas:
-
Talvez seja necessário atribuir um endereço IP elástico à sua EC2 instância da Amazon para que os provedores de e-mail de recebimento aceitem seu e-mail. Para obter mais informações, consulte os endereços IP EC2 elásticos da Amazon no Guia EC2 do usuário da Amazon.
-
O Amazon Elastic Compute Cloud (Amazon EC2) restringe o tráfego de e-mail pela porta 25 por padrão. Para evitar tempos limite ao enviar e-mails pelo endpoint SMTP da Amazon EC2, você pode solicitar que essas restrições sejam removidas. Para obter mais informações, consulte Como faço para remover a restrição na porta 25 da minha EC2 instância ou AWS Lambda função da Amazon
? no Centro de AWS Conhecimento. Como alternativa, você pode modificar o procedimento nesta seção para usar a porta 587 em vez da porta 25.
Configurar o Sendmail
Conclua as etapas nesta seção para configurar o Sendmail para enviar e-mail usando o Amazon SES.
Importante
O procedimento nesta seção pressupõe que você queira usar o Amazon SES no Oeste dos EUA (Oregon). Região da AWS Se você quiser usar uma região diferente, substitua todas as instâncias de email-smtp.us-west-2.amazonaws.com neste procedimento pelo endpoint SMTP da região desejada. Para obter uma lista de endpoints URLs SMTP em Regiões da AWS que o Amazon SES está disponível, consulte Amazon Simple Email Service (Amazon SES) no. Referência geral da AWS
Para configurar o Sendmail
-
Em um editor de arquivo, abra o arquivo
/etc/mail/authinfo
. Se o arquivo não existir, crie-o.Adicione a seguinte linha a/etc/mail/authinfo:
AuthInfo:
email-smtp.us-west-2.amazonaws.com
"U:root" "I:smtpUsername
" "P:smtpPassword
" "M:PLAIN"No exemplo anterior, faça as seguintes alterações:
-
email-smtp.us-west-2.amazonaws.com
Substitua pelo endpoint SMTP do Amazon SES que você deseja usar. -
smtpUsername
Substitua pelo seu nome de usuário SMTP do Amazon SES. -
smtpPassword
Substitua pela sua senha SMTP do Amazon SES.
nota
Suas credenciais de login SMTP são diferentes da ID da chave de acesso e da chave de AWS acesso secreta. Para obter mais informações sobre como obter as credenciais de login SMTP, consulte Obtenção de credenciais SMTP do Amazon SES.
Quando terminar, salve
authinfo
. -
-
Na linha de comando, digite o comando a seguir para gerar o arquivo
/etc/mail/authinfo.db
:sudo sh -c 'makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo'
-
Na linha de comando, digite o comando a seguir para adicionar o suporte à retransmissão para o endpoint SMTP do Amazon SES.
sudo sh -c 'echo "Connect:
email-smtp.us-west-2.amazonaws.com
RELAY" >> /etc/mail/access'No comando anterior,
email-smtp.us-west-2.amazonaws.com
substitua pelo endereço do endpoint SMTP do Amazon SES que você deseja usar. -
Na linha de comando, digite o seguinte comando para regenerar etc/mail/access/.db:
sudo sh -c 'makemap hash /etc/mail/access.db < /etc/mail/access'
-
Na linha de comando, digite o comando a seguir para criar backups dos arquivos
sendmail.cf
esendmail.mc
:sudo sh -c 'cp /etc/mail/sendmail.cf /etc/mail/sendmail_cf.backup && cp /etc/mail/sendmail.mc /etc/mail/sendmail_mc.backup'
-
Adicione as linhas a seguir ao arquivo/etc/mail/sendmail.mc antes de qualquer
MAILER()
definição.define(`SMART_HOST', `
email-smtp.us-west-2.amazonaws.com
')dnl define(`RELAY_MAILER_ARGS', `TCP $h 25')dnl define(`confAUTH_MECHANISMS', `LOGIN PLAIN')dnl FEATURE(`authinfo', `hash -o /etc/mail/authinfo.db')dnl MASQUERADE_AS(`example.com
')dnl FEATURE(masquerade_envelope)dnl FEATURE(masquerade_entire_domain)dnlNo texto anterior, faça o seguinte:
-
email-smtp.us-west-2.amazonaws.com
Substitua pelo endpoint SMTP do Amazon SES que você deseja usar. -
example.com
Substitua pelo domínio que você deseja usar para enviar e-mails.
Ao concluir, salve o arquivo.
nota
A Amazon EC2 restringe as comunicações pela porta 25 por padrão. Se você estiver usando o Sendmail em uma EC2 instância da Amazon, deverá preencher a Solicitação para remover limitações de envio de e-mail
. -
-
Na linha de comando, digite o comando a seguir para tornar sendmail.cf gravável:
sudo chmod 666 /etc/mail/sendmail.cf
-
Na linha de comando, digite o comando a seguir para gerar novamente sendmail.cf:
sudo sh -c 'm4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf'
nota
Se você encontrar erros como "Comando não encontrado" e "Este arquivo ou diretório não existe", verifique se os pacotes
m4
esendmail-cf
estão instalados em seu sistema. -
Na linha de comando, digite o comando a seguir para redefinir as permissões de sendmail.cf como somente leitura:
sudo chmod 644 /etc/mail/sendmail.cf
-
Na linha de comando, digite o comando a seguir para reiniciar o Sendmail:
sudo /etc/init.d/sendmail restart
Dependendo da versão do Linux ou do Sendmail, se o indicado acima não funcionar, tente fazer o seguinte:
sudo su service sendmail restart
-
Conclua as etapas a seguir para enviar um e-mail de teste:
-
Na linha de comando, insira o seguinte comando:
/usr/sbin/sendmail -vf
sender@example.com
recipient@example.com
sender@example.com
Substitua pelo seu endereço de e-mail do remetente.recipient@example.com
Substitua pelo endereço Para. Quando terminar, pressione Enter. -
Insira o conteúdo de mensagem a seguir. Pressione Enter ao final de cada linha.
From:
sender@example.com
To:recipient@example.com
Subject: Amazon SES test email This is a test message sent from Amazon SES using Sendmail.Quando terminar de inserir o conteúdo do e-mail, pressione Ctrl+D para enviá-lo.
-
-
Verifique o cliente de e-mail do destinatário para o e-mail. Se você não encontrar o e-mail, verifique a pasta de spam. Se você ainda não conseguir localizar o e-mail, verifique o log do Sendmail no servidor de e-mail. O log geralmente está localizado em/var/log/mail.log ou/var/log/maillog.