Adieu RFC 2817, bonjour RFC 3546

L’an dernier, ayant lu les docs Apache 2.2 dans un moment d’égarement, je parlais des extensions RFC 2817 du module SSL permettant de ne plus multiplier les adresses IP (maintenant de plus en plus rares en v4) lorsqu’on héberge plusieurs serveurs web sécurisés sur une même machine, une plaie avec https. On attendait alors la sortie de Firefox 3.

Celui-ci étant maintenant arrivé depuis un bon moment, je me suis réattaqué ce soir à la question, titillé par un article récent de Stéphane consacré à la légèreté proverbiale de X509.

Eh bien… j’avais tout faux. Firefox 3 ne supportera pas l’extension RFC 2817, car elle n’est pas adaptée à la question. À la place, il s’avère que la RFC 3546 décrit l’extension Server Name Indication, qui est non seulement prévue pour cela mais supportée depuis belle lurette par les navigateurs un peu modernes.

J’ai donc fait un essai sur https://www.eu.org/ et https://eu.org/ (certificat racine ici), et ça semble marcher au moins avec Firefox 2, Firefox 3 et Konqueror 4 (et en IPv6 s’il vous plaît). Il paraît que ça fonctionne même avec Internet Explorer 7 et Opera 8 ; il ne manque que Safari.

Il faut tout de même installer mod_gnutls car mod_ssl attend la version 0.99 d’OpenSSL pour être capable de gérer ce genre de négociation.

Les incantations nécessaires dans la configuration Apache ne sont pas franchement compliquées :

NameVirtualHost *:443
<VirtualHost _default_:443>
  ServerName eu.org
  GnuTLSEnable On
  GnuTLSKeyFile eu.org.key
  GnuTLSCertificateFile eu.org.crt
  [...]
</VirtualHost>
<VirtualHost _default_:443>
  ServerName www.eu.org
  GnuTLSEnable On
  GnuTLSKeyFile www.eu.org.key
  GnuTLSCertificateFile www.eu.org.crt
  [...]
</VirtualHost>

13 thoughts on “Adieu RFC 2817, bonjour RFC 3546”

  1. OB : Arf ! Merci ! (je comprends que c’est pas la jungle avec Safari 🙂

  2. Stéphane: si on lui donne plusieurs nom au certificat (méthode ?), alors le client sera content si au moins un des nom correspond ?

  3. @Phil Regnauld: oui,c ‘est justement ce qu’expliquait mon article. Au lieu de « trouver le bon certificat », c’était, « faire un certificat attrape-tout ».

  4. Olivier Tharan : Tu es sérieux ? Parce que mon WordPress est configuré comme ça 🙂

  5. Olivier Tharan : je peux comprendre, mais est-ce vraiment si ennuyeux de venir sur le site pour lire l’article ? J’ai préféré cette configuration pour avoir des hits directs des lecteurs.

  6. Je viens de tester la méthode « ceinture et bretelles ». SNI (avec mod_gnutls) pour aiguiller vers le bon et donc le bon certificat puis certificats multi-noms dans le pour attraper les clients non-SNI (ce qui semble être le cas du client Subversion en ligne de commande).

    Ça marche très bien. Merci à tous.

    Les certificats multi-noms ont une autre utilité par rapport à SNI : le cas des ServerAlias. Par exemple :

    ServerName svn.generic-nic.net
    ServerAlias svn.rd.nic.fr

    (Normalement, le domaine au dessus marche si vous voulez tester. Le certificat de la CA est en https://www.generic-nic.net/PKI/)

  7. Avec une éternité de retard, mais en accord avec les dire d’Olivier : oui, c’est vraiment pénible de devoir venir sur un site pour faire des “hits”. Ce qui intéresse les gens en rss, c’est de gagner du temps et d’avoir une information pertinente, pas d’aller sur les sites, ce qui fait perdre beaucoup de temps. Si je devais le faire pour chacun des sites que j’ai en rss pour chacun des articles, ça aurait vraiment très peu de sens d’avoir ce genre de technologies.

  8. jpgaulier: Je préfère l’idée d’être maître de mes logs (donc, potentiellement, de mes stats d’accès, même si je n’en fais pas actuellement) à celle de les livrer à tel ou tel agrégateur RSS. Le fil RSS comporte le début de l’article et est généralement largement suffisant pour savoir rapidement si on désire le lire en intégralité ou pas.

    En tant qu’utilisateur, je trouve pénible la lecture de longs articles dans un fil RSS. Le site d’origine est généralement le mieux placé pour présenter le contenu correctement. Plus l’article est long, plus on a de chance que les formatages particuliers qui en facilitent la lecture soient altérés par l’agrégateur.

Comments are closed.