Bind9 IP update

0

Eu tenho 2 servidores DNS (BIND9) (primário, secundário) e 1 domínio. Eu tenho um servidor web com IP dinâmico. Então, se meu IP mudou, não consigo acessar meu site por domínio, porque nos servidores DNS o berço de IP da zona de domínio mudou.

A minha pergunta é: Como posso atualizar minha zona do meu servidor com meu endereço IP público a cada x tempo? Alguém pode me dar um script de atualização sobre o Linux (Debian 9)?

Obrigado

    
por user760678 12.08.2017 / 11:17

1 resposta

0

Você pode usar o "DNS UPDATE" do RFC 2136, seja fazendo o script da ferramenta nsupdate ou usando um cliente de terceiros compatível:

Chave secreta compartilhada (TSIG)

  1. Gere uma chave secreta para autenticar as atualizações:

    $ tsig-keygen -r /dev/urandom | tee tsig-key.private
    key "tsig-key" {
        algorithm hmac-sha256;
        secret "7P6HbRZRJCmtauo/lV0jwN9wkMgBTUikhf9JuaTvYT4=";
    };
    

    Essa chave é conhecida pelo servidor e pelo cliente e por mais ninguém.

  2. Copie o texto impresso para o seu named.conf . (Você pode ter várias chaves para diferentes hosts, cada um com um nome exclusivo no campo key "…" ).

  3. Ativar atualizações dinâmicas na configuração da zona:

    zone … {
        …
        update-policy {
            /* grant <key_name> <policy> <record_types> */
            grant "tsig-key" name myserver.example.com ANY;
        };
    };
    

    Várias políticas diferentes podem ser usadas; por exemplo. zonesub permite atualizar a zona inteira e subdomain dyn.example.com tem o significado óbvio.

  4. Execute atualizações:

    $ nsupdate -k tsig-key.private
    > zone example.com
    > del myserver.example.com
    > add myserver.example.com 3600 A 100.64.1.1
    > send
    

Existem vários clientes com capacidade para atualizações automáticas.

Chave pública / privada (SIG (0))

  1. Gere um par de chaves:

    $ dnssec-keygen -r /dev/urandom -T KEY -n USER myclient.example.com
    $ ls K*
    Kmyclient.example.com.+005+07399.key
    Kmyclient.example.com.+005+07399.private
    
  2. O arquivo *.key contém a chave pública - adicione-o à sua zona DNS.

    O arquivo *.private contém a chave privada - copie-o para o computador cliente. (Na verdade, copie ambos arquivos para o computador cliente.)

  3. Configure update-policy { } exatamente da mesma maneira que com o TSIG.

  4. Realize as atualizações da mesma forma usando nsupdate -k <filename>.private .

(Nota: Embora os nomes das chaves TSIG sejam arbitrários, as chaves SIG (0) são armazenadas no DNS e, portanto, sempre nomeadas como nomes de host / subdomínios. O nome da chave não precisa corresponder ao hostname ' está atualizando, no entanto.)

Kerberos (GSS-TSIG)

Um pouco fora do escopo, mas o BIND9 também suporta isso (principalmente para uso com o Active Directory).

    
por 12.08.2017 / 15:34