Projet

Général

Profil

Tâche #14237

Scénario #14084: Assistance aux utilisateurs (49-51)

Les certificats intermédiaires d'une chaine présents dans /etc/ssl/local_ca ne sont pas pris en compte par les fonctions cert.py et dans la génération du certificats apache

Ajouté par Jean-Marc MELET il y a plus de 8 ans. Mis à jour il y a plus de 8 ans.

Statut:
Ne sera pas résolu
Priorité:
Normal
Début:
09/12/2015
Echéance:
% réalisé:

100%

Temps estimé:
1.00 h
Temps passé:
Restant à faire (heures):
0.0

Description

Je ne sais pas s'il s'agit exactement du même sujet traité dans https://dev-eole.ac-dijon.fr/issues/13362, mais en revanche je pense que cela répond au problème cité dans https://dev-eole.ac-dijon.fr/issues/12023. Dans le doute j'ouvre quand même ce signalement.

Constats établit sur un Scribe 2.3 avec un certificat établissement clg-annefrank.crt signé par Digicerts:

root@scribe.peda.clg-annefrank.local:~# ll /etc/ssl/certs/clg-annefrank.*
-rw-r--r-- 1 root root 5838 2015-12-07 19:17 /etc/ssl/certs/clg-annefrank.crt
-rw-r--r-- 1 root root 1704 2015-12-07 18:57 /etc/ssl/certs/clg-annefrank.key
root@scribe.peda.clg-annefrank.local:~# ll /etc/ssl/local_ca/TERENASSLCA3.crt
-rw-r--r-- 1 root root 1789 2015-09-11 11:31 /etc/ssl/local_ca/TERENASSLCA3.crt
root@scribe.peda.clg-annefrank.local:~# python -c """from creole import cert;print cert.certif_loader()""" 
Chaîne de certificats incomplète.
None
root@scribe.peda.clg-annefrank.local:~# python -c """from creole import cert;print cert.get_certs_chain(['/etc/ssl/certs/clg-annefrank.crt'])""" 
Chaîne de certificats incomplète.
['/etc/ssl/certs/clg-annefrank.crt']
root@scribe.peda.clg-annefrank.local:~# ll /etc/ssl/certs/clg-annefrank_ca-chain.crt
-rw-r--r-- 1 root root    0 2015-12-09 11:25 /etc/ssl/certs/clg-annefrank_ca-chain.crt
root@scribe.peda.clg-annefrank.local:~# grep SSLCertificateChainFile /etc/apache2/sites-enabled/Vhost-ssl 
root@scribe.peda.clg-annefrank.local:~#

On peut constater que la librairie ne parvient pas à retrouver la chaine utilisée pour signer le certificat et que le fichier de la chaine n'est pas correctement généré (clg-annefrank_ca-chain.crt de taille nulle). En plus de provoquer deux fois l'erreur "Chaîne de certificats incomplète" au reconfigure, le paramètre SSLCertificateChainFile dans la conf du Vhost SSL d'apache n'est pas renseigné et apache ne diffuse donc pas la chaine.
Maintenant si ajoute le fichier TERENASSLCA3.crt dans le dossier par défaut du magasin de certificat, le fichier de la chaine est bien généré, il n'y a plus d'erreur et apache diffuse bien la chaine:
root@scribe.peda.clg-annefrank.local:~# cp /etc/ssl/local_ca/TERENASSLCA3.crt /etc/ssl/certs/
root@scribe.peda.clg-annefrank.local:~# python -c """from creole import cert;print cert.certif_loader()""" 
None
root@scribe.peda.clg-annefrank.local:~# python -c """from creole import cert;print cert.get_certs_chain(['/etc/ssl/certs/clg-annefrank.crt'])""" 
['/etc/ssl/certs/clg-annefrank.crt', '/etc/ssl/certs/TERENASSLCA3.crt', '/etc/ssl/certs/DigiCert_Assured_ID_Root_CA.pem']
root@scribe.peda.clg-annefrank.local:~# ll /etc/ssl/certs/clg-annefrank_ca-chain.crt 
-rw-r--r-- 1 root root 1789 2015-12-09 17:33 /etc/ssl/certs/clg-annefrank_ca-chain.crt

Apres reconfigure:
root@scribe.peda.clg-annefrank.local:~# grep SSLCertificateChainFile /etc/apache2/sites-enabled/Vhost-ssl 
 SSLCertificateChainFile /etc/ssl/certs/clg-annefrank_ca-chain.crt

J'en conclu donc que les certificats présents dans /etc/ssl/local_ca ne sont pas pris en compte comme il faut

Historique

#1 Mis à jour par Bruno Boiget il y a plus de 8 ans

  • Assigné à mis à Fabrice Barconnière

#2 Mis à jour par Bruno Boiget il y a plus de 8 ans

  • Tracker changé de Demande à Tâche
  • Statut changé de Nouveau à En cours
  • % réalisé changé de 0 à 100
  • Tâche parente mis à #14084

effectivement, le répertoire local_ca n'est pas utilisé par la nouvelle méthode mise en place (il sert à concaténer des certificats dans la CA locale ca.crt).

Il faut bien copier les certificats intermédiaires dans /etc/ssl/certs et reconfigurer. La procédure est expliquée ici :

https://dev-eole.ac-dijon.fr/projects/modules-eole/wiki/Gestion_certificats

La mise à jour de la documenation officielle est prévue dans ce scénario : #13638

Pour la demande concernant Seshat et Scribe, il faudra toujours mettre les certificats nécessaires à la validation du certificat de Scribe dans local_ca de Seshat.

#3 Mis à jour par Scrum Master il y a plus de 8 ans

  • Statut changé de En cours à Fermé
  • Restant à faire (heures) mis à 0.0

#4 Mis à jour par Scrum Master il y a plus de 8 ans

  • Statut changé de Fermé à Ne sera pas résolu
  • Temps estimé mis à 0.00 h

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

  • Temps estimé changé de 0.00 h à 1.00 h

Formats disponibles : Atom PDF