ReLoad

Thierry Jaouen ~ WikiBlog
"Rien à foutre d'être lu, tant que je peux me relire."

Outils pour utilisateurs

Outils du site


blog:2015:09:25:startssl_premiers_pas

StartSSL : Premiers pas ...

Je n'avais jamais essayé de faire signer mes clés de chiffrement par une autorité reconnue…

Une “autorité” est dite “reconnue” , lorsque la plupart des navigateurs (“browsers”) la reconnaissent nativement comme une “autorité de confiance” pouvant signer des clés.

Encore un Oligopole ;-)

Après quelques recherches, la meilleure autorité me paraît être: StartSSL

Et oui: c'est aussi la moins chère.

:!: A voir aussi: https://wosign.com (sa petite sœur chinoise)

Mais d'après les professionnels de la profession, le prix n'a aucune importance en la matière, donc autant choisir l'entreprise la moins chère, qui a plutôt bonne réputation, et un peu d'expérience.

Je découvre et note mes découvertes au fur et a mesure…

~~READMORE~~

Ouverture d'un compte

Lors de la procédure d'ouverture du compte, “StartSSL.com” injecte un certificat dans votre navigateur: ce certificat est votre clé d'accès a votre interface (“Control Panel”).

Comme une andouille, j'ai commencé la procédure sur mon smartphone, et puis plus tard, j'étais bien en peine pour me connecter à mon compte à partir de mon Minitel ;-)

Passons.

Il faut saisir un compte e-mail valide, et puis attendre que tout les filtres anti-spam soient franchis avec succès…

Après quelques longues minutes , on reçoit un mail contenant le code secret à faire valider dans le navigateur.

Ceci fait, le fameux certificat est injecté dans votre navigateur et vous pouvez voir une magnifique interface….

:!: Exporter immédiatement ce certificat, et protéger le. C'est important.

Mes clés

StartSSL.com” vous propose de créer des clés pour vous.

Si vous avez déjà des clés, c'est inutile.

Si vous n'en avez pas et que vous êtes habile de vos doigts, autant les créer soi-même…

Créer ses clés

# export MONDOMAINE="thierry-jaouen.fr"

La clé privée, le fameux “.key” :

# openssl genrsa -des3 -out $MONDOMAINE.key 2048

Il faut choisir une “pass-phrase”, qu'on va se faire un plaisir de virer.

# chmod 0600 $MONDOMAINE.key

Virer la “pass-phrase” :

# mv $MONDOMAINE.key $MONDOMAINE.key-passphrase
# openssl rsa -in $MONDOMAINE.key-passphrase -out $MONDOMAINE.key
# chmod 0600 $MONDOMAINE.key

Créer son propre CSR

On a une clé privée, et à partir de ce matériel, on va créer un “certificat de demande de signature”.

( CSR = Certificate Signing Request )

# export MONDOMAINE="thierry-jaouen.fr"
# export MONSUJET="/C=FR/ST=France/L=Paris/O=Eez.fr/OU=www/CN=$MONDOMAINE/emailAddress=ca@eez.fr"
:!: En fait “StartSSL.com” va ignorer ce sujet, mais c'est toujours intéressant de voir comment on ajoute un sujet ;-)

Le “.csr” :

# openssl req -new -sha256 -key $MONDOMAINE.key -out $MONDOMAINE.csr -batch -subj $MONSUJET

Voir le rendu:

# openssl req -in $MONDOMAINE.csr -noout -text

C'est le contenu de ce “.csr” qu'on faire signer par “StartSSL.com”.

Signer les clés

C'est gratuit pour faire signer un domaine avec 1 seul sous domaine.

Par exemple, moi c'est :

thierry-jaouen.fr
www.thierry-jaouen.fr

Sachant cela, on peut poursuivre en faisant signer le contenu du “.csr” par “StartSSL.com”.

En retour, dans la même interface, on peut voir le contenu d'un fichier “.crt” .

On fait un copier/coller en direction d'un fichier, pour moi c'est:

thierry.jaouen.fr-startssl.crt

On peut examiner son contenu et s'apercevoir qu'effectivement, le “Subject” a été ignoré ;-)

# openssl x509 -in thierry-jaouen.fr-startssl.crt -noout -text

Intermédiaire

C'est fini ?

Pas tout à fait.

Après un passage par “ssllabs.com”, je vois un avertissement qui fait baisser ma note a “B” …
J'ai toujours:

Chain issues	                  Incomplete, Extra certs

Il manque un certificat “intermédiaire” a coller dans son certificat signé…

Selon la classe de certificat, on récupère l'un des 3 fichiers suivant:

  • sub.class1.server.ca.pem
  • sub.class2.server.ca.pem
  • sub.class3.server.ca.pem

Dans mon cas, le certificat “gratos”, c'est la “classe 1”.

Donc:

$ wget https://www.startssl.com/certs/sub.class1.server.ca.pem

Ensuite, on créé un “bundle unified” ainsi.

# cat thierry-jaouen.fr-startssl.crt sub.class1.server.ca.pem > thierry-jaouen.fr-startssl-unified.crt

Sources:

En pratique

Nginx

server {
  listen 10.4.4.4:80;
  listen 10.4.4.4:443 ssl;

  server_name .thierry-jaouen.fr;

  ssl_certificate /etc/nginx/ssl/thierry-jaouen.fr-startssl-unified.crt;
  ssl_certificate_key /etc/nginx/ssl/thierry-jaouen.fr.key;

  # etc... j'ai largement simplifié.
        
  location / {

    proxy_pass http://192.168.1.123:80/;
    access_log off;

  }

}

Apache

Conclusion

Même si le cadenas reste “grisé” sous Firefox,
j'ai gagné un “A” chez Qualys SSL Labs : https://www.ssllabs.com/ssltest/

Voila.

blog/2015/09/25/startssl_premiers_pas.txt · Dernière modification : 2015/10/07 18:47 de thierry