Informática Numaboa - Linux
Slackware + Postfix + Domínios Virtuais
Seg 20 Mar 2006 12:34 |
- Detalhes
- Categoria: Como fazer instalações
- Atualização: Domingo, 12 Abril 2009 16:25
- Autor: vovó Vicki
- Acessos: 14839
Os tutoriais sobre o Postfix anteriores a este consideram apenas um domínio canônico e contas Unix. Acontece que a maioria dos servidores web hospeda mais de um domínio e, para cada um deles, costumam existir dezenas, centenas e até milhares de usuários. Para criar endereços de email para os domínios hospedados e seus usuários existem algumas soluções. Neste tutorial veremos como implementá-las.
Domínios e Classes de Endereços
Antes de botar a mão na massa, alguns conceitos precisam ficar bem claros. Sei que é teoria pura, mas não tem como prosseguir sem ela. A primeira coisa é fazer a distinção entre domínio canônico e domínio hospedado.
Domínio canônico é o primitivo, ou seja, está diretamente associado ao hostname e ao endereço IP da máquina onde o Postfix está instalado. Também podemos considerá-lo como domínio principal ou domínio "chefe da casa". Mantendo o exemplo dos tutoriais anteriores, o domínio canônico será mail.numaboa.com.br com o endereço IP 100.200.300.402, de acordo com o que foi definido no Bind (veja "Arquivos de registros II" no tutorial "Bind na jaula"):
; ; numaboa.com.br.domain ; ... mail A 100.200.300.402 MX 5 mail ...
Domínios hospedados são todos os domínios que convivem com o domínio canônico. Não estão associados ao hostname e, como não são proprietários da casa, podem ser considerados como convidados ou "fila bóia" Digamos que o chefe numaboa.com.br tenha colocado à disposição de numaboa.org seu endereço IP - eles têm o nome numaboa em comum, mas são de famílias diferentes: o chefe tem sobrenome .com.br e o fila bóia tem o sobrenome .org.
Os endereços eletrônicos dos habitantes destes domínios são de classes diferentes. A família do chefe, geralmente, tem endereços da classe domínio local. Já os convidados costumam ter endereços da classe domínio de alias virtual e/ou da classe domínio de mailbox virtual.
A classe domínio local é de contas do tipo Unix cujo destino final é o Postfix. O nome do domínio (e seus aliases) é fornecido pelo parâmetro mydestination, seus endereços são dados pelo parâmetro local_recipient_maps e o transporte é especificado pelo parâmetro local_transport, todos no arquivo de configuração /etc/postfix/main.cf.
A classe domínio virtual com alias atende domínios hospedados onde cada endereço tem um alias local Unix ou um endereço remoto. Os domínios virtuais são listados no parâmetro virtual_alias_domains, todos os endereços precisam ser um alias (apelido) de algum outro endereço (local ou remoto) e não existe um parâmetro para o tipo de transporte.
A classe domínio virtual com caixa postal é o destino final para domínios hospedados onde cada endereço possui uma caixa de correio própria e os destinatários não precisam ter uma conta Unix. Os nomes dos domínios são listados no parâmetro virtual_mailbox_domains, os endereços são fornecidos pelo parâmetro virtual_mailbox_maps e o transporte é especificado através do parâmetro virtual_transport.
Soluções possíveis
De acordo com o tipo de domínio e as classes de endereços, podemos criar vários tipos de solução. As mais comuns estão listadas a seguir:
- Domínio canônico com contas Unix
- Domínios compartilhados com contas Unix
- Domínios separados com contas Unix
- Domínios separados com contas não Unix
Cada uma das soluções será vista em detalhes a seguir.
Domínio canônico + contas Unix
Se você seguiu os tutoriais anteriores a este, a solução de domínio canônico com contas Unix é a configuração do Postfix citada nos tutoriais Slackware + Postfix (formato mailbox) e Slackware + Postfix + Maildir (formato Maildir). Nesta solução, apenas os usuários do sistema podem enviar e receber emails. Já pensou um servidor de email deste tipo com milhares de usuários, onde o administrador do sistema precisa cadastrar cada um deles? Seria de endoidar :nuts:
Só para refrescar a memória, os atuais parâmetros desta configuração são (/etc/postfix/main.cf):
myhostname = mail.numaboa.com.br mydomain = numaboa.com.br mydestination = $myhostname, $mydomain, localhost.$mydomain, ns1.$mydomain, ns2.$mydomain, www.$mydomain, webmail.$mydomain, ftp.$mydomain local_recipient_maps = proxy:unix:passwd.byname $alias_maps local_transport = local:$myhostname home_mailbox = Maildir/ mail_spool_directory = /home/postfix
- Anterior
- Próximo >>