2 servidores respondendo o mesmo dominio de email
Olá pessoal, estou com um probleminha...
tenho 1 dominio de email dominio.com.br
Tinha o MX dele rodando em um servidor master.dominio.com.br
Por desatualizacao de software, de equipamento dentre outros, resolvi migrar meu server, para uma maquina nova... MAS...
o server antigo roda postfix....
o server novo está com qmail+vpopmail implantado...
o que torna a migração de contas onerosa demais pra se ter esse trabalho...
entao eis que surge a "solucao"
ter 2 servidores respondendo pelo mesmo dominio, deixando o antigo como "primario" e o novo com secundário (ele vai responder pelas contas NOVAS de email, as que surgirem daqui por diante...
ai vai um trecho do arquivo de configuração do 'database', apontado pelo named.conf
Código :
@ IN MX 5 master.dominio.com.br.
@ IN MX 10 slave.dominio.com.br.
pelo que andei lendo, ele deveria responder quando o master está inativo OU QUANDO O ENDERECO FOR RECUSADO PELO MASTER....
so que o segundo caso não está acontecendo, no caso de recusa do endereco pelo master, ele simplesmente devolve a mensagem com erro...
O que eu estou esquecendo?
Obrigado, abracos...
2 servidores respondendo o mesmo dominio de email
Cria todas as contas no seu do qmail, deixa em MX só o qmail, e faz um arquivos .qmail redirecionando todos os emails -também- para as caixas do outro servidor antigo, e configura um MX prá ele tipo old.provedor.com.br ou algum host local mesmo só pros dois servidores acharem.
o .qmail deve ter isso:
E pronto. O trabalhão vai ser fazer isso prá todos os e-mails. Mas daí você terá um 'xerox' do seu MTA no MTA antigo sem usar aquela confusão de dois MXzes com prios diferentes: afinal de contas, desse modo o email vai chegar em um -ou- em outro.
Outro jeito talvez seria usar um dos MTAs como 'relay' do outro, daí envolve umas coisas tipo fetchmail, que eu não tenho muita experiência com isso não, mas já tem tópico aberto aqui falando sobre esses relays.
2 servidores respondendo o mesmo dominio de email
Caro avenger....
muito inteligente a sua solucao, diga-se de passagem...
porem, no meu caso em especifico, ela encontra um grave problema...
armazenamento.... sabe como é setor administrativo... ja que investiram um bom dinheiro no server novo, eles se recusam VEEMENTEMENTE a investir mais no server antigo, que já está com 86% da capacidade de armazenamento...
2 servidores respondendo o mesmo dominio de email
Cara vou dar um super chute aqui, mas talvez te dê alguma luz.
Você não tem que fazer nenhuma configuração no postfix (que está como primário) de forma que ele saiba que quando não encontrar o usuário ele deve tentar entregar no outro servidor.
Você tem como me passar a documentaçao que usou para fazer isso, pra mim dar uma olhada, quem sabe saia alguma coisa mais consistente dessa cachola :)
2 servidores respondendo o mesmo dominio de email
Acho que ...
O problema é que daí você teria de adotar um novo host para o novo servidor de e-mail.
Sua idéia é manter quem já estava no velho, no velho. Ou poder lentamente ir puxando o pessoal pro novo servidor, entre essas duas formas, tanto faz. Dessa forma os velhos precisam continuar conseguindo acessar as contas pop3 transparentemente no velho, enquanto o novo toma posse aos poucos.
A solução seria renomear o servidor antigo mesmo prá old.mxdomain.com.br e deixar a nova com o mxdomain.com.br. Embora pareça confuso, então você manteria o host do servidor antigo que os usuários já usam prá checar e-mail (pop3.mxdomain.com.br, por exemplo) e criaria um novo host para o novo servidor. (MX: velho com host diferente e o novo assume o host do velho; POP3: velho continua com o mesmo host e novo assume um host 'novo e provisório').
Você vai precisar de toda a lista de e-mails (só com o nome de usuário) do sistema velho.Pode por num .txt separado cada nome de usuário por linha ou por espaço, e então, no MTA novo, fazer para cada usuário uma conta com redirecionamento. Nada que você não consiga fazer com um 'ls > lista_de_usuarios' ou cat <arquivo> | cut -f1 -d":" > lista_de_usuarios.txt.
Tendo a lista em mãos, suponhamos que você conseguiu uma lista com todos os nomes separados por espaço ou então todos os nomes separados por <CR> (enter).
Com esse arquivo lá no MTA, você vai fazer um script (não vou ter como testar daqui, então talvez você deva fazer alguma depuração nele antes de rodar).
Esse script vai criar um usuário de acordo com o nome no arquivo, usando a opção -e <palavra> do vadddomain -- espera-se que a senha que vá sair para o vpopmail tenha uma combinação impossível de ser adivinhada de qualquer jeito (não dá prá saber que combinação crypt() de letras daria 'essa_senha') então caso o usuário passe a usar essa conta de e-mail, o .qmail seria excluído e a senha trocada para a senha que o usuário realmente quiser.
Após o script gerar o usuário, ele iria criar automagicamente um arquivo .qmail dentro do diretório do usuário, contendo: [email protected]; dessa forma a conta estaria ali, sem senha possível, só fazendo redirecionamento dos e-mails dele para sua caixa antiga.
Presumi que você já tenha criado o domínio antes!..
Código :
#!/bin/bash
listagem="/root/lista_de_usuarios.txt"
vpopdir="/home/vpopmail/bin/"
dominio="mxdomain.com.br"
dominio_velho="old.mxdomain.com.br"
for usuario in "$(cat "${listagem}") ; do
echo -n "Configurando '${usuario}': "
${vpopdir}/bin/vadduser "${usuario}"@"${dominio}" -e "essa_senha"
#agora o script que acabei de fazer em outro post, embutido aqui! :)
matches="$(cat ${vpopdir}/domains/${dominio}/vpasswd | grep "${usuario}")"
userdir=
# Isso é importante porque o usuário pode cair em 'variantes' de diretórios:
for ((counter=1;$counter "<=" $(echo "$matches" | wc -l);counter=$(($counter+1)))); do
match="$(echo "${matches}" | head -n $counter | tail -n 1)"
if [ "$(echo "$match" | cut -f1 -d":")" == "${usuario}" ]; then
userdir="$(echo "${match}" | cut -f6 -d":")"
# Cuidado para esse break não fechar o 1.o 'for' também!..
break
fi
done
echo "${usuario}@${dominio_velho}" > $userdir/.qmail
echo -n ", "
done
echo "pronto!."
Daí todos os usuários antigos estarão tendo seus emails enviados para o velho servidor. Lembre-se de configurar o servidor velho para corretemante receber os e-mails @old.mxdomain.com.br
Então para cada usuário do novo servidor de e-mail você colocaria o servidor no cliente deles como 'novopop.mxdomain.com.br' ou algo assim. Quando TODOS, um dia, no dia que você desligar o velho servidor, estiverem no qmail, o que pôde ter sido feito com toda a paciência do mundo, você faz um cname para novopop apontar para 'pop', o old.mxdomain.com.br pode morrer, e o pop.mxdomain.com.br irá apontar pro IP, finalmente, do novo servidor.
Aí acho que resolve sem tanto transtorno, né? Se você quiser ficar com seu servidor antigo ligado pro resto da vida também não teria problema além dele enferrujar ou queimar o HD ou barata fazer ninho. :)