Muitos erros cometidos na definição de domínios virtuais são relacionados ao DNS. Aqui vão alguns testes que você pode fazer para verificar se sua configuração está correta.
Um aviso: usar clientes POP (programa de email) não adianta para testar esse tipo de configuração. Esses programas não são muito informativos para esse tipo de tarefa. Ou funcionam ou não.
Para cada domínio virtual, você deve fazer algo no DNS. Usando-se o domínio va.foo.com.br como exemplo, aqui vão os passos:
O comando
nslookup -q=mx va.foo.com.br
deverá mostrar algo útil. Pelo menos o nome do servidor de email deve ser obtido com seus números IP. Ou será email.va.foo.com.br, ou o nome oficial do servidor. O nome obtido não precisa fazer parte do domínio va.foo.com.br, apenas deve apontar para o servidor físico apropriado.
O email.va.foo.com.br deve ser definido no DNS. O comando
nslookup email.va.foo.com.br
deve produzir um número IP. Além disso, o comando
nslookup o-número-IP-obtido
deve mostrar email.va.foo.com.br. Se você não obter isso como resposta, então o servidor POP virtual não funcionará, não mesmo e ponto final. Você precisa ter o mapeamento reverso correto desse número IP. O Configurador Linux faz isso automagicamente se o mapeamento especial do reverso do domínio estiver definido no mesmo DNS do domínio virtual.
Então, se você teve a saída correta desses dois comandos, você já fez a parte pior.
Depois você faz o seguinte comando:
telnet email.va.foo.com.br
que deve se conectar ao servidor físico. Isso prova que o apelido de IP está instalado corretamente.
Execute o seguinte comando e veja se o vpop3d está instalado apropriadamente. Em caso afirmativo, nada mais pode dar errado.
telnet email.va.foo.com.br pop-3
Você deve obter
+OK Virtual va.foo.com.br POP3 Server (Version 1.004) ready.
O "va.foo.com.br" é o ponto-chave aqui. Se você não o obteve como resposta, então o domínio virtual, ou não está definido, ou o vpop3d não está instalado no /etc/inetd.conf.
O script
/usr/lib/linuxconf/lib/checkvdomain
pode ser usado para se fazer uma checagem da instalação do vpop3d
para um domínio virtual. Rode-o sem argumentos para aprender mais.
O script
/usr/lib/linuxconf/lib/testalldomain
lê o arquivo
/etc/named.boot
e extrai todos os
domínios nele definidos. Então ele roda o script checkvdomain
(assumindo que há uma máquina virtual de email para cada domínio)
em todos os domínios. Ele diz então se o domínio está configurado
apropriadamente ou não. É muito útil para um administrador que
gerencia muitos domínios virtuais.