SNI ist eine tolle Sache. Damit kann man nämlich Webserver betreiben, die mehrere SSL-Seiten auf einer IP, und einem Port hosten. Normalerweise braucht man ja immer eine Extra-IP pro SSL-Seite, da der Browser sonst mit dem Zertifikat nicht zurecht kommt. Mitfhile von SNI teilt der Browser dem Webserver erst mit, welche Seite er möchte, und bekommt dann das passende Zertifikat.
Für Lighttpd gibt es hier einen
Patch für SNI-Support.
Mithilfe dieser
Anleitung für APT und DPKG ist es recht einfach gepatchte debian-Pakete zu erstellen.
Ich hab da mal was vorbereitet,
Lighttpd-SNI für Debian stable (amd64/i386) und für
Debian testing (i386).
Sind die Pakete installiert, kann /etc/lighttpd/conf-enabled/10-ssl.conf wie folgt angepasst werden:
# /etc/lighttpd/conf-available/10-ssl.conf
#### SSL engine
$SERVER["socket"] == "0.0.0.0:443" {
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/server.pem"
$HTTP["host"] == "foo.bar.example.com" {
ssl.pemfile = "/etc/lighttpd/foo.bar.pem"
}
$HTTP["host"] == "spam.eggs.example.org" {
ssl.pemfile = "/etc/lighttpd/spam.eggs.pem"
}
}
Das Zertifikat server.pem wird hierbei für alle nicht definierten Hostnamen ausgeliefert, sowie für Browser die SNI nicht unterstützen.
Das sind vor allem die üblichen alten Versionen von IE, Konqueror (der es ab KDE 4.1 können soll), und der darauf aufbauende Safari...
Trotzdem schonmal ne tolle Sache.