Verificar validade das assinaturas das zonas hospedadas no DNSSEC
Publicado por eli marques junior (última atualização em 23/09/2013)
[ Hits: 5.016 ]
Verifica assinatura das zonas hospedadas no servidor $SERVER mostrando a data da criação, quando expira e quantos dias faltam para expirar...
Configuração:
- Alterar os DNS da variável "LISTA" e o IP/hostname da variável "SERVER".
- Na variável "day_expire_thresholds" setar os valores de warn e crit, respectivamente:
day_expire_thresholds=("10" "3")
Saída do script:
0 Zone_dns1.leg.br - Assinatura vencendo em 174 dias! Criação em: 2013/08/21, Expira em: 2014/02/17 as 13h:04min:46seg
0 Zone_dns2.leg.br - Assinatura vencendo em 113 dias! Criação em: 2013/08/21, Expira em: 2014/02/17 as 13h:07min:11seg
0 Zone_dns3.leg.br - Assinatura vencendo em 14 dias! Criação em: 2013/08/21, Expira em: 2013/09/16 as 13h:08min:15seg
#!/bin/bash
#ELI MARQUES JUNIOR
#
#Colocar esse script no diretorio "/usr/lib/check_mk_agent/local" com permissao para execucao
#
#day_expire_thresholds=("int warn" "int crit")
day_expire_thresholds=("10" "3")
SERVER="10.219.13.20"
LISTA=("dns1.leg.br" "dns2.leg.br" "dns3.leg.br" "dns4.leg.br" "dns5.leg.br"
"dns6.leg.br" "dns7.leg.br" "dns8.leg.br" "dns9.leg.br" "dns10.leg.br")
#LISTA=(grep -iw zone /etc/bind9/lay.txt | awk '{print $2}')
##### ------>>> FAVOR NAO ALTERAR NADA DAQUI PARA BAIXO <<<------ #####
#####
quant_list=${#LISTA[@]}
warn=${day_expire_thresholds[0]}
crit=${day_expire_thresholds[1]}
count=0
while [ $count -lt $quant_list ]; do
data_final=(`dig +dnssec @$SERVER ${LISTA[$count]} dnskey | grep RSIG | grep -o -m 1 "[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]"`)
dia_final=`echo ${data_final[0]} | cut -c7-8`
mes_final_int=`echo ${data_final[0]} | cut -c5-6`
ano_final=`echo ${data_final[0]} | cut -c1-4`
hora_final=`echo ${data_final[0]} | cut -c9-10`
min_final=`echo ${data_final[0]} | cut -c11-12`
seg_final=`echo ${data_final[0]} | cut -c13-14`
data_inicial=`echo ${data_final[1]}`
dia_inicial=`echo ${data_inicial[0]} | cut -c7-8`
mes_inicial=`echo ${data_inicial[0]} | cut -c5-6`
ano_inicial=`echo ${data_inicial[0]} | cut -c1-4`
data_atual=(`date '+%m %d %Y'`)
mes_atual=${data_atual[0]}
dia_atual=${data_atual[1]}
ano_atual=${data_atual[2]}
case $mes_atual in
01) mes_atual=Jan;;
02) mes_atual=Feb;;
03) mes_atual=Mar;;
04) mes_atual=Apr;;
05) mes_atual=May;;
06) mes_atual=Jun;;
07) mes_atual=Jul;;
08) mes_atual=Aug;;
09) mes_atual=Sep;;
10) mes_atual=Oct;;
11) mes_atual=Nov;;
12) mes_atual=Dec;;
esac
case $mes_final_int in
01) mes_final=Jan;;
02) mes_final=Feb;;
03) mes_final=Mar;;
04) mes_final=Apr;;
05) mes_final=May;;
06) mes_final=Jun;;
07) mes_final=Jul;;
08) mes_final=Aug;;
09) mes_final=Sep;;
10) mes_final=Oct;;
11) mes_final=Nov;;
12) mes_final=Dec;;
esac
data_futuro=`date +%s -d "$mes_final $dia_final $ano_final"`
data_atual=`date +%s -d "$mes_atual $dia_atual $ano_atual"`
dias_expirar=`expr $data_futuro - $data_atual`
resultado=`expr $dias_expirar \/ 86400`
if [ $resultado -le $crit ]; then
state=2
else if [ $resultado -le $warn ]; then
state=1
else
state=0
fi
fi
printf "%s Zone_%s - Assinatura vencendo em %s dias! Criação em: %s/%s/%s, Expira em: %s/%s/%s as %sh:%smin:%sseg \n" $state ${LISTA[$count]} $resultado $ano_inicial $mes_inicial $dia_inicial $ano_final $mes_final_int $dia_final $hora_final $min_final $seg_final
((count++))
done
Limpar pacotes com versões antigas do cache do apt
VMware - Linux HotAdd CPU/Memória
Systemctl-config - parada ou reativação de um serviço do systemD
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Manutenção básica para Gentoo Linux (com script)
Conheça o Zashterminal, um terminal moderno com IA
DOOM Carniceiro: rode o Meatgrinder com uzdoom (Gentoo e Ubuntu)
Samba 4 AD-DC 2026: Como instalar e configurar um Active Directory (via APT-GET)
[Resolvido] Sumiço de redes e micro quedas no iwd/iwgtk (Realtek rtw88)
eu queria saber no lenovo slim, se tem como ver os mhz de memoria e tu... (3)









