Script Bash para configurar o BIND9

3

Eu tenho um servidor web (rodando o Ubuntu 12.04 server & Nginx) e estou montando vários sites nele.

Sou bastante novo em gerenciar meu próprio servidor da Web e estou me saindo muito bem, exceto quando se trata de configurar o DNS.

Eu gostaria que o servidor funcionasse como o servidor web e o servidor DNS (a menos que alguém possa me convencer do contrário ...)

Eu li algumas guias do BIND9, mas não entendo por que isso tem que ser tão complicado!

Eu gostaria de um script, que eu possa executar, algo como: configure-dns.sh mydomain.com , que criaria as zonas e entradas para 'mydomain' e definiria o servidor atual como o host e o servidor autorativo.

Idealmente, gostaria que o meu fluxo de trabalho para um novo domínio fosse simplesmente:

  • Registre o domínio em um registrador
  • No registrador, defina meu DNS como meu servidor
  • No meu servidor, execute 1 script que configura as entradas de DNS relevantes
  • No meu servidor, execute 1 script que configura as configurações relevantes do servidor da web ( Eu já tenho isso )

Então, Você pode adicionar uma entrada DNS com um script simples?

Obrigado Dean.

    
por Dean Rather 12.07.2012 / 06:05

3 respostas

4

adicione ao /etc/bind/named.conf:

include "/etc/bind/domain-enabled.conf";

dir dir:

# mkdir /etc/bind/domain-enabled/

scripts:

cat <<EOF >>/etc/bind/domain-enabled.conf
zone "$1" {
        type master;
        file "/etc/bind/domain-enabled/$1.db";
};
EOF
cat <<EOF >/etc/bind/domain-enabled/$1.db
\$TTL   604800
@       IN      SOA     ns1.$1. root.localhost. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      ns1.$1.
@       IN      A       $2
ns1     IN      A       $2
EOF
rndc reload

executar:

add-domain examle.com 127.0.0.1
    
por 12.07.2012 / 06:33
3

Sim, automatizei o gerenciamento de DNS com scripts de shell várias vezes, para diferentes infraestruturas em diferentes locais de trabalho.

Quanto à sua outra pseudo-pergunta, "por que tem que ser tão complicado", isso porque o DNS não é uma coisa trivial no caso geral, e o BIND tenta lidar com todos os casos complicados. Isso significa que as coisas simples não são (tão) tão simples quanto poderiam ser, no entanto, é bom saber que não importa o quanto as coisas fiquem peludas, você será capaz de lidar com isso.

    
por 12.07.2012 / 06:09
-1

Confira h2n. É referenciado nos livros do BIND da O'Reilly.

link

    
por 12.07.2012 / 08:04