Março 9, 2022

Como Instalar e configurar o Sendmail sobre o Ubuntu

Como instalar e configurar o Sendmail no Ubuntu para o envio de e-mails usando um servidor de e-mail que encaminha ou relés de entrega do correio.

Sendmail é um agente de transferência de correio opensource (MTA) que é usado para rotear e-mail usando o servidor ou usando comandos shell. Você também pode configurar SMTP usando Sendmail.

neste guia, você aprenderá como instalar e configurar o Sendmail no Ubuntu. Além disso, você irá configurar SMTP e configurá-lo com PHP.

Melhor Hospedagem para o seu Negócio

Plataforma Comentários Preços
Cloudways ★★★★★ $10
Kinsta – Google Cloud ★★★★★ $30

Servidor de Atualização de Pacotes

SSH dentro do seu servidor e a atualização de pacotes para sua versão mais recente.

sudo apt updatesudo apt upgrade

instalar o Sendmail

o Sendmail está disponível no repositório ubuntu, para que você possa instalar diretamente usando o comando apt install.

sudo apt install sendmail

Configure o nome do host

edite o arquivo /etc/hosts e adicione seu nome do host.

sudo nano /etc/hosts

na linha que começa com 127.0.0.1, adicione o hostname ao final como parece abaixo. Isso deve estar em uma única linha.

127.0.0.1 localhost hostname

configurar SMTP

Criar novo diretório dentro /etc/mail para configurações SMTP.

sudo mkdir /etc/mail/authinfo

configurar permissões corretas.

sudo chmod -R 700 /etc/mail/authinfo

crie um novo arquivo para sua autenticação SMTP dentro do diretório recém-criado.

cd /etc/mail/authinfosudo nano smtp-auth

Cole a seguinte linha e substitua o endereço de E-mail pelo seu e-mail de login e senha pela sua senha.

AuthInfo: "U:root" "I:email-address" "P:password"

Hit CRTL + X seguido por Y e ENTER para salvar e sair do arquivo.

crie um mapa de banco de dados hash para a autenticação criada acima.

sudo makemap hash smtp-auth < smtp-auth

configurar SMTP

navegue até o diretório de configuração do sendmail e edite o arquivo sendmail.mc.

cd /etc/mailsudo nano sendmail.mc

adicione as configurações abaixo logo após a linha MAILER _DEFINITIONS.

substitua smtp-host pelo seu nome de host SMTP.

define(`SMART_HOST',`')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnldefine(`ESMTP_MAILER_ARGS', `TCP $h 587')dnldefine(`confAUTH_OPTIONS', `A p')dnlTRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnldefine(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnlFEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl

a configuração deve ser semelhante à imagem abaixo.

 configuração SMTP

Agora salve o arquivo e saia do editor.

reconstruir configuração do Sendmail

uma vez que a configuração é feita, você precisa reconstruir a configuração do Sendmail usando o comando make.

cd /etc/mailmake

uma Vez que a configuração é reconstruído você precisa reiniciar o Sendmail

Reinicie o Sendmail

Reinicie o Sendmail usando o seguinte comando.

sudo /etc/init.d/sendmail restart

Agora você pode enviar e-mails usando SMTP.

configurações adicionais

configuração com PHP

para usar o Sendmail com PHP, você precisa inserir o caminho do sendmail no seu arquivo php.ini.

sudo nano /etc/php/version/fpm-or-apache2/php.ini

na parte inferior do arquivo, adicione o seguinte.

sendmail_path= /usr/sbin/sendmail -t -i

reinicie o Apache ou PHP-FPM para que as alterações entrem em vigor.

sudo service apache2 restartorsudo service php8.0-fpm restart

Sendmail SMTP configuração sem Auth

Incase se você tiver whitelisted seu servidor IP para SMTP e você pode enviar e-mails sem autenticação você pode seguir o método abaixo.

você não precisa criar o arquivo smtp-auth que criamos acima.

você pode editar diretamente o arquivo sendmail.mc e fazer as seguintes alterações.

cd /etc/mailsudo nano sendmail.mc

adicione as configurações abaixo ao último.

substitua smtp-host pelo seu nome de host SMTP.

define(`SMART_HOST',`smtp-host')dnldefine(`RELAY_MAILER', `esmtp')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnl

Salve o arquivo, reconstrua a configuração e reinicie o Sendmail.

cd /etc/mailmakesudo /etc/init.d/sendmail restart

conclusão

Agora você aprendeu a instalar e configurar o sendmail para retransmitir usando SMTP no Ubuntu.

Deixe uma resposta

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