
Monitorando registros DKIM, SPF e DMARC da Centreon
Poço, Poço, Poço… Estamos de volta com o Centreon! Hoje um post para manter o controle de registros públicos relacionados ao serviço de e-mail. Então, se não queremos ter problemas de e-mail, certificar-nos-emos de que o registo DKIM, SPF e DMARC existem em nosso domínio.
Si queremos tener un servicio de correo perfectamente configurado, conocemos que tenemos que tener perfectamente configurados los registros DKIM, SPF y DMARC, para ello tenemos múltiples páginas que nos ayudarán a crearlos, validarlos y asegurar que cumplimos los estándares, conseguimos buena reputación y no nos penalizarán los sistemas antispam del resto de organizaciones. Lo dicho la mítica web de https://www.mail-tester.com nos ayudará en tener la configuración óptima.
Una vez este trabajo está realizado, desde el equipo de monitorización podremos sencillamente confirmar que estos registros existen y no se pierden, ya que son tantas cosas las que tenemos que considerar en una organización, que mejor que alguien mire cada punto crítico de la organización.
DKIM
Total, txapas a parte, en este post vamos a conseguir que mediante un par de scripts podremos integrarlos en Centreon para conocer que los registros son válidos, empezamos con ‘check_dkim’, instalamos los requisitos y nos descargamos el script:
yum install python36-devel pip3.6 install pycrypto pip3.6 install dnspython cd /usr/lib/centreon/plugins/ git clone https://github.com/countsudoku/check_dkim.git cd check_dkim/
Y probamos directamente desde shell el funcionamiento, cada uno obviamente con su nombre de dominio público:
/usr/bin/python3.6 /usr/lib/centreon/plugins/check_dkim/check_dkim.py -d bujarra.com -s default DKIM OK - DKIM key is there
SPF
O mesmo, instalamos requisitos, nos descargamos el script ‘check_spf_record_match.rb’, lo hacemos ejecutable:
yum install ruby -y wget https://raw.githubusercontent.com/garymoon/nagios-check-spf-record-match/master/check_spf_record_match.rb chmod +x check_spf_record_match.rb
E nós tentamos:
/usr/lib/centreon/plugins/check_spf_record_match.rb --domains bujarra.com --debug Options: {:debug=>Verdadeiro, :domains=>["bujarra.com"]} record for bujarra.com: v=spf1 include:_spf.srv.cat +a +mx include:pepipost.net ~all OK: All records in sync.
DMARC
Para usar este script nos basamos en el script anterior de SPF, creamos el de DMARC haciendo una copia del fichero actual y vamos a crear uno para nosotros.
cp ./check_spf_record_match.rb ./check_dmarc_record_match.rb
Y le hacemos los siguientes cambios:
- Sustituimos la palabra spf por dmarc
- Sustituimos la palabra SPF por DMARC
- En la línea 50
- de: records = dns.getresources(domínio, Resolv::DNS::Resource::EM::TXT)
- Para: records = dns.getresources(‘_dmarc.’ + domínio, Resolv::DNS::Resource::EM::TXT)
- En la línea 65
- de: dmarc_record_n = txt_strings.index{|s| s.downcase.include?’DMARC’}
- Para: dmarc_record_n = txt_strings.index{|s| s.include? ‘DMARC’}
- En la línea 70
- de: puts txt_strings.index{|s| s.downcase.include?’DMARC’}
- Para: puts txt_strings.index{|s| s.include?’DMARC’}
/usr/lib/centreon/plugins/check_dmarc_record_match.rb --domains bujarra.com --debug Options: {:debug=>Verdadeiro, :domains=>["bujarra.com"]} record for bujarra.com: v=DMARC1; p=none OK: All records in sync.