https sous Apache – Même à l’école je n’ai jamais eu un A

Dessin laptop avec une loupe où il est écrit "Tuto"

https sur serveur Ubuntu facile

Depuis fin décembre le blog est enfin en accès https… Je devais le faire aux vacances de Pâques 2016, j’avais repoussé à juillet, puis aux vacances de la Toussaint.

Oui, je suis un fervent adepte de la procrastination, je suis de ceux qui remettent au sur-lendemain dans l’espoir qu’un autre le fera demain. Mais là, je dois me rendre à l’évidence, jamais personne ne le fera à ma place. Je l’ai donc fait entre Noël et le Jour de l’An.

Une fois fini, je fais un petit test sur SSL Server Test… Et là, j’ai un A!
Certains diront, et à raison, Let’s Encrypt c’est pas non plus le top du top… Ok, mais m@rd@ alors! P#tain j’ai un A! Même à l’école j’ai jamais eu un A, alors laissez-moi savourer ce A.
Je vous mets la capture d’écran pour me la péter vous montrer et ensuite on passe à la configuration.

Résultat d'audit SSL affichant une note globale « A » avec des scores élevés pour le certificat, le support de protocole, l'échange de clés et la force de chiffrement.
Un serveur Apache sécurisé avec Let’s Encrypt obtient la note « A » au test SSL de Qualys SSL Labs.

Ubuntu server 16.04 sous apache

https sous apaches avec Let’s Encrypt

Je commence par installer « git » sur /opt/

sudo -s
apt-get install git
git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt --depth=1

→ « sudo -s » Je ne sais pas combien de sudo je vais devoir taper, sans doute plus de trois, alors « sudo -s »
→ « –depth=1 » Je ne souhaite pas récupérer tout l’historique du site.

Générer les certificats

/opt/letsencrypt/letsencrypt-auto --apache -d domaine.fr -d www.domaine.fr

Si vous avez plusieurs domaines, sinon vous pouvez faire simplement:

/opt/letsencrypt/letsencrypt-auto

Configurer le VirtualHost pour l’accès https

Allez dans /etc/apache2/sites-available et modifier les VirtualHost

cd /etc/apache2/sites-available
nano votredomaineSSL.fr

La configuration que j’ai mise

<VirtualHost *:443>
   ...
      SSLProtocol -ALL -SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2
      SSLHonorCipherOrder On
      SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS

      SSLEngine on
      SSLCertificateFile /etc/letsencrypt/live/domaine.fr /fullchain.pem
      SSLCertificateKeyFile /etc/letsencrypt/live/domaine.fr /privkey.pem
   ...
</VirtualHost>

Configurer le VirtualHost http pour une redirection https

cd /etc/apache2/sites-available
nano votredomaine.fr

La configuration que j’ai mise

<VirtualHost *:80>
...
      RewriteEngine on
      RewriteRule ^ https://www.chispa.fr%{REQUEST_URI} [L,QSA,R=permanent]
...
</VirtualHost>

Renouvellement du certificat

ATTENTION, le certificat n’est valable que 90 jours. On peut le renouveler avec la commande:

/opt/letsencrypt/letsencrypt-auto --apache --renew-by-default -d domaine.fr -d www.domaine.fr

Le mieux est de rendre automatique le renouvellement, heureusement Erika Heidi a créer un script pour nous, il s’agit de le-renew.sh
Je l’ai récupéré, rendu exécutable et mis dans la crontab

curl -L -o /usr/local/sbin/le-renew http://do.co/le-renew
chmod +x /usr/local/sbin/le-renew
crontab -e
0 6 * * 1 /usr/local/sbin/le-renew domaine.fr >> /var/log/le-renew.log

Chaque lundi à 6:00, la validité du certificat en question sera vérifié, s’il est toujours valable, au cas contraire il demandera le renouvellement.

Bon, normalement en bon « copiteur » vous aurez un A, et si en plus vous améliorez, je ne vous en parle même pas! Un A+ ou A++.

7 réflexions sur « https sous Apache – Même à l’école je n’ai jamais eu un A »

  1. Bonjour,

    Forcer la connexion en https avec une règle de réécriture n’est pas optimal. Il est préférable d’utilser tout simplement une rediction permanente :

    Redirect permanent / https://example.com

    Sinon pour utiliser facilement Let’s Encrypt en fonction de sa distribution et de son serveur web : https://certbot.eff.org/

    Et pour générer facilement une configuration TLS la plus sécurisée possible : https://mozilla.github.io/server-si

  2. @Bruno : En effet, je vais plutôt faire une redirection qu’une réécriture. SohKa connaissait un des liens, moi, je n’en connaissais aucun des deux. Merci ! Ces 2 liens m’auraient facilité la vie.

  3. Hello, si tu veux tester plus en profondeur ton https :
    https://tls.imirhil.fr/

    Il retrace tout les protocoles utilisé via ton HTTPs, qui te permettra de le securisé au mieux.

    Ps : Désactive vite le DES3 dans tes suites cipher !!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *