Outils pour utilisateurs

Outils du site


services:ssl

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
services:ssl [Tue Jul 14 20:36:28 2009]
elessar créée
services:ssl [Fri Nov 22 14:29:41 2013] (Version actuelle)
elessar structure
Ligne 11: Ligne 11:
 </​box>​ </​box>​
  
-==== Principe ====+===== Principe ​=====
  
-=== Chiffrement asymétrique ===+==== Chiffrement asymétrique ​====
  
 Dans l'​utilisation usuelle de SSL, le serveur dispose d'une paire de clefs de chiffrement :​ Dans l'​utilisation usuelle de SSL, le serveur dispose d'une paire de clefs de chiffrement :​
Ligne 27: Ligne 27:
 Ainsi, le chiffrement asymétrique n'est utilisé que pour établir un canal de chiffrement symétrique,​ qui est moins coûteux en puissance de calcul pour une sécurité identique. Ainsi, le chiffrement asymétrique n'est utilisé que pour établir un canal de chiffrement symétrique,​ qui est moins coûteux en puissance de calcul pour une sécurité identique.
  
-=== Certification ===+==== Certification ​====
  
-Avec un tel système, on est sûr que seuls le propriétaire de la clef privée pourra déchiffrer la connexion chiffrée. Le problème est alors de savoir si cette clef est bien //celle de votre interlocuteur prétendu//​.+Avec un tel système, on est sûr que seul le propriétaire de la clef privée pourra déchiffrer la connexion chiffrée. Le problème est alors de savoir si cette clef est bien //celle de votre interlocuteur prétendu//​.
  
 SSL utilise un système de garantie centralisé. Ainsi, chaque serveur présente un //​certificat//,​ qui contient : SSL utilise un système de garantie centralisé. Ainsi, chaque serveur présente un //​certificat//,​ qui contient :
Ligne 38: Ligne 38:
 Les certificats des grandes autorités de certification sont intégrés aux clients Internet, qui les utilisent pour vérifier les certificats. Les certificats des grandes autorités de certification sont intégrés aux clients Internet, qui les utilisent pour vérifier les certificats.
  
-==== Générer votre certificat ====+===== Générer votre certificat ​=====
  
 Pour pouvoir chiffrer vos communications,​ notamment celles qui impliquent la transmission d'un mot de passe, vous devez donc disposer d'un certificat et d'une clef privée SSL. Si vous mettez des services sécurisés à disposition du public, vous devez faire signer votre certificat par une autorité reconnue. Si vous êtes le seul à utiliser ces services, vous pouvez vous contenter d'un certificat auto-signé. Pour pouvoir chiffrer vos communications,​ notamment celles qui impliquent la transmission d'un mot de passe, vous devez donc disposer d'un certificat et d'une clef privée SSL. Si vous mettez des services sécurisés à disposition du public, vous devez faire signer votre certificat par une autorité reconnue. Si vous êtes le seul à utiliser ces services, vous pouvez vous contenter d'un certificat auto-signé.
Ligne 44: Ligne 44:
 Dans tous les cas, vous pouvez placer vos requêtes, clefs et certificats dans les sous-répertoires ''​req'',​ ''​private''​ et ''​certs''​ du répertoire ''/​etc/​ssl/''​. Dans tous les cas, vous pouvez placer vos requêtes, clefs et certificats dans les sous-répertoires ''​req'',​ ''​private''​ et ''​certs''​ du répertoire ''/​etc/​ssl/''​.
  
-=== Certificat certifié ===+==== Certificat certifié ​====
  
 Vous devez d'​abord générer une clef et une requête de certificat, qui contient les informations d'un certificat, sans signature d'une autorité :​ Vous devez d'​abord générer une clef et une requête de certificat, qui contient les informations d'un certificat, sans signature d'une autorité :​
Ligne 55: Ligne 55:
 </​box>​ </​box>​
  
-Vous devez ensuite transmettre cette clef à une autorité de certification comme StartSSL ou CAcert. Après avoir examiné et accepté votre requête, celle-ci vous donnera un certificat signé.+Vous devez ensuite transmettre cette clef à une autorité de certification comme [[http://​www.startssl.com/​|StartSSL]] ou [[http://​www.cacert.org/​|CAcert]]. Après avoir examiné et accepté votre requête, celle-ci vous donnera un certificat signé.
  
 <​box|Autorités de certification>​ <​box|Autorités de certification>​
-Le système de certification SSL est centralisé autour les autorités de certification. Celles-ci font en général payer une vérification légère ​des l'​identité du demandeur, ce qui serait d'​avantage le travail des États.+Le système de certification SSL est centralisé autour les autorités de certification. Celles-ci font en général payer une vérification légère ​de l'​identité du demandeur, ce qui serait d'​avantage le travail des États.
  
-CAcert est une autorité de certification qui utilise une toile de confiance pour vérifier l'​identité des gens, avec un système de points : les utilisateurs disposant de plus de 100 points peuvent vérifier l'​identité d'​autres utilisateurs pour leur accorder jusqu'​à 20 points. À partir de 50 points, on peut disposer des certificats valables 2  ans. En revanche, cette autorité de certification n'est pas encore reconnue par les grands éditeurs de logiciels.+CAcert est une autorité de certification qui utilise une toile de confiance pour vérifier l'​identité des gens, avec un système de points : les utilisateurs disposant de plus de 100 points peuvent vérifier l'​identité d'​autres utilisateurs pour leur accorder jusqu'​à 20 points. À partir de 50 points, on peut disposer des certificats valables 2 ans. En revanche, cette autorité de certification n'est pas encore reconnue par les grands éditeurs de logiciels.
  
-StartSSL est une autorité de certification traditionnellequi peut délivrer ​gratuitement des certificats valables ​mois. Cette autorité de certification est reconnue par les grands éditeurs de logiciels.+StartSSL est une autorité de certification traditionnelle qui délivre ​gratuitement des certificats valables ​12 mois. Cette autorité de certification est reconnue par les grands éditeurs de logiciels.
 </​box>​ </​box>​
  
-==== Certificat auto-signé ===+==== Certificat auto-signé ​====
  
 Vous pouvez générer en une seule commande une clef privée et un certificat auto-signé :​ Vous pouvez générer en une seule commande une clef privée et un certificat auto-signé :​
-<​code>#​ openssl req -x509 -out certs/​example.com.pem -keyout private/​example.com.key -nodes -utf8</​code>​+<​code>#​ openssl req -new -x509 -out certs/​example.com.pem -keyout private/​example.com.key -nodes -utf8</​code>​
  
 Répondez aux questions sur votre identité et votre lieu, mais précisez bien votre //nom de domaine// comme nom commun (CN). Répondez aux questions sur votre identité et votre lieu, mais précisez bien votre //nom de domaine// comme nom commun (CN).
Ligne 75: Ligne 75:
 Lorsque l'on propose un service sécurisé avec un certificat auto-signé (ou signé par une autorité inconnue), c'est imparable :​ le logiciel client affiche un avertissement de sécurité à propos d'un éventuel risque de falsification de l'​identité du serveur. Lorsque l'on propose un service sécurisé avec un certificat auto-signé (ou signé par une autorité inconnue), c'est imparable :​ le logiciel client affiche un avertissement de sécurité à propos d'un éventuel risque de falsification de l'​identité du serveur.
  
-Ce risque est //​réel//​ :​ à moins de vérifier son empreinte, rien ne garantit que ce certificat est bien celui du serveur que l'on cherche à contacter, et quelqu'​un peut très bien intercepter vos communications. En revanche, souvenez-vous qu'il est toujours préférable de transmettre vos données ainsi que de le faire //en clair//, même si les logiciels client n'​affichent en général //par le moindre avertissement//​ dans ce dernier cas.+Ce risque est //​réel//​ :​ à moins de vérifier son empreinte, rien ne garantit que ce certificat est bien celui du serveur que l'on cherche à contacter, et quelqu'​un peut très bien intercepter vos communications. En revanche, souvenez-vous qu'il est toujours préférable de transmettre vos données ainsi que de le faire //en clair//, même si les logiciels client n'​affichent en général //pas le moindre avertissement//​ dans ce dernier cas.
 </​box>​ </​box>​
  
-==== Utiliser votre certificat ====+==== Certificat couvrant plusieurs noms ==== 
 + 
 +Les certificats SSL couvrent généralement un seul nom de domaine, mais si vous fournissez des services pour plusieurs noms de domaines, vous pouvez utiliser l'​extension SSL //​subjectAltName//​ pour indiquer tous ces noms dans un unique certificat. Avec OpenSSL, cette extension ne peut pas être configurée sur la ligne de commande, et il faut donc modifier le fichier de configuration ''/​etc/​ssl/​openssl.cnf'':​ 
 + 
 +<file ini /​etc/​ssl/​openssl.cnf>​ 
 +[ req ] 
 +… 
 +req_extensions = req_alt_name 
 + 
 +[ req_alt_name ] 
 +subjectAltName = DNS:​www.example.com,​ DNS:​webmail.example.com,​ DNS:​toto.example.com 
 +</​file>​ 
 + 
 +Il faut ensuite générer la requête de certificat ou le certificat auto-signé de la façon habituelle, en veillant bien à fournir un des noms de domaine du ''​subjectAltName''​ comme nom commun (CN), par exemple pour une requête de certificat :​ 
 + 
 +<​code>#​ openssl req -new -out req/​example.com.req -keyout private/​example.com.key -nodes -utf8</​code>​ 
 + 
 +===== Utiliser votre certificat ​=====
  
 Tout d'​abord,​ vérifiez les droits d'​accès à votre clef privée : si le certificat est public, seuls les administrateurs et les logiciels proposant une connexion sécurisée doivent pouvoir lire la clef. Tout d'​abord,​ vérifiez les droits d'​accès à votre clef privée : si le certificat est public, seuls les administrateurs et les logiciels proposant une connexion sécurisée doivent pouvoir lire la clef.
  
 Vous devez maintenant configurer vos serveurs logiciels pour utiliser votre certificat. Par exemple, pour Postfix : Vous devez maintenant configurer vos serveurs logiciels pour utiliser votre certificat. Par exemple, pour Postfix :
-<​file>​smtpd_tls_certificate ​= /​etc/​ssl/​certs/​example.com.pem +<​file>​smtpd_tls_cert_file ​= /​etc/​ssl/​certs/​example.com.pem 
-smtpd_tls_key ​= /etc/ssl/certs/​example.com.key</​file>​+smtpd_tls_key_file ​= /etc/ssl/private/​example.com.key 
 +smtpd_tls_CAfile = /​etc/​ssl/​certs/​class3.pem</​file>​
  
 Certains logiciels ont besoin de charger le certificat et la clef, et parfois même le certificat de l'​autorité depuis un seul fichier : pour cela, concaténez simplement ces fichiers dans un seul : Certains logiciels ont besoin de charger le certificat et la clef, et parfois même le certificat de l'​autorité depuis un seul fichier : pour cela, concaténez simplement ces fichiers dans un seul :
-<​code>#​ cat certs/​example.com.pem private/​example.com.key private/​example.com.bundle</​code>​+<​code>#​ cat certs/​example.com.pem private/​example.com.key ​private/​example.com.bundle</​code>​
services/ssl.1247596588.txt.gz · Dernière modification: Tue Jul 14 20:36:28 2009 par elessar