Suivant: , Précédent: , Monter: Configuration du système   [Table des matières][Index]


12.11 Certificats X.509

Les serveurs web disponibles par HTTPS (c’est-à-dire HTTP sur le mécanisme de la couche de transport sécurisée, TLS) envoient aux clients un certificat X.509 que les clients peuvent utiliser pour authentifier le serveur. Pour cela, les clients vérifient que le certificat du serveur est signé par une autorité de certification (AC ou CA). Mais pour vérifier la signature de la CA, les clients doivent d’abord avoir récupéré le certificat de la CA.

Les navigateurs web comme GNU IceCat incluent leur propre liste de certificats, pour qu’ils puissent vérifier les signatures des CA directement.

Cependant, la plupart des autres programmes qui peuvent parler HTTPS — wget, git, w3m, etc — doivent savoir où trouver les certificats des CA.

Dans Guix, cela se fait en ajoutant un paquet qui fournit les certificats dans le champ packages de la déclaration operating-system (voir Référence de operating-system). Guix inclut l’un de ces paquets, nss-certs, qui est un ensemble de certificats de CA fourni par les services de sécurité réseau de Mozilla (nss).

Remarquez qu’il ne fait pas partie de %base-packages, donc vous devez explicitement l’ajouter. Le répertoire /etc/ssl/certs, là où la plupart des applications et bibliothèques vont rechercher les certificats par défaut, pointe vers les certificats installés globalement.

Les utilisateurs non privilégiés, dont les utilisateurs de Guix sur une distro externe, peuvent aussi installer leur propre paquet de certificats dans leur profil. Un certain nombre de variables d’environnement doivent être définies pour que les applications et les bibliothèques puissent les trouver. En particulier, la bibliothèque OpenSSL prend en compte les variables SSL_CERT_DIR et SSL_CERT_FILE. Certaines applications ajoutent leurs propres variables, par exemple le système de contrôle de version Git prend en compte le lot de certificats pointé par la variable d’environnement GIT_SSL_CAINFO. Ainsi, vous lanceriez quelque chose comme ceci :

guix install nss-certs
export SSL_CERT_DIR="$HOME/.guix-profile/etc/ssl/certs"
export SSL_CERT_FILE="$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt"
export GIT_SSL_CAINFO="$SSL_CERT_FILE"

Un autre exemple serait R, qui a besoin que la variable d’environnement CURL_CA_BUNDLE pointe sur le lot de certificats, donc vous lanceriez quelque chose comme ceci :

guix install nss-certs
export CURL_CA_BUNDLE="$HOME/.guix-profile/etc/ssl/certs/ca-certificates.crt"

Pour d’autres applications vous pourriez avoir besoin de chercher la variable d’environnement requise dans leur documentation.


Suivant: Name Service Switch, Précédent: Programmes setuid, Monter: Configuration du système   [Table des matières][Index]