Installation de certificat SSL Gandi avec Pound

Le certificat SSL

Le Secure Sockets Layers abrégé en SSL permet de sécuriser des flux d’informations sur internet.
La norme est standardisée et fonctionne sur le principe de la  cryptographie à clé publique.
Nous travaillerons avec la version libre de SSL appelée OpenSSL.

Le certificat SSL permet d'établir la confiance entre vous (votre site internet) et vos visiteurs.
On le remarque avec l’icône "active" du cadenas et par le protocole « https » dans le navigateur.
Il existe plusieurs types de certificats SSL représentant des niveaux de confiance différent !

Pour informations chaque navigateur utilise une icône et des couleurs différentes, voir FAQ :

Un exemple : mon site internet

Mon site internet utilise par exemple un certificat vérifié, signé par l'autorité  : gandi.net !
Un cadenas gris apparaît donc en haut à gauche de l'URL de mon site internet ce qui prouve que :

  • Le domaine a été vérifié et il prouve que je possède le nom de domaine et qu'il n'est pas falsifié !
  • Il vous assure aussi que la connexion est chiffrée et signifie qu'aucune personne malveillante ne peut l'espionner et vous subtilisez vos informations de connexion. (arrive prochainement)
  • Le cadenas gris nous indique :  actuellement connecter sur le site : kassianoff.fr

Si vous souhaitez posséder un certificat SSL valide chez Gandi rendez-vous ici : Gandi SSL
J'utilise depuis le 12 aout 2014 : un certificat SSL standard à 14,40€ par an sur kassianoff.fr.

Pourquoi mon blog utilise un certificat SSL ?

Aujourd'hui, plusieurs facteurs  m'ont motivé dans l'achat annuel d'un certificat chez Gandi.
Bien sûr il y a les raisons évoquées plus haut ! Et ma volonté de continuer à blogger sur le site !
Le site est consulté en large partie par des internautes passionnés par le monde de la Tech, ce sont des personnes qui comprennent  l'internet et les besoins actuels de chiffrement !
Dans la continuité de mon travail, il serait impensable de ne pas vous remercier par vos visites (toujours plus importante chaque mois !) et l'achat d'un certificat SSL et mon moyen de vous dire : merci ! Gandi est un gage de confiance que j'ai sélectionné pour nous car ils sont au cœur du web français et se démarque par la qualité de leurs services liés à l'internet global ainsi que par leurs différentes missions.
Dans un second temps, je souhaite optimiser mon référencement sur le moteur de Google qui va pénaliser les sites mal sécurisés.  Vous savez tout désormais !

Il est maintenant temps de passer à l'installation d'un certificat SSL Gandi sur Pound 2.6 !

Achat d'un certificat SSL Gandi

Les étapes ci-dessous expliquent comment posséder un certificat SSL Gandi "une adresse".
Gandi propose un wiki extrêmement bien conçu à cette adresse : Gandi Wiki SSL. (utilisez-le !)

L’étape importante est de bien générer la clé privée RSA (.key) et la demande de certificat (.csr) :

openssl req -nodes -newkey rsa:2048 -keyout www.kassianoff.key -out www.kassianoff.csr

Des questions apparaissent pour la génération de notre ".csr" telles que :

Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:Rhone-Alpes
Locality Name (eg, city) []: VALENCE
Organization Name (eg, company) [Internet Widgits Pty Ltd]:kassianoff
Organizational Unit Name (eg, section) []:IT
Common Name (eg, YOUR name) []: kassianoff.fr
Email Address [] postmaster@kassianoff.fr

Important : le Common Name correspond à mon domaine ou sous domaine à protéger.
Vous remarquez,  le www est forcement protégé chez Gandi et le certificat est gratuit la 1er année !

Nous affichons désormais le ".csr" afin de le copier/coller chez Gandi lors de la création du certificat :

cat www.kassianoff.csr
-----BEGIN CERTIFICATE REQUEST-----
...encrypted text...
-----END CERTIFICATE REQUEST-----

Maintenant rendez-vous sur l'interface Gandi et commandez votre certificat SSL "une adresse" !
Il suffit de cliquer sur "Valider" puis de suivre les étapes suivantes qui sont très simple.
Plusieurs méthodes de vérification sont disponibles, j'ai utilisé la méthode par mail.
Vous devez avoir une adresse mail active en "admin@votre_domaine.tld" pour valider !
Ensuite, l’email contient un lien qui redirige vers Comodo avec une clé a caractère à fournir.

Puis, il faut attendre ~1h pour la création de notre certificat pour pouvoir l'utiliser et le récupérer.
Rendez-vous dans l'interface client de Gandi dans SSL > www.kassianoff.fr puis "récupérer" tel que :

Visualisation du certificat

Voici le certificat actuellement en cours :

  • Télécharger le certificat
  • Télécharger l'intermédiaire

Je vous invite à récupérer les deux éléments et à les transférer vers votre serveur Linux !

Configuration du certificat Gandi sur Pound 2.6

La configuration d'un certificat sur Pound me semble intéressante car, tout est dans un ".pem".
De plus, la souplesse de gestion des certificats avec un reverse proxy est très agréable !
J'avais présenter Pound sur l'article suivant : Installation des proxy inverses Pound et Varnish

On retrouve donc dans notre serveur trois fichiers importants pour la création du certificat :

  • www.kassianoff.key : la clé privée.
  • certificate-62460.crt : le certificat fournit par Gandi.
  • GandiStandardSSLCA.pem : le certificat intermédiaire fournit par Gandi.

Pound ne gère pas directement les formats ".key, ".crt" et ".pem" séparément !
Il faut regrouper l'ensemble dans un unique fichier ".pem" que nous appellerons : "www.kassianoff.pem"

  1. nano /etc/pound/ssl/www/www.kassianoff.Pem
  2. -----BEGIN RSA PRIVATE KEY----
    ...encrypted text : www.kassianoff.key...
    -----END RSA PRIVATE KEY-----
    -----BEGIN CERTIFICATE-----
    ...encrypted text : certificate-62460.crt...
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    ...encrypted text : GandiStandardSSLCA.pem...
    -----END CERTIFICATE-----
  3. On enregistre le certificat Gandi.
  4. On configure Pound depuis le chemin : "nano /etc/pound/pound.cfg"
  5. ListenHTTPS
            Address 192.168.0.2
            Port 443
            Cert "/etc/pound/ssl/www/www.kassianoff.pem"
            AddHeader "X-Forwarded-Proto: https"
            ## allow PUT and DELETE also (by default only GET, POST and HEAD)?:
            xHTTP           2
            Service
                    BackEnd
                            Address 127.0.0.1
                            Port    80
                    End
            End
    End
  6. Redémarrer Pound :
    /etc/init.d/pound restart
    

Le certificat SSL est correctement configuré sur Pound et votre site est accessible en HTTPS !
Vous savez désormais : configurer et installer votre certificat SSL Gandi sur Pound.

Pour toutes autres remarques liées à la migration de mon site en HTTPS, laissez un commentaire !

Commentaires