Utiliser TLSv1.1 et TLSv1.2 sous nginx

Suite à mes 2 précédents billets sur une bonne configuration SSL de son serveur web :

Alléluia, openssl 1.0.1 est enfin marqué stable pour Gentoo. Avec lui, le support de TLS en version 1.1 et 1.2 arrive, lesquels permettent notamment de corriger la fameuse attaque BEAST.

Pour utiliser ces protocoles sous nginx, il suffit juste de compiler openssl, recompiler nginx, redémarrer nginx et le tour est joué 😉

Et maintenant on arrive à la grosse blague du billet : Chrome, que je considère comme l’un des 3 navigateurs majeurs, avec Internet Explorer et Firefox, ne supporte que TLS en version 1.0, lequel est sensible à l’attaque BEAST. Difficile sous ces conditions de désactiver TLS 1.0 et inférieur.

Ci-dessous le score donné par les tests SSL de Qualys de mon serveur web avec TLS v1.0 désactivé par rapport à avant :

qualys_2013

ERRATA : il semble que Chrome, au moins dans sa version 24.0.1312.57, supporte TLS v1.1.

Partager une connexion VPN Windows sous Windows

Soit une connexion VPN définie sur un PC portable Windows. Comment peut-on dans ces conditions accéder à une ressource se trouvant de l’autre côté du tunnel depuis un téléphone mobile ?

Y a qu’à ouvrir le VPN depuis le routeur et non le poste de travail ? Ça a du sens, mais :

  • il faut avoir la main sur le routeur, c’est rarement le cas pour un travailleur nomade
  • il faut que le routeur supporte la technologie utilisée pour monter ce VPN (SSTP par exemple n’est pas très Linux friendly, ou alors si tout simplement on monte le VPN chez soit et qu’on se retrouve donc avec une infâme box d’un FAI)

Une autre solution est de configurer le VPN sur le smartphone ou la tablette, là encore il faut étudier la faisabilité technique. En général, ça ne passe pas.

Une solution qui fonctionne en toute autonomie est le partage de connexion internet avec une petite configuration en plus.

Le VPN est vu par Windows comme une nouvelle interface réseau. En configurant à l’avance une route statique vers les ressources mises à disposition par le VPN, le partage de connexion entre le Wi-Fi du PC portable et l’interface VPN va permettre au téléphone d’accéder au VPN.

On ajoute la route dans un prompt élevé comme suit :

route add [net] mask [mask] 0.0.0.0 metric [a low value] if [vpn interface number]

où :

  • net  et mask  permettent de désigner les ressources distantes. Si ces ressources vont de l’IP 172.16.8.0 à 172.16.9.255, alors net  vaudra 172.16.8.0 et mask  vaudra 255.255.254.0
  • la métrique doit être une valeur basse afin d’être prioritaire
  • le numéro d’interface du VPN est obtenu en tapant la commande route print . Le premier tableau liste toutes les interfaces préfixées par leur identifiant.
  • la passerelle, qui peut être dynamique, doit donc être considérée comme inconnue. C’est ce qu’on indique par 0.0.0.0 .