A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Informática Numaboa - Linux

Slackware + Postfix + Domínios Virtuais

Seg

20

Mar

2006


12:34

(5 votos, média 4.60 de 5) 


Image 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" smile 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

Informações adicionais