Configuração de Email · 3 min read · Dec 25, 2025
Configurando SendMail Para Agir Como Um SmartHost & Para Reescrever Endereço De Remetente
Configurando SendMail Para Agir Como Um SmartHost & Para Reescrever Endereço De Remetente
Este tutorial explica como configurar um servidor sendmail para encaminhar todos os e-mails gerados a partir do localhost para outro servidor SMTP para enviar e-mails a destinatários remotos. Também explica como reescrever o endereço de remetente de [email protected] para [email protected].
Exemplo de Cenário: Você tem um servidor de produção que não está configurado para retransmitir e-mails externamente, mas há um aplicativo rodando nesse servidor que envia seus logs para o endereço de e-mail fornecido sobre seu status e em caso de falhas de serviço. Como o sendmail roda localmente no nome localhost.localdomain, ele tenta encaminhar o e-mail com [email protected] para o servidor smtp remoto, que seria rejeitado devido ao fato de que localhost.localdomain resolve para um IP inválido. Portanto, para superar isso, temos que reescrever o endereço de remetente de [email protected] para [email protected]. Assim, o outro servidor smtp retransmite o e-mail de [email protected] para [email protected] ou qualquer outro endereço que você queira enviar o e-mail de status do serviço.
NOTA: Partes específicas deste tutorial se aplicam apenas a Sistemas Baseados em Redhat, mas, em geral, o procedimento se aplica a todos os servidores sendmail.
IP DO SMARTHOST : 10.1.1.50
IP DO HOST SMTP : 10.1.1.10
Verificar RPMS Instalados:
Primeiro, os rpms do Sendmail devem ser instalados. Por padrão, o Sendmail é instalado com a instalação do sistema.
Verifique os rpms do sendmail instalados:
root@nerdplanet# rpm -q sendmail sendmail-cfEsses dois pacotes devem ser listados como instalados:
sendmail-8.xx
sendmail-cf-8.xx
Se não estiverem instalados, então instale-os.
Instalar os Rpms
root@nerdplanet# yum install sendmail sendmail-cfDeve instalá-los em seu sistema linux.
Uma vez instalado, você deve garantir que o servidor esteja iniciado e inicie automaticamente na reinicialização.
root@nerdplanet# chkconfig sendmail on root@nerdplanet# service sendmail startAgora o servidor está funcionando.
Primeiro adicione o endereço IP do servidor remoto e seu nome de domínio ao /etc/hosts
vi /etc/hosts10.1.1.10 smtp.example.comVocê não precisa fazer o passo acima se seu DNS local puder resolver o nome de domínio para o endereço IP do servidor smtp que está configurado para retransmitir e-mails.
Editar o arquivo de configuração do Sendmail para encaminhar e-mails
vi /etc/mail/sendmail.mcEncaminhando e-mails para smarthost
dnl # define(`SMART_HOST',`smtp.example.net') Encontre a linha que contém a entrada acima e substitua-a pelo endereço do seu servidor smtp.
define(`SMART_HOST',`smtp.example.com')Então salve o arquivo.
Para reescrever o endereço de remetente dos e-mails, crie o arquivo genericstable.
vi /etc/mail/genericstableNo arquivo da tabela Generics, insira as seguintes linhas:
root [email protected]
mohan [email protected]As linhas acima significam que se algum e-mail enviado por root será mascarado e aparecerá como se viesse de [email protected] em vez de [email protected] e se algum e-mail enviado pelo usuário mohan aparecerá como se viesse de [email protected] em vez de [email protected]
Então salve o arquivo.
Habilitando Recursos no arquivo de configuração do sendmail.
vi /etc/mail/sendmail.mcAdicione estas linhas para habilitar recursos:
FEATURE(masquerade_envelope)dnl
FEATURE(`genericstable')dnl
GENERICS_DOMAIN(`localhost.localdomain')dnlEntão execute:
make -C /etc/mailDeve compilar todos os arquivos no diretório /etc/mail e atualizar as alterações.
Depois disso, reinicie o serviço sendmail.
root@nerdplanet# service sendmail restartÉ isso, você configurou o sendmail para agir como um smarthost.
Configurando Seu Servidor SMTP Para aceitar e-mails de Smarthosts:
NOTA: Este procedimento é aplicável apenas se o servidor smtp remoto ao vivo for um servidor sendmail, o que é verdade neste cenário. Para outros servidores SMTP, consulte sua documentação.
Presunções: O servidor SMTP ao vivo já está usando FEATURE (‘access_db’..
Edite o arquivo de acesso no servidor smtp ao vivo para aceitar e-mails do smart host.
vi /etc/mail/accessconnect:10.1.1.50 RELAYcd /etc/mailReconstrua o arquivo de banco de dados de Acesso.
/usr/sbin/makemap hash access < accessReinicie o serviço sendmail.
root@smtp# service sendmail restartÉ isso; o servidor smtp remoto aceitará e-mails do smarthost.
Espero que este tutorial seja útil para alguém. Por favor, deixe seus comentários.
Link Original: Este tutorial também está disponível em http://www.nerdplanet.co.uk.
Saudações!
Mohan.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.