Vérifier automatiquement l'expiration de certificats SSL


Lock broken
Cet article explique comment utiliser le script ssl-cert-check afin de vérifier automatiquement si un certificat SSL arrive à expiration ou non.

1. Installation

Ouvrez un terminal en root et lancez les commandes suivantes, pour mettre en place le script de vérification sur votre système :

cd /usr/local/bin
wget http://prefetch.net/code/ssl-cert-check
chmod +x ssl-cert-check

2. Utilisation

Pour vérifier la validité d'un certificat, on pourra utiliser une commande similaire à celle-ci :

ssl-cert-check -s www.tux-planet.fr -p 443

Le script permet également de vérifier l'expiration de certificats en local. Il suffit de lui renseigner le chemin du fichier .pem :

ssl-cert-check -c /etc/ca/cacert.pem

3. Vérification automatique

Pour aller plus loin, on peut mettre en place une vérification automatique des certificats via une crontab. L'utilisation de l'option -e permettra de recevoir un mail en cas d'expiration.

Voici un exemple de ligne à mettre dans la crontab :

# Check SSL expiration
0 1 * * * ssl-cert-check -c /etc/ca/*.pem -e sebastien.bilbeau@mail.com > /dev/null

Bien entendu, ce procédé restera intéressant que dans les cas où l'on doit vérifier une quantité importante de certificats contenus dans un répertoire.


9 Commentaires pour "Vérifier automatiquement l'expiration de certificats SSL"

Flux des commentaires de cet article Ajouter un commentaire
  •  

    Tu fais pas un crontab toutes les minutes avec ce que tu as mis ? 1 à 2 fois par jour ne suffirait pas ?

    RépondreRépondre
    Oncle Tom , le 22 juillet 2008 à 18:19
  •  

    Pas mal.

    /me veut un RPM pour sa distrib préférée qui, ô miracle, est aussi celle de l'auteur de cet article :D

    RépondreRépondre
    bochecha , le 22 juillet 2008 à 19:08
  •  

    pas mal le script... on se demande bien d'où vient l'inspiration!!!
    c'est un peu comme si t'avais plein de certificats à vérifier suite au récents problèmes ;)

    Aller, demain, je publie un article sur le gw ;)

    RépondreRépondre
    matao , le 22 juillet 2008 à 19:39
  •  

    @Oncle Tom : effectivement, il y a une erreur dans la crontab. Je vais la corriger.

    @bochecha : visiblement, il n'existe pas de rpm pour ce script. Mais bon il reste assez simple à mettre en place.

    @matao : faut bien puiser son inspiration quelque part. Ces sûr que si on n'avait pas autant de certificats au CRI et si leur gestion n'était pas aussi pourrit, je n'aurais jamais prêté attention à ce script, découvert par hasard sur le net.

    RépondreRépondre
    pti-seb , le 22 juillet 2008 à 23:20
  •  

    @pti-seb : Effectivement, il reste simple a mettre en place... Mais on pourrait imaginer enrober tout ça dans un service dans /etc/init.d.

    Ainsi, on pourrait utiliser chkconfig pour le faire démarrer dans le runlevel souhaité. On pourrait le lancer manuellement avec "service checkt-crt [start|stop|restart]" ce qui aurait pour effet de mettre en place / modifier la crontab qui serait elle prise dans un fichier de conf à part.

    Ca devient tout de suite plus sympa à gérer qu'en le faisant à la main, et du coup un RPM (ou plutôt un "package" car tout le monde n'utilise pas RPM :) commence à devenir intéressant.

    Et du coup, si personne ne s'en occupe, ça me donne une idée pour mon prochain RPM dans Fedora / EPEL :)

    RépondreRépondre
    bochecha , le 23 juillet 2008 à 10:49
  •  

    @bochecha : effectivement ta vision des choses est bonne. Si tu fait un rpm, faudra nous prévenir.

    RépondreRépondre
    pti-seb , le 23 juillet 2008 à 12:28
  •  

    Le RPM est en cours de création :)
    A suivre...

    RépondreRépondre
    bochecha , le 25 juillet 2008 à 01:02
  •  

    Il existe aussi un test nagios (dispo dans pas mal de distribution):

    /usr/lib/nagios/plugins/check_http -H verisign.com -C 14

    vérifie si le certificat de verisign.com est valide et remonte une alerte s'il reste 14 jours avant expiration.

    0 1 * * * /usr/lib/nagios/plugins/check_http -H verisign.com -C 14 || echo 'certificat va expire dans 14 jours' | mail -s 'Expiration du certificat'

    RépondreRépondre
    Matt , le 28 février 2010 à 10:20
  •  

    Pas mal le plugin nagios aussi, je ne connaissais pas.
    Merci.

    RépondreRépondre
    Tomi , le 14 novembre 2010 à 01:45
 

Ajouter un commentaire

actualité android apache apple astuce astuces bash bilboblog blog boot chrome clavier commande commandes conky date debian Desktop développement elementary exploit faille fedora firefox flash gimp gnome google graphique Graphisme hack hacking Hardware humour intel internet iphone jailbreak Jeux Kde kernel libre Linux log logiciels Logiciels Libres lucid lynx maemo mail maquette metasploit microsoft mobile mockup monitoring mozilla multi-touch musique mysql n900 nautilus nokia noyau openoffice open source password photos php Planet publicité red hat redhat rpm réseau screenshot script serveur serveurs shell sql ssh statistiques sysadmin system Sécurité thème tux-planet tv twitter ubuntu unity vidéo vidéos vlc voyage wallpaper windows wordpress yum