20.05.2015 Views

Télécharger - Site personnel de Serge Moutou

Télécharger - Site personnel de Serge Moutou

Télécharger - Site personnel de Serge Moutou

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!