Instalando Postfix
O
Postfix pode ser instalado usando o gerenciador de pacotes nas principais distribuições. Nas distribuições derivadas do Debian, você pode instalá-lo usando o
apt-get:
# apt-get install postfix
Mais três pacotes adicionam funcionalidades importantes:
# apt-get install postfix-ldap
Configure o servidor Postfix para obter a lista de logins e senhas a partir de um servidor LDAP.
# apt-get install postfix-mysql
# apt-get install postfix-pgsql
Permite utilizar um servidor
MySQL ou
Postgres para armazenar a lista de usuários e senhas.
O pacote Postfix no Debian possui um Wizard de configuração, durante a instalação. Ele faz algumas perguntas e se encarrega de gerar uma configuração básica para o funcionamento do servidor.
A 1ª pergunta, é sobre a função do servidor de e-mails que você está configurando. As opções são:
- "Internet Site" - A mais usada, onde você instala um servidor completo que envia e recebe os e-mails diretamente.
- "With smarthost" - Seu servidor recebe as mensagens, mas o envio fica a cargo de outra máquina.
- "Satélite System" - Seu servidor envia através de outra máquina (SMTP) e não recebe mensagens.
- "Local only" - É usada apenas em redes de terminais leves, permite que apenas usuários logados no servidor troquem mensagens entre si.
A 2ª pergunta, diz: "Qual conta de usuário você gostaria de armazenar as mensagens enviadas ao root@seu-servidor?"
A resposta é o nome da conta normal de usuário que utilizando
su ou
sudo, permite ganhar privilégios de root.
A 3ª pergunta, é sobre o domínio do servidor, que será incluído nas mensagens enviadas. Se você está configurando um servidor dedicado (completo), utilize seu domínio registrado. Caso esteja apenas configurando um servidor de testes, pode simplesmente usar o nome da máquina, como: "localhost".
A 4ª pergunta é a mais difícil, pois deve definir os destinos que serão aceitos pelo seu servidor, ou seja, os endereços que colocados no destinatário da mensagem fazem entender que o e-mail é para ele, tanto as mensagens que devem ser salvas e encaminhadas para usuários cadastrados como mensagens que devem ser encaminhadas à outros servidores.
Este campo deve conter o nome da máquina, o domínio registrado (no caso de um servidor real), seguido de "localhost.localdomain" e "localhost" todos separados por vírgula e espaço.
A última pergunta é: "Forçar a opção 'synchronous updates'?"
Isto faz desativar as otimizações no envio das mensagens, fazendo com que os e-mails sejam enviados conforme são recebidos e em ordem. Essa opção aumenta a confiança do servidor, pois reduz a possibilidade de perdas de mensagens ainda não enviadas em caso de travamentos ou quedas de energia.
Mas por outro lado, reduz o desempenho do servidor, por isso não deve ser utilizada em servidores de grande disponibilidade.
Adaptado de:
- Morimoto, Carlos Eduardo - Servidores Linux, guia prático, 1ª Reimpressão, Sul Editores, 2009.
Cadastrando usuários
Acompanhando a documentação do Postfix, parece ser um pouco complicado cadastrar usuários no servidor de e-mails. Devido à questão da segurança, a forma mais simples é criar um novo usuário no sistema usando o comando
adduser, assim:
# adduser fulano
Esta conta "fulano" estará acessível tanto localmente, quanto remotamente, desde que o servidor de e-mails esteja instalado e configurado como "Internet Site".
O perigo neste tipo de cadastro é que o usuário passa a conseguir logar-se na máquina de outras formas, via
SSH, Telnet, e compartilhamentos de rede.
Para um servidor interno como o nosso
relay agent, onde os usuários são conhecidos ou funcionários da mesma empresa, não há perigo, mas para um grande servidor ligado à Internet, com inúmeras contas de e-mails de usuários desconhecidos, não é a forma mais adequada para o cadastro de usuários.
Uma forma mais segura de cadastrar usuários diretamente no servidor, mas sem permitir o seu acesso remoto, é utilizando o comando
adduser da seguinte forma:
# adduser --shell /bin/false --no-create-home fulano
Assim, o usuário "fulano" não terá acesso direto ao servidor localmente e muito menos remotamente. Em distribuições derivadas do Debian, você vai precisar adicionar a linha "/bin/false" no final do arquivo
/etc/shells, para que ele possa ser usado:
# echo "/bin/false" >> /etc/shells
Atualmente, uma boa opção para cadastrar contas no servidor de e-mails, sem precisar criar logins válidos no sistema, seria armazenar as contas em um servidor MySQL, PostgreSQL ou, até mesmo, em um servidor LDAP. Para isso, são necessários os pacotes já vistos anteriormente.