Pesquisa de site

Como configurar o Postfix Mail Server (SMTP) usando configuração de cliente nulo - Parte 9


Independentemente dos muitos métodos de comunicação online disponíveis hoje, o e-mail continua a ser uma forma prática de entregar mensagens de um extremo ao outro do mundo, ou para uma pessoa sentada no escritório ao lado do nosso.

A imagem a seguir ilustra o processo de transporte de e-mail começando pelo remetente até que a mensagem chegue à caixa de entrada do destinatário:

Para tornar isso possível, várias coisas acontecem nos bastidores. Para que uma mensagem de email seja entregue de um aplicativo cliente (como Thunderbird, Outlook ou serviços de webmail como Gmail ou Yahoo! Mail) para um servidor de email, e daí para o servidor de destino e finalmente para o destinatário pretendido, um serviço SMTP (Simple Mail Transfer Protocol) deve estar instalado em cada servidor.

É por isso que neste artigo explicaremos como configurar um servidor SMTP no RHEL 7 onde os e-mails enviados por usuários locais (mesmo para outros usuários locais) são encaminhados para um servidor de correio central para facilitar o acesso.

Nos requisitos do exame, isso é chamado de configuração de cliente nulo.

Nosso ambiente de teste consistirá em um servidor de e-mail de origem e um servidor de e-mail central ou retransmissor.


Original Mail Server: (hostname: box1.mydomain.com / IP: 192.168.0.18) 
Central Mail Server: (hostname: mail.mydomain.com / IP: 192.168.0.20)

Para resolução de nomes usaremos o conhecido arquivo /etc/hosts em ambas as caixas:


192.168.0.18    box1.mydomain.com       box1
192.168.0.20    mail.mydomain.com       mail

Instalando Considerações sobre Postfix e Firewall/SELinux

Para começar, precisaremos (em ambos os servidores):

1. Instale o Postfix:


yum update && yum install postfix

2. Inicie o serviço e ative-o para execução em reinicializações futuras:


systemctl start postfix
systemctl enable postfix

3. Permita o tráfego de e-mail através do firewall:


firewall-cmd --permanent --add-service=smtp
firewall-cmd --add-service=smtp

4. Configure o Postfix em box1.mydomain.com.

O arquivo de configuração principal do Postfix está localizado em /etc/postfix/main.cf. Este arquivo em si é uma ótima fonte de documentação, pois os comentários incluídos explicam a finalidade das configurações do programa.

Para resumir, vamos exibir apenas as linhas que precisam ser editadas (sim, você precisa deixar meudestino em branco no servidor de origem; caso contrário, os e-mails serão armazenados localmente, em vez de em um servidor de e-mail central, que é o que realmente queremos):


myhostname = box1.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = loopback-only
mydestination =
relayhost = 192.168.0.20

5. Configure o Postfix em mail.meudominio.com.


myhostname = mail.mydomain.com
mydomain = mydomain.com
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
mynetworks = 192.168.0.0/24, 127.0.0.0/8

E defina o booleano SELinux relacionado como true permanentemente, se ainda não tiver sido feito:


setsebool -P allow_postfix_local_write_mail_spool on

O booleano SELinux acima permitirá que o Postfix grave no spool de correio no servidor central.

5. Reinicie o serviço em ambos os servidores para que as alterações tenham efeito:


systemctl restart postfix

Se o Postfix não iniciar corretamente, você poderá usar os seguintes comandos para solucionar o problema.


systemctl –l status postfix
journalctl –xn
postconf –n

Testando os servidores de correio Postfix

Para testar os servidores de e-mail, você pode usar qualquer Mail User Agent (mais comumente conhecido como MUA), como mail ou mutt.

Como mutt é um favorito pessoal, irei usá-lo em box1 para enviar um e-mail ao usuário tecmint usando um arquivo existente (mailbody .txt) como corpo da mensagem:


mutt -s "Part 9-RHCE series" [email  < mailbody.txt

Agora vá para o servidor de e-mail central (mail.meudominio.com), faça login como usuário tecmint e verifique se o e-mail foi recebido:


su – tecmint
mail

Se o email não foi recebido, verifique o spool de email do root para obter um aviso ou notificação de erro. Você também pode querer ter certeza de que o serviço SMTP está sendo executado em ambos os servidores e que a porta 25 está aberta no servidor de e-mail central usando o comando nmap:


nmap -PN 192.168.0.20

Resumo

Configurar um servidor de e-mail e um relay host conforme mostrado neste artigo é uma habilidade essencial que todo administrador de sistema deve ter e representa a base para entender e instalar um sistema mais complexo. cenário como um servidor de e-mail hospedando um domínio ativo para várias (até centenas ou milhares) de contas de e-mail.

(Observe que este tipo de configuração requer um servidor DNS, o que está fora do escopo deste guia), mas você pode usar o seguinte artigo para configurar o Servidor DNS:

  1. Configure o cache apenas do servidor DNS no CentOS/RHEL 07

Por fim, recomendo fortemente que você se familiarize com o arquivo de configuração do Postfix (main.cf) e com a página de manual do programa. Em caso de dúvida, não hesite em nos enviar uma mensagem usando o formulário abaixo ou nosso fórum, Linuxsay.com, onde você obterá ajuda quase imediata de especialistas em Linux de todo o mundo.