Projet

Général

Profil

Tâche #33353

Scénario #33284: Créer un Agent Zéphir qui test la validité des certificats

Créer l'agent

Ajouté par Emmanuel GARETTE il y a plus de 2 ans. Mis à jour il y a plus de 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
18/10/2021
Echéance:
% réalisé:

100%

Restant à faire (heures):
0.0

scribe-cert-agents-not-expired-OK.png Voir (25,3 ko) Daniel Dehennin, 02/12/2021 14:12

scribe-cert-agents-expired-but-OK.png Voir (25,6 ko) Daniel Dehennin, 02/12/2021 14:12

Révisions associées

Révision de156d8b (diff)
Ajouté par Emmanuel GARETTE il y a plus de 2 ans

création d'un agent Zéphir pour vérifier la validité des certificats (ref #33284)

Révision 2f18fdd5 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 2 ans

ajout de variables pour l'agent Zéphir de validation des certificats (ref #33284)

Révision 23db7bb2 (diff)
Ajouté par Emmanuel GARETTE il y a plus de 2 ans

une commande avec le code retour 1 ne renvoit pas forcement vers errback, valider en plus de pid (ref #33284)

Historique

#1 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Sujet changé de Créé l'agent à Créer l'agent

#2 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Statut changé de Nouveau à À valider
  • % réalisé changé de 0 à 100

#3 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Statut changé de À valider à Résolu

#4 Mis à jour par Joël Cuissinat il y a plus de 2 ans

zephir-client$ git branch -r --contains de156d8b
  origin/HEAD -> origin/master
  origin/dist/eole/2.8.1/master
  origin/master

#5 Mis à jour par Joël Cuissinat il y a plus de 2 ans

Ajout de pas dans https://dev-eole.ac-dijon.fr/squash/test-cases/4363/info

Les cas expirés et "pas encore valide" n'ont pas l'air gérés par l'agent ?

#6 Mis à jour par Joël Cuissinat il y a plus de 2 ans

  • Statut changé de Résolu à En cours

#7 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Statut changé de En cours à Résolu

<gnunux> en fait il y plusieurs fonctions qui valident les certificats dans le diagnose
<gnunux> c'est encore une fois un empilement de fonctionnalité
<gnunux> moi j'ai repris que celle qui permet de voir si le certificat va bientot expiré
<gnunux> ce que je veux dire c'est que pour ce certif ok ca regarde la date de début, mais pas pour les autres certificats
<gnunux> la fonction utilisé pour les certificats autosignés n'est pas utilisé (et n'est pas compatible) avec les autres types de certificats

#8 Mis à jour par Daniel Dehennin il y a plus de 2 ans

En suivant les étapes du test squash:

Lorsque le certificat est valide

root@scribe:~# /usr/share/eole/diagnose/05-common 
*** Validité du certificat
.                    eole.crt => Ok
.                DNS reconnus => scribe.domscribe.ac-test.fr addc.domscribe.ac-test.fr scribe.ac-test.fr

Lorsque le certificat est expiré

root@scribe:~# /usr/share/eole/diagnose/05-common 
*** Validité du certificat
.                    eole.crt => Erreur :  certificate has expired
 certificate has expired

#9 Mis à jour par Daniel Dehennin il y a plus de 2 ans

Arf, le test de validité n’est pas effectué dans le cas autosigné eole-common:source:diagnose/05-common@f4103bd#L94.

Pour tester, je l’ai ajouté:

--- /usr/share/eole/diagnose/05-common.orig    2024-11-30 22:15:24.740000000 +0100
+++ /usr/share/eole/diagnose/05-common    2024-11-30 22:12:38.308000000 +0100
@@ -94,6 +94,7 @@
 if [ ${cert_type} = "autosigné" ]
 then
     EchoGras "*** Validité du certificat" 
+    TestValidCerts ${server_cert} ${server_pem}
     if [ $server_cert != "/etc/ssl/certs/eole.crt" ]
     then
         TestCerts $server_cert 10 "certificat expiré" 

Ce qui donne

root@scribe:~# /usr/share/eole/diagnose/05-common
*** Validité du certificat
.                DNS reconnus => scribe.domscribe.ac-test.fr addc.domscribe.ac-test.fr scribe.ac-test.fr
.                Expiration => dans moins de 15 jours.
.                Date de fin => dim. 01 déc. 2024 21:06:26 CET
.                         CA =>  CA-scribe.domscribe.ac-test.fr
.                Certificat  => valide

.                    eole.crt => Ok
.                DNS reconnus => scribe.domscribe.ac-test.fr addc.domscribe.ac-test.fr scribe.ac-test.fr

#10 Mis à jour par Daniel Dehennin il y a plus de 2 ans

En tout cas, l’agent Zéphir à 1j de l’expiration est toujours OK.

#11 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Statut changé de Résolu à En cours
  • % réalisé changé de 100 à 50

#12 Mis à jour par Emmanuel GARETTE il y a plus de 2 ans

  • Statut changé de En cours à Résolu
  • % réalisé changé de 50 à 100

OK maintenant :

root@eolebase:~# diagnose 
[..]
*** Validité du certificat
.                    eole.crt => Ok
.                DNS reconnus => eolebase.ac-test.fr
[..]
root@eolebase:~# elinks http://eolebase.ac-test.fr:8090/agents/0/localcert/ | grep -C2 Chemin
  Surveillance des certificats

   Chemin du certificat    Validité
   /etc/ssl/certs/eole.crt Valide

root@eolebase:~# systemctl stop ntp
root@eolebase:~# END_DATE=$(openssl x509 -in /etc/ssl/certs/eole.crt -noout -enddate|cut -d"=" -f2)
root@eolebase:~# Y=$(date -d "$END_DATE" +%Y)
root@eolebase:~# M=$(date -d "$END_DATE" +%m)
root@eolebase:~# D=$(date -d "$END_DATE" +%d)
root@eolebase:~# HH=$(date -d "$END_DATE" +%H)
root@eolebase:~# MM=$(date -d "$END_DATE" +%M)
root@eolebase:~# date $M$D$HH$MM$((Y+1))
mer. 03 déc. 2025 22:14:00 CET
root@eolebase:~# systemctl restart z_stats.service
root@eolebase:~# diagnose
[..]
*** Validité du certificat
.                    eole.crt => Erreur :  certificate has expired
 certificate has expired
[..]
root@eolebase:~# elinks http://eolebase.ac-test.fr:8090/agents/0/localcert/ | grep -C2 Chemin
  Surveillance des certificats

   Chemin du certificat    Validité
   /etc/ssl/certs/eole.crt Fin de validité dans moins de 30 jours

#13 Mis à jour par Joël Cuissinat il y a plus de 2 ans

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Vu, création d'un nouveau scénario pour les cas mal gérés en mode auto-signé => #33551

Formats disponibles : Atom PDF