Tags pour la question fréquent:
Lighttpd Linux

Aidez-nous par évaluer cet article

Score de 0, basé sur 1 votes

Lighttpd - Installation certificat SSL

Dernière mise à jour: 14/01/2016

Ce manuel vous explique comment installer un certificat qui vient de vous être émis sur le serveur web Lighttpd. Pour en savoir plus comment générer votre demande de certificat, consultez l'article « Comment générer une demande de certificat avec OpenSSL ».

Lighttpd se sert de deux directives pour identifier les certificats SSL, une pour le vôtre, et une pour les certificats intermédiaires et root de l'émetteur.

Selon l'émetteur de certificats que vous avez choisi, vous recevrez ou bien un seul fichier pret à l'emploi contenant tous les certificats, un fichier contenant votre certificat et un autre contenant tous ceux de l'émetteur, ou des fichiers distincts pour chaque certificat. Le plus souvent, ce sera le deuxième scénario, ou votre certificat sera indépendant, et les autres seront groupés, pour être employé directement dans Apache ou Lighttpd.

Si vous recevez de votre CA des fichier distincts, employer la commande suivante pour les concaténer dans l'ordre inverse. S'il n'y a qu'un certificat intermédiaire, bien entendu n'en ajoutez qu'un.

cat intermediaire_2.crt intermediaire_1.crt CA_root.crt >> /etc/certs/bundle.crt

L'ordre dans laquelle ils sont concaténés est importante:

  • D'abord les certificats intermédiaires - en général un, parfois deux
  • Ensuite le certificat root

Le certificat root n'est pas strictement nécessaire, puisqu'il est déjà connu des navigateurs, mais cela ne peut mal de l'inclure pour obtenir une chaine complète.

Si vous reçu votre certificat et un bundle des certificats de l'émetteur, il vous suffit de les copier dans le dossier où vous gardez vos certificats, par exemple /etc/certs.

Contrairement à Apache, Lighttpd requiert que votre clé et votre certificat SSL soient présents dans un seul fichier. Exécutez la commande suivante pour les combiner:

cat www.mondomaine.com.key www.mondomaine.com.crt > www.mondomaine.com.pem

Ajouter les lignes suivantes à votre fichier de configuration Lighttpd, que vous trouverez d'habitude sous /etc/lighttpd/lighttpd.conf. Notez que dans l'exemple ci-dessous, vous devrez modifier les dossiers pour qu'il pointent vers la racine de votre site web, et les directives SSL pour qu'elles correspondent à l'endroit où vous avez sauvegardé votre clé et vos certificats.

var.confdir         = "/etc/certs"
$SERVER["socket"]   == "*:443" {
  ssl.engine           = "enable"
  ssl.pemfile          = var.confdir + "/www.mondomaine.com.pem"
  ssl.ca-file          = var.confdir + "/bundle.crt"
  server.name          = "www.mondomaine.com"
  server.document-root = "/home/www/public_html/www.mondomaine.com/public/"
}

Notez bien que la configuration ci-dessus n'est qu'une configuration minimale d'un site web SSL, et qu'il est important de paramétrer votre serveur Lighttpd pour une meilleure performance et une plus grande sécurité. Kinamo vous conseille de consulter les articles à ce sujet dans la Knowledge Base.

C'est en général une bonne idée de tester votre configuration avant de redémarrer Lighttpd, pour ne pas entraver la bonne marche d'autres sites s'il y a une erreur de paramétrage.

lighttpd -t -f lighttpd.conf

Redémarrez Lighttpd pour activer la nouvelle configuration:

/etc/init.d/lighttpd restart

Si votre certificat ne s'affiche pas correctement dans le navigateur, contrôlez si la chaine entière de certificats est envoyé par le serveur web avec la commande suivante, en remplaçant www.kinamo.be par votre propre nom de domaine:

openssl s_client -connect www.kinamo.be:443
...
Certificate chain
 0 s:/1.3.6.1.4.1.311.60.2.1.3=BE/businessCategory=Private Organization/serialNumber=0861.077.215/C=BE/ST=Antwerpen/L=antwerpen/O=Kinamo NV/CN=www.kinamo.be
   i:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2
 1 s:/C=US/O=GeoTrust Inc./CN=GeoTrust Extended Validation SSL CA - G2
   i:/C=US/O=GeoTrust Inc./CN=GeoTrust Primary Certification Authority

Vous devriez voir une chaine de certificats commençant par le vôtre et se terminant par le certificat principal de l'émetteur.

Visitez la page de test de Qualys SSL Labs pour vérifier si votre serveur web et votre certificat correspondent au dernières normes de sécurité.