Introdução
Independentemente de o certificado ter sido adquirido junto a uma empresa certificadora, ou gerado internamente, ele tem uma validade e quando ela expirar os serviços que fazem uso desse certificado, vão apresentar problemas, para evitar isso iremos colher os dados do certificado via Shell Script e monitorar essa informação com o Zabbix.Obtendo informações do Certificado
Digite o comando abaixo para visualizar as datas de validade do seu certificadoA sequencia de comandos abaixo é usada para cortar apenas o pedaço da informação que nos interessa, a data, a opção tr -s " " é utilizada para remover espaços duplicados, pois isso causaria problema em datas com um (Aug 6) ou dois (Aug 26) dígitos, de resto você pode ir executando o comando parte por parte e acompanhar o que acontece ;-)
# echo | openssl s_client -connect localhost:443 2>/dev/null | openssl x509 -noout -dates | tail -1 | tr -s " " |cut -d "=" -f2 | cut -d " " -f1,2,4
Automatizando a leitura da Informação
certificado.sh
Vamos criar um script em bash para executar os comandos, nomeei-o de certificado.shAlterar as permissões de execução e proprietário
# chown zabbix:zabbix /usr/local/etc/certificado.sh
# chmod 500 /usr/local/etc/certificado.sh
Configurando a informação no Zabbix
Configuração do agente
Vamos utilizar o recurso de UserParameter para que o Zabbix execute o script certificado.sh, após alterar o arquivo de configuração é necessário reiniciar o serviço.Testando a leitura da informação
Vamos utilizar o comando zabbix_get para testar a leitura da informação. A sintaxe é zabbix_get -s IP_do_Servidor_Monitorado -k chave.Criando o item no Zabbix
Acesse a interface do Zabbix // Configuração -> Hosts // Na linha do servidor clique em Itens // Clique no botão Criar item. Configure o item conforme imagem abaixo.Observe que vamos monitorar o item a cada 24 horas (86400 segundos).