Gestion certificats » Historique » Version 4
Benjamin Bohard, 01/10/2015 11:15
1 | 1 | Benjamin Bohard | h1. Gestion certificats |
---|---|---|---|
2 | 1 | Benjamin Bohard | |
3 | 1 | Benjamin Bohard | Ce mémo fait le point sur la problèmatique des certificats sur les modules EOLE. |
4 | 1 | Benjamin Bohard | |
5 | 1 | Benjamin Bohard | h2. Usage des certificats sur les modules EOLE |
6 | 1 | Benjamin Bohard | |
7 | 1 | Benjamin Bohard | Sur les modules EOLE, les certificats sont utilisés pour identifier et authentifier différents services : |
8 | 1 | Benjamin Bohard | * ead ; |
9 | 1 | Benjamin Bohard | * eole-sso ; |
10 | 1 | Benjamin Bohard | * sites et applications web desservies par apache ; |
11 | 1 | Benjamin Bohard | * transmission des journaux d'application. |
12 | 1 | Benjamin Bohard | |
13 | 1 | Benjamin Bohard | h2. Deux modes de fonctionnement |
14 | 1 | Benjamin Bohard | |
15 | 1 | Benjamin Bohard | Deux modes d'utilisation des certificats sont proposés par les modules EOLE. |
16 | 1 | Benjamin Bohard | Un mode intégré à une pki reconnue (dont les certificats racines sont intégrés aux navigateurs) et un mode indépendant reposant sur un certificat racine local ou non reconnu. |
17 | 1 | Benjamin Bohard | |
18 | 1 | Benjamin Bohard | Les modes peuvent être utilisés concomitamment. Par exemple, on peut avoir un certificat intégré à une pki pour les sites desservis par apache et un certificat signé "localement" pour la transmission des journaux d'application. |
19 | 1 | Benjamin Bohard | |
20 | 1 | Benjamin Bohard | h3. Mode indépendant |
21 | 1 | Benjamin Bohard | |
22 | 1 | Benjamin Bohard | C'est le mode par défaut, mis en place à l'instanciation du serveur. |
23 | 4 | Benjamin Bohard | Ce mode permet de fonctionner en attendant la signature de la clé publique du module par une pki, -celle de Toulouse dans le cas des établissements scolaires du second degré par exemple-. |
24 | 1 | Benjamin Bohard | |
25 | 1 | Benjamin Bohard | Les certificats applicatifs permettent les mêmes usages qu'en mode intégré. |
26 | 1 | Benjamin Bohard | Par contre, en l'absence d'une pki, il n'y a pas de gestion des listes de révocations. |
27 | 1 | Benjamin Bohard | Les certificats applicatifs et certificats racines doivent être acceptés manuellement. |
28 | 1 | Benjamin Bohard | |
29 | 1 | Benjamin Bohard | h3. Mode intégré |
30 | 1 | Benjamin Bohard | |
31 | 2 | Benjamin Bohard | C'est le mode conseillé pour les applications web en particulier, les applications faisant intervenir des logiciels clients en dehors des serveurs EOLE en général. |
32 | 2 | Benjamin Bohard | |
33 | 2 | Benjamin Bohard | Actuellement, pour l'Éducation nationale, l'autorité de référence est TERENA. La chaîne de certification a deux niveaux. |
34 | 2 | Benjamin Bohard | |
35 | 2 | Benjamin Bohard | h4. Configurations des applications |
36 | 2 | Benjamin Bohard | |
37 | 2 | Benjamin Bohard | La configuration des applications se résume souvent à présenter la chaîne de certification à l'application dans un ou plusieurs fichiers. |
38 | 2 | Benjamin Bohard | |
39 | 2 | Benjamin Bohard | La concaténation des certificats est la seule opération à connaître et peut être opérée, à la main, grâce à la commande openssl. |
40 | 2 | Benjamin Bohard | |
41 | 2 | Benjamin Bohard | Soit une chaîne de certification définie par un certificat serveur.crt établi à l'aide d'un certificat cert_intermediaire.crt, lui-même établi à l'aide du certificat autosigné appartenant à une autorité reconnue cert_racine.crt. La concaténation de la chaîne complète prendrait la forme suivante : |
42 | 2 | Benjamin Bohard | |
43 | 2 | Benjamin Bohard | <pre> |
44 | 2 | Benjamin Bohard | openssl x509 -in serveur.crt > chaine.crt |
45 | 2 | Benjamin Bohard | openssl x509 -in cert_intermediaire.crt >> chaine.crt |
46 | 2 | Benjamin Bohard | openssl x509 -in cert_racine.crt >> chaine.crt |
47 | 2 | Benjamin Bohard | </pre> |
48 | 2 | Benjamin Bohard | |
49 | 2 | Benjamin Bohard | L'ordre de concaténation est important. |
50 | 2 | Benjamin Bohard | |
51 | 2 | Benjamin Bohard | h5. Apache |
52 | 2 | Benjamin Bohard | |
53 | 2 | Benjamin Bohard | Apache dispose de deux variables : |
54 | 3 | Benjamin Bohard | * une pour le certificat du serveur, le certificat délivré par TERENA non concaténé (variable apache_cert) ; |
55 | 3 | Benjamin Bohard | * une pour le reste de la chaîne (pas de variable au niveau creole car cette chaîne est calculée automatiquement pour peu que le fichier indiqué pour la variable précédente ne contienne pas la chaîne). |
56 | 2 | Benjamin Bohard | |
57 | 2 | Benjamin Bohard | Le reste de la chaîne ne devrait pas inclure le certificat racine autosigné, normalement dans le magasin du navigateur web. |
58 | 2 | Benjamin Bohard | |
59 | 2 | Benjamin Bohard | h5. Nginx |
60 | 2 | Benjamin Bohard | |
61 | 2 | Benjamin Bohard | Nginx dispose d'une variable : |
62 | 2 | Benjamin Bohard | * certificat du serveur concaténé avec le reste de la chaîne. |
63 | 2 | Benjamin Bohard | |
64 | 2 | Benjamin Bohard | h5. Eole-sso |
65 | 2 | Benjamin Bohard | |
66 | 2 | Benjamin Bohard | Eole-sso dispose de 2 variables : |
67 | 2 | Benjamin Bohard | * certificat du serveur concaténé avec les certificats intermédiaires (variable eolesso_cert /etc/ssl/certs/eole.crt par défaut); |
68 | 2 | Benjamin Bohard | * le certificat racine autosigné (variable eolesso_ca_location). |
69 | 2 | Benjamin Bohard | |
70 | 1 | Benjamin Bohard | h2. Extensions des certificats |
71 | 1 | Benjamin Bohard | |
72 | 1 | Benjamin Bohard | h3. Certificat racine |
73 | 1 | Benjamin Bohard | |
74 | 1 | Benjamin Bohard | h3. Certificats applicatifs |