O gráfico Bind9 solicita estatística com o Cacti: named.stats = Permissão negada

1

Eu configurei, algumas vezes atrás, um plug-in do Cacti em um Linux Debian que permite coletar DNS estatísticas, através de consultas SNMP / rndc, para gerar gráficos bonitos .

Estava funcionando bem até algumas semanas atrás ...: - (

Portanto, o problema é que o arquivo named.stats tem suas permissões de arquivo de usuário / grupo específicas como de costume. Mas o usuário do poller do Cacti não tem permissão para ler o arquivo ...

O fluxo de trabalho é:

  • o poller do Cacti chama o script bind-stats.sh
  • esse script faz um snmpget do nome do host
  • o snmpget chama o script runstats.sh
  • finalmente, runstats.sh realiza o seguinte:
    • exclui o antigo named.stats
    • faz um rndc stats que gera um novo arquivo named.stats .
    • lê & analisa o arquivo named.stats com um modelo Perl

saída do console :

mdw05:~# /usr/share/cacti/site/scripts/bind-stats.sh example.serverfault.com snmpCommunity 
cat: /var/cache/bind/named.stats: Permission denied
mdw05:~#
mdw05:~# ls -l /var/cache/bind/named.stats
-rw-r----- 1 bind bind 4.8K Jul 23 10:54 /var/cache/bind/named.stats
mdw05:~#



Portanto, como eu posso configurar o comando Bind rndc para alterar as permissões de arquivo padrão para permitir que o script runstats.sh leia este arquivo ...?
Eu já tentei adicionar o usuário SNMP e / ou Cacti como membro do grupo Bind , mas não funciona > _ <

Obrigado pela sua ajuda.

bind-stats.sh :

#!/bin/sh

# $1 hostname $2 community

/usr/bin/snmpget -v 2c -Ovq -c $2 $1 .1.3.6.1.4.1.18689.0.1.4.1.2.14.100.110.115.99.97.99.104.101.45.115.116.97.116.115.1 | sed 's/"//g'

snmpd.conf :

## cacti polling (http://docs.cacti.net/usertemplate:host:bind9.7)
extend .1.3.6.1.4.1.18689.0.1 dnscache-stats /usr/local/sbin/cacti_bind9.7/runstats.sh

runstats.sh :

#!/bin/sh

rm -f /var/cache/bind/named.stats

rndc stats
cat /var/cache/bind/named.stats | perl /usr/local/sbin/cacti_bind9.7/dnsstats.pl
    
por gudepier 23.07.2013 / 11:01

1 resposta

1

Use o sudo para isso. Adicione isto ao / etc / sudoers

snmp ALL = NOPASSWD: /usr/local/sbin/cacti_bind9.7/runstats.sh

E modifique sua linha de extensão snmpd.conf para:

extend .1.3.6.1.4.1.18689.0.1 dnscache-stats /usr/bin/sujo/usr/local/sbin/cacti_bind9.7/runstats.sh

Atenciosamente,

Rubén.

    
por 01.09.2014 / 10:50