diff --git a/HowtoSSL.md b/HowtoSSL.md
index dbfd259a..380aecad 100644
--- a/HowtoSSL.md
+++ b/HowtoSSL.md
@@ -3,32 +3,33 @@ title: Howto SSL
categories: security web
...
-SSL (Secure Sockets Layer) est un protocole de sécurisation des échanges réseau.
-Cela se base sur un principe de clé privée et clé publique (certificat) signée par une autorité.
-On parle désormais de SSL/TLS car les normes récentes ont renommé SSL en TLS (Transport Layer Security).
+SSL (*Secure Sockets Layer*) est un protocole de sécurisation des échanges réseau.
+Cela se base sur un principe de clé privée et clé publique (certificat) signée par une autorité de certification.
+On parle désormais de **SSL/TLS** car les normes récentes ont renommé SSL en TLS (*Transport Layer Security*).
## Gestion clé privée / certificat
-### Générer un .csr
+### Générer une demande de certificat (CSR)
+
+Pour générer une clé privée non chiffrée (private.key) et sa demande de certificat associé (demande.csr) à transmettre à une autorité de certification :
-Pour générer une clée privée non chiffrée (private.key) et sa demande de certificat associé (demande.csr) à transmettre à une autorité de certification :
~~~
$ openssl req -newkey rsa:2048 -sha256 -nodes -keyout private.key -out demande.csr
~~~
-À des fins "pédagogiques", on peut découper en 2 étapes, à savoir la génération de la clé privée (non chiffrée) et la demande de certificat :
+À des fins pédagogiques, on peut découper la cette génération en 2 étapes, à savoir la génération de la clé privée et la demande de certificat :
~~~
$ openssl genrsa -out private.key 2048
$ openssl req -new -sha256 -key private.key -out demande.csr
~~~
-Pour générer une demande de certificat à partir d'un certificat existant (certificate.crt) :
+Pour générer une demande de certificat à partir d'un certificat existant (certificat.crt) :
~~~
-$ openssl x509 -x509toreq -sha256 -in certificate.crt -out demande.csr -signkey private.key
+$ openssl x509 -x509toreq -sha256 -in certificat.crt -out demande.csr -signkey private.key
~~~
### Générer un certificat auto-signé
@@ -48,7 +49,7 @@ Note : sous Debian, pour regénérer le certificat *snakeoil* (certificat autog
### Générer un certificat multi-domaines avec subjectAltName
-Un certificat avec **subjectAltName** permet d'ajouter des noms de domaine secondaires (*subjectAltName*) en plus du nom de domaine principal (*Common Name*), ce qui est supporté par 99.9% des navigateurs récents.
+Un certificat avec **subjectAltName** permet d'ajouter des noms de domaine secondaires (*subjectAltName*) en plus du nom de domaine principal (*Common Name*), ce qui est supporté par 99.9% des navigateurs récents (mais cela coûte cher chez les autorités de certification).
Modifier une copie du fichier `/etc/ssl/openssl.cnf` avant de générer le certificat pour :
@@ -88,6 +89,7 @@ Verifying - Enter PEM pass phrase:
### Changer le mot de passe d'une clé privée
Il suffit de répéter les 2 étapes ci-dessus :
+
~~~
$ openssl rsa -in private.pem -out private.key
$ openssl rsa -in private.key -des3 -out private-new.pem
@@ -211,7 +213,7 @@ Pour un service en HTTPS avec l'option SNI qui permet d'envoyer un nom de domain
$ openssl s_client -CApath /etc/ssl/certs -servername ssl.example.com -connect 192.0.2.42:443
~~~
-**Le certificat est conforme avec votre base locale de certificats CA si l'on obtient Verify return code: 0 (ok)**
+**Le certificat est conforme avec votre base locale de certificats CA si vous obtenez `Verify return code: 0 (ok)` **
Si le code de retour est différent de 0, le certificat n'est pas conforme pour différentes raisons :
@@ -237,37 +239,41 @@ D'autres outils également utiles :
État du marche en 2015 :
-Pour louer un certificat lié à **UN** nom de domaine :
+Pour louer un certificat lié à **UN** enregistrement DNS :
-* 0 EUR/ an : Let's Encrypt
-* 0 EUR/ an : StartSSL Free :
-* 6 EUR/ an : Comodo PositiveSSL :
-* 12 EUR/ an : Gandi SSL standard :
-* 99 EUR/ an : Thawte SSL123 :
+* 0 EUR/an : Let's Encrypt
+* 0 EUR/an : StartCom/StartSSL Free :
+* 8.20 EUR/an : Comodo PositiveSSL :
+* 12 EUR/an : Gandi SSL standard :
+* 129 EUR/an : Thawte SSL123 :
-* 65 EUR/ an : Comodo PositiveSSL : http://www.namecheap.com/ssl-certificates/comodo/positivessl-wildcard-certificate.aspx
-* 120 EUR/ an : Gandi SSL standard : http://www.gandi.net/ssl/standard
-* 449 eur/ an : Thawte SSL Wildcard : http://www.thawte.fr/ssl/wildcard-ssl-certificates/
+Pour louer un certificat « wildcard » (pour une infinité de sous-domaines du type `*.example.com`) :
+
+* 85.62 EUR/an : Comodo PositiveSSL :
+* 120 EUR/an : Gandi SSL standard :
+* 449 EUR/an : Thawte SSL Web Server Wildcard :
Pour louer un certificat multi-domaines :
-* Thawte
+* 40 EUR/an (pour 3 enregistrements DNS) et jusqu'à 210 EUR/an (30 enregistrements DNS) :
+* 129 EUR + <99 EUR/an : Thawte SSL123 avec SAN :
Pour louer un certificat EV :
-* Gandi
-* Thawte
+* 249 EUR/an : Thawte SSL Web Server avec EV :
-### À propos de StartSSL
+### À propos de StartCom/StartSSL
-Il faut noter que *StartSSL Free* est bien gratuit mais a plusieurs inconvénients :
+Il faut noter que l'offre *StartStartSSL Free* de StartCom est bien gratuite mais il y a plusieurs inconvénients :
-* suite à des problèmes (TODO: mettre liens) Firefox envisage de supprimer les certificats CA de StartSSL en XXXX (TODO: mettre date et liens de référence)
+* StarCom/StartSSL a été [racheté en 2016 par l'autorité de certification chinoise WoSign](https://www.wosign.com/english/News/WoSign_completed_equity_investment_to_StartCom_CA.htm) qui [a de nombreux problèmes selon la fondation Mozilla](https://wiki.mozilla.org/CA:WoSign_Issues)... ce qui a pour conséquence que [Mozilla envisage de retirer les certificats CA de StartSSL](https://groups.google.com/forum/?nomobile=true#!topic/mozilla.dev.security.policy/BV5XyFJLnQM), notamment [Firefox 51 devrait bannir les certificats émis par StartCom/StartSSL à partir du 21 octobre 2016 !!](https://bugzilla.mozilla.org/show_bug.cgi?id=1311832)
* les certificats gratuits mentionnent les informations personnelles de la personne physique qui a créé le compte
* la gestion du renouvellement est lourde (votre compte expire tous les ans, et vous ne pouvez le renouveler que quelques jours avant...)
* vous pouvez créer uniquement des certificats liés à la personne physique qui a créé le compte (nom de domaine qui vous appartient personnellement ou appartient à votre société) : si vous créez plusieurs certificats pour le compte d'autres sociétés (vos clients par exemple) StartSSL finira pas rejeter vos demandes et vous devrez créer un compte pour chaque société
* la révocation d'un certificat est payante (environ 20 EUR)
-* différents problèmes et bugs, voir FAQ
+* différents problèmes et bugs, voir [#FAQ]()
+
+L'avantage de StartSSL est que pour 150 EUR/an, vous pouvez obtenir la validation « Organization » (après une lourde procédure de vérifications) et créer ensuite une infinité de certificats Wildcard valables 3 ans.
### À propos de Let's Encrypt
@@ -276,16 +282,33 @@ Il faut noter que *StartSSL Free* est bien gratuit mais a plusieurs inconvénien
## Sécurité et qualité des certificats
-Faille
-Apache
-Nginx
-A+ sur SSL LABS
+### Failles de sécurité
+
+TODO
+
+#### Faille PODDLE
+
+TODO
+
+#### Faille FREAK
+
+TODO
+
+### Avoir A+ sur SSL LABS
+
+#### Configuration Apache
+
+TODO
+
+#### Configuration Nginx
+
+TODO
## FAQ
-### Erreur "The OCSP server has no status for the certificate" avec nouveau certificat StartSSL
+### Erreur "The OCSP server has no status for the certificate" avec StartSSL
-Suite à la mise en place d'un certificat délivré par StartSSL, vous obtenez une erreur du type "An error occurred during a connection to ssl.example.com. The OCSP server has no status for the certificate. (Error code: sec_error_ocsp_unknown_cert) ?
+Suite à la mise en place d'un nouveau certificat délivré par StartSSL, vous obtenez une erreur du type "An error occurred during a connection to ssl.example.com. The OCSP server has no status for the certificate. (Error code: sec_error_ocsp_unknown_cert) ?
StartSSL semble mettre entre 6 et 12h à propager ses nouveaux certificats sur son serveur OCSP. Il faut donc patienter…
@@ -293,7 +316,14 @@ StartSSL semble mettre entre 6 et 12h à propager ses nouveaux certificats sur s
Il y a un bug avec l'interface d'administration StartSSL avec Firefox (Firefox embarque un mauvais certificat). Voir le bug report et une solution temporaire :
-Il faut supprimer le certificat "StartCom? Certification Authority" de l'autorité StartCom de type "Securité personne" (Software Security Device) dans les préférences de Firefox (Avancée --> Certificat).
- Certificat). Voir
Une autre "astuce" est d'utiliser un autre navigateur…
+
+### Ajouter des certificats CA sous Debian
+
+Afin d'ajouter des certificats CA il faut copier les fichiers .crt dans `/usr/local/share/ca-certificates/` puis exécuter :
+
+~~~
+# dpkg-reconfigure ca-certificates
+~~~