NGINX tls 1.3

Sécuriser HTTPS – NGinx

L’ami Angristan a posté un excellent billet il y a quelques semaines consacré à la configuration HTTPS sur NGinx. Son billet a fini de me convaincre de rédiger un petit mémo expliquant comment mieux sécuriser HTTPS puisque, comme il le dit si bien, « HTTPS ne se résume pas avoir avoir le cadenas vert dans votre navigateur! ». J’ai donc décidé de pousser le vice un peu plus loin.

Streisand – Installer un serveur anti-censure

Streisand est un outil vous permettant d’installer et configurer un serveur anti-censure rapidement et simplement.

 

 

Introduction à Streisand

Streisand vous permet d’installer une variété d’applications, luttant contre la censure sur internet en une seule de commande, qui masqueront et chiffreront votre trafic internet.

Pour cela vous aurez besoin de deux ordinateurs / serveurs.

  1. Le serveur maître qui servira à installer Streisand (Linux, BSD, Mac)
  2. Le serveur esclave sur lequel le package applicatif sera installé (Ubuntu 14.04 seulement)

Streisand supporte nativement les instances Amazon EC2, DigialOcean, Google Compute Engine, Linode et Raskspace. Vous pouvez bien entendu aussi l’installer sur n’importe quel ordinateur / serveur supportant Ubuntu 14.04.

Le processus de configuration et d’installation est automatique et ne dure qu’une dizaine de minutes. Cela peut vous paraître assez long mais lorsque l’on considère le nombre d’applications installées et configurées c’est en fait bien peu.

NGINX tls 1.3

Installer HTTP2 et le protocole ALPN sur Apache2

Après avoir publié différents articles concernant l’installation du protocole HTTP2 et ALPN sur NGinx je vais ici vous expliquer comment installer HTTP2 et le protocole ALPN sur Apache2 sous Debian Jessie.

Vous allez rapidement vous apercevoir que cette méthode est bien plus rapide et facile puisqu’elle ne nécessite aucune compilation.

NGINX tls 1.3

Installer configurer et renouveler automatiquement un certificat SSL Let’s Encrypt

Let’s Encrypt est passé depuis quelques temps déjà en beta publique. Vous pouvez donc obtenir rapidement mais surtout gratuitement des certificats SSL pour vos domaines et sous domaines. Contrairement à START SSL vous pouvez gratuitement modifier vos certificats pour y inclure de nouveaux sous-domaines et tout cela directement en ligne de commande. Cependant deux petits bémols : vous ne pouvez pas pour le moment obtenir de certificat wilcard, vous devez donc indiquer tous les sous domaines sur lesquels vous souhaitez utiliser HTTPS, et ces certificats ne sont valables que 90 jours. Je vais donc ici vous expliquer comment vous pouvez assez facilement installer configurer et renouveler automatiquement un certicat SSL Let’s Encrypt.

NGINX tls 1.3

Activer le support du protocole ALPN sur NGinx

Par défaut lorsque vous compilez NGinx vous utilisez l’une des versions 1.0.1 d’OpenSSL cependant les librairies OpenSSL ne supportent le protocole ALPN que depuis les versions 1.0.2. C’est l’extension TLS NPN qui est alors utilisée ce qui se révélera problématique puisque Google a annoncé le 11 Février 2016 que Chrome ne supporterait plus le protocole NPN à partir du 15 Mai 2016. Je vais donc dans ce billet vous expliquer comment vous pouvez activer le support du protocole ALPN sur NGinx.

NGINX tls 1.3

Installer NGinx avec PageSpeed et HTTP 2 – MAJ

Dans le billet précédent j’ai expliqué qu’il était assez simple, c’est à dire sans compilation, d’installer NGinx avec pagespeed. Cependant NGinx depuis la version 1.9.5 (à l’heure ou j’ecris ce billet nous en sommes à la 1.9.12) prend en charge HTTP 2. Cependant je souhaitais installer NGinx avec PageSpeed et HTTP 2 puisque les gains de performances avec cette nouvelle performance du procotole HTTP semblent assez bluffants.

Malheureusement ici le dépot dotdeb ne nous sera d’aucune utilité puisque celui-ci ne permet que l’installation de NGinx 1.8.1. Nous allons donc devoir compiler NGinx afin d’ajouter le support du module pagespeed, la procédure est donc plus compliquée qu’une installation basique mais reste acceptable.

 

Avant de commencer je vous conseille d’effectuer ces opérations sur votre ordinateur (via une machine virtuelle si vous êtes sous Windows)

NGINX tls 1.3

Installer NGinx avec PageSpeed sous Debian

NGinx contrairement à Apache ne prend pas en charge l’ajout de modules à chaud, cela signifie que si vous souhaitez ajouter un nouveau module à votre instance NGinx vous devez télécharger les sources de NGinx et le compiler avec votre nouveau module. Il existe cependant plusieurs versions du paquet NGinx dans les dépôts Debian, malheureusement aucune d’entre elles ne vous permettra d’installer NGinx avec PageSpeed.