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.
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.