Télécharger - Site personnel de Serge Moutou
Télécharger - Site personnel de Serge Moutou
Télécharger - Site personnel de Serge Moutou
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapitre 15 : SSL<br />
La Free Software Fundation (Europe) a obtenu que l'utilisation d' OpenSSL soit légale en France pour une<br />
durée <strong>de</strong> 5 ans (jusqu'en 2007) auprès du SCSSI (www.scssi.gouv.fr)<br />
Utilisation d'OpenSSL pour les applications SSL/TLS<br />
par Franck Davy (21/12/2001)<br />
Cette brève abor<strong>de</strong> quelques aspects <strong>de</strong> la configuration d'applications supportant les protocoles SSL/TLS et se<br />
fondant sur la bibliothèque openssl, <strong>de</strong> la génération <strong>de</strong>s certificats aux options les plus souvent rencontrées. 3<br />
applications sont citées en exemple : le serveur <strong>de</strong> test fourni avec openssl, Apache+mod_ssl et enfin Postfix-TLS.<br />
1. Format du fichier openssl.cnf<br />
Il faut se référer au fichier openssl.cnf par défaut pour avoir le format général. La documentation se trouve<br />
principalement dans le fichier doc/openssl.txt.<br />
Seules les extensions v3 seront manipulées, respectant la syntaxe : extension_name=[critical,] extension_options<br />
Ces extensions sont introduites car les bi-clés générés peuvent être <strong>de</strong> divers usages (bi-clé <strong>de</strong> chiffrement, bi-clé <strong>de</strong><br />
signature et bi-clé d'échange <strong>de</strong> clés) et les exigences en terme <strong>de</strong> sécurité différentes (recouvrement pour un bi-clé <strong>de</strong><br />
chiffrement, auquel un service <strong>de</strong> non répudiation ne peut donc être associé).<br />
Outre <strong>de</strong>s informations sur le bi-clé, ces extensions permettent d'imposer <strong>de</strong>s contraintes sur l'itinéraire <strong>de</strong> certification<br />
à parcourir (autrement dit la chaîne à parcourir pour vali<strong>de</strong>r un certificat), renseigner sur la politique <strong>de</strong> certification<br />
concernant le certificat présenté, ou encore sur la façon d'accè<strong>de</strong>r aux listes <strong>de</strong> révocation.<br />
Les plus courantes sont brièvement abordées :<br />
* basicConstraints<br />
- pathlen : nombre <strong>de</strong> CA pouvant apparaître sous (autrement signés par) le certificat<br />
- CA : TRUE pour une autorité, inutile pour une entité terminale (mais à FALSE pour compatibilité)<br />
* keyUsage<br />
- digitalSignature (RSA/DSA) : pour la signature (en tant que mécanisme, autrement dit le chiffrement d'une empreinte<br />
avec une clé privée)<br />
- nonRepudiation (RSA/DSA) : i<strong>de</strong>m, mais en tant que service (autrement dit la volonté d'ajouter un service <strong>de</strong> non<br />
répudiation à une signature). Pour du S/MIME, bit positionné avec digitalSignature typiquement<br />
- keyEncipherment (RSA) : chiffrement <strong>de</strong> clé (clé secrète d'algorithme symétrique généralement, ou premaster secret<br />
ou encore clé RSA éphémère en SSL/TLS)<br />
- dataEncipherment (RSA) : chiffrement <strong>de</strong> données (hors clé <strong>de</strong> session, crl, certificat)<br />
- keyCertSign (RSA/DSA) : signature <strong>de</strong> certificats (pour les CA donc)<br />
- cRLSign (RSA/DSA) : signature <strong>de</strong> listes <strong>de</strong> révocation<br />
- keyAgreement (DH) : pour la négociation d'une clé <strong>de</strong> session<br />
- encipherOnly et <strong>de</strong>cipherOnly (DH) : positionnés conjointement à keyAgreement<br />
* nsCertType<br />
- client ou server : pour une authentification client ou serveur en SSL/TLS<br />
- email : pour du S/MIME<br />
144 /163