Nagios no RHEL 6 (pacote EPEL) parou de funcionar após a atualização

1

O pacote EPEL para Nagios no RedHat Enterprise Linux 6 foi atualizado há algumas semanas da versão 3.4 para a versão 4.3. A atualização foi feita por um simples comando yum update , e nada indicou uma alteração importante na versão.

Embora após a atualização o Nagios pareça estar funcionando bem (todos os serviços estão devidamente visíveis na interface da Web), pouco está realmente funcionando: as verificações de serviço não são realizadas e os e-mails também não são enviados. Dezenas de mensagens de erro são visíveis em /var/log/messages :

Jan 26 15:58:55 srv1 nagios: Unable to send check for host 'srv3' to worker (ret=-2)
Jan 26 15:58:58 srv1 nagios: Unable to run check for service 'Total Processes' on host 'srv4'
Jan 26 15:59:05 srv1 nagios: Unable to run check for service 'Lab Home Partition' on host 'srv1'

Além disso, tentar reiniciar o nagios acaba em um erro que não estava presente antes da atualização: No usable PID found in /var/run/nagios/nagios.pid . Esta parte do problema parece ter uma solução aqui: Nagios não quer começar, agora não vai parar!

Depois de perceber que a atualização criou um arquivo /etc/nagios/nagios.cfg.rpmnew , executei um diff com o arquivo de configuração original do 3.5.1 RPM para ver quais eram as diferenças e alterei o arquivo de configuração real de acordo. As mudanças são principalmente relativas à posição de alguns arquivos usados em tempo de execução (aqui estão os valores da nova versão):

object_cache_file=/var/spool/nagios/objects.cache
precached_object_file=/var/spool/nagios/objects.precache
lock_file=/var/run/nagios/nagios.pid
temp_file=/var/spool/nagios/nagios.tmp
check_result_path=/var/spool/nagios/checkresults

Isso resolve o problema de parada / reinicialização mencionado acima, mas quebra a interface web, que agora exibe Error: Could not read object configuration data! . E as verificações de serviço ainda não são executadas.

Mensagens de erro também estão presentes em /var/log/audit/audit.log , indicando que o problema provavelmente está relacionado ao SELinux (o sistema está sendo executado no modo imposto):

type=AVC msg=audit(1516991640.421:263116): avc:  denied  { getattr } for  pid=29_exec_t:s0 tclass=file
type=SYSCALL msg=audit(1516991640.421:263116): arch=c000003e syscall=4 success=n fsgid=494 tty=(none) ses=4000 comm="check_procs" exe="/usr/lib64/nagios/plugins

De fato, a configuração temporária do SELinux para o modo permissivo resolve completamente o problema; no entanto, isso não é uma solução. Como atualizar corretamente as configurações do SELinux enquanto mantém o SELinux em modo de execução?

    
por Ale 26.01.2018 / 22:59

1 resposta

2

Os perfis necessários do SELinux estão disponíveis no pacote nagios-selinux , também disponível no EPEL. Infelizmente, a atualização não o instala automaticamente durante a troca do Nagios 3.5.1 para o Nagios 4.3.4, e deve, portanto, ser adicionada manualmente:

yum install nagios-selinux

É claro que as alterações nos arquivos de configuração (importando os novos caminhos do arquivo .rpmnew config) também são necessárias para que o Nagios funcione corretamente.

    
por 26.01.2018 / 22:59