Erro ao usar o dnssec-signzone no chroot'd bind 9.8 quando um arquivo de zona inclui outros arquivos

3

Usando a ligação 9.8.2 no RHEL 6.5, executando chroot'd.

Eu tenho um arquivo de zona que inclui outros arquivos (é uma zona com um grande número de servidores em datacenters diferentes e há um arquivo incluído por datacenter).

Os arquivos de zona e os arquivos incluídos estão em

/var/named/chroot/var/named/zones/master/example.com
/var/named/chroot/var/named/zones/master/lax01

Os arquivos include são referenciados no arquivo de zona relativo ao diretório chroot:

$INCLUDE zones/master/lax01

Ao tentar usar o dnssec-signzone para assinar a zona, há um erro, pois parece não conseguir carregar o arquivo incluído.

# cd /var/named/chroot/var/named/zones/master
# dnssec-signzone -A -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) \
   -N INCREMENT -o example.com -t example.com
dnssec-signzone: error: dns_master_load: example.com:287: zones/master/lax01: file not found
dnssec-signzone: fatal: failed loading zone from 'example.com': file not found

Existe alguma maneira melhor de referenciar o caminho para a diretiva INCLUDE? Eu não vejo uma maneira de instruir o dnssec-signzone para levar em conta a diretiva chroot. Preciso fazer isso de um diretório diferente e referenciar os caminhos de maneira diferente?

    
por T. Johnson 09.03.2016 / 00:10

1 resposta

0

Eu não acho que o seu chroot tenha algo a ver com isso. Mesmo sem um chroot, eu ainda esperaria que o comando falhasse. dnssec-signzone não está lendo de named.conf e não tem conhecimento do diretório de trabalho especificado por meio da opção directory .

Dado que este é o caso, todos os arquivos incluídos precisarão ser relativos ao seu diretório de trabalho atual. O comando deve funcionar como esperado se você o executar da seguinte forma:

# cd /var/named/chroot/var/named
# dnssec-signzone -A -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) \
   -N INCREMENT -o example.com -t zones/master/example.com

Observe que o diretório para o qual mudamos é efetivamente o diretório de trabalho do seu servidor BIND em tempo de execução.

    
por 09.03.2016 / 00:36