Copyright © 2004-2005 Leonardo Serra Maciel de Campos
Este documento é licenciado sobre a licença de Atribuição-Compartilhamento da Creative Commons. Para ver uma cópia desta licença, visite http://creativecommons.org/licenses/by-sa/2.0/ ou envie uma carta para Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
| Histórico de Revisões | ||
|---|---|---|
| Revisão 0.1 | 2004-09-27 22:20:45 -0300 | Leonardo Serra Maciel de Campos |
| Revisão 0.2 | 2004-09-27 23:06:18 -0300 | Leonardo Serra Maciel de Campos |
| Revisão 0.3 | 2004-09-27 11:46:21 -0300 | Leonardo Serra Maciel de Campos |
| Revisão 0.4 | 2005-01-12 20:41:02 -0300 | Leonardo Serra Maciel de Campos |
Resumo
Este documento visa ensinar como configurar o utilitário rndc para usar assinatura digital durante a conexão com o servidor BIND.
Índice
O rndc é um utilitário que controla as operações do servidor BIND. O rndc comunica com o servidor BIND através de uma conexão TCP, opcionalmente enviando os comandos autenticados com assinatura digital.
BIND (Berkeley Internet Name Domain) é uma implementação do protoloco DNS (Domain Name System).
Será presumido que o seu sistema Debian GNU/Linux e o aptitude estão corretamente configurados.
Todos os comandos deverão ser executados pelo usuário root!
A tabelo abaixo mostra as versões de cada logicial usado.
A tabelo abaixo mostra as principais características do ambiente onde foi feito esta documentação.
Usaremos palavras desta maneira para indicar substituição.
O servidor BIND já deve estar instalado, configurado e sendo executado de maneira correta!
É necessário parar o servidor BIND, para isto execute:
# invoke-rc.d bind9 stop
É necessário parar o servidor BIND pois não é possivel utilizar o utilitario rndc para recarregar as configurações do servidor BIND, pois estaremos configurando o utilitario rndc e o servidor BIND para somente aceitar e realizar acesso através da assinatura digital.
Precisamos criar o arquivo /etc/bind/rndc.conf onde será armazenada a assinatura digital gerada aleatoriamente, para isto execute:
# rndc-confgen -a -c /etc/bind/rndc.conf -k rndc-key -b 256
A opção -k é o nome da assinatura digital que será gerada. O padrão é rndc-key. É altamente recomendado alterar o nome da assinatura digital quando você quiser utilizar o rndc para acessar um servidor BIND em outra máquina.
A opção -b é o tamanho da assinatura digital que será gerada, em bits. Por padrão , o tamanho da assinatura digital é 128 bits, entretando o tamanho pode variar de 1 até 512 bits. É recomendado que se utilize assinaturas digitais maiores que 256 bits se o servidor BIND for usado fora da rede local.
Edite o arquivo /etc/bind/rndc.conf.
O arquivo estará parecido com o conteúdo abaixo:
key "rndc-key" {
algorithm hmac-md5;
secret "v0pp2yXAw7VIDEAy4G2HucjQrauIF7mqoNc4br9/pzc=";
};
O que está no parâmetro secret é a assinatura digital gerada aleatoriamente pelo comando rndc-config, mais abaixo precisaremos colocar ela nas configurações do servidor BIND.
Acrescente ao fim as seguintes linhas:
options {
default-key "rndc-key";
default-server 127.0.0.1;
};
Edite o arquivo /etc/bind/named.conf.options. Acrescente ao seu fim o seguinte:
key "rndc-key" {
algorithm hmac-md5;
secret "v0pp2yXAw7VIDEAy4G2HucjQrauIF7mqoNc4br9/pzc=";
};
controls {
inet * allow { 127.0.0.1; } keys { "rndc-key"; };
};
Não esqueça de colocar no parâmetro secret a assinatura digital gerada aleatoriamente pelo comando rndc-config que foi gravada no arquivo /etc/bind/rndc.conf.
É necessário que apenas o usuário root possa ler e gravar o arquivo de configuração e que apenas os usuários do grupo bind possam ler estes arquivos. Para isto execute:
# chown root:bind /etc/bind/rndc.conf # chmod 640 /etc/bind/rndc.conf
É necessário iniciar o servidor BIND, para isto execute:
# invoke-rc.d bind9 start
Para recarregar os arquivos de configuração e as zonas do servidor BIND execute:
# rndc reload
Para visualizar o estado do servidor BIND execute:
# rndc status
Os seguintes sítios foram usados como base para a criação desta documentação
O Debian é um sistema operacional (SO) livre para seu computador. Um sistema operacional é um conjunto de programas básicos e utilitários que fazem seu computador funcionar. O Debian usa o kernel (núcleo de um sistema operacional), Linux, mas a maior parte das ferramentas do SO vêm do projeto GNU; daí o nome GNU/Linux.
Conjunto de instruções lógicas. Na informática designa um conjunto de instruções lógicas e suas dependências, também conhecido como programa ou sistema de computador.
Esta palavra é pouco usada no Brasil, onde se usa muito a expressão "Software".
Origem: Wikipédia, a enciclopédia livre.