Talk:Letsencrypt/fr

From SME Server
Jump to navigationJump to search

Installation manuelle de « Dehydrated »

Warning.png Attention :
les éléments suivants ne doivent pas être exécutés si vous avez installé le paquet de la contribution smeserver-letsencrypt car cela est déjà géré par la contribution.


Comme exposé ci-dessus, «dehydrated» est un client ACME léger qui est implémenté en tant que script BASH. Il a très peu de dépendances, et il est mieux adapté pour la «façon de faire de KOOZALI» que le client officiel de certbot. Si vous préférez le configurer manuellement, plutôt que d'installer la contribution décrite ci-dessus, vous pouvez le faire manuellement ou à partir d'une copie de la dernière version en utilisant git.

Installation du paquet « dehydrated » à partir du dépôt smecontrib

Le script déshydraté a été importé dans le dépôt contribs et peut être installé comme suit :

yum --enablerepo=smecontribs install dehydrated

Le script doit être configuré comme décrit ci-dessous.

Installation de la dernière version de git

Si vous avez besoin ou si vous voulez la toute dernière version du script, vous pouvez l'installer manuellement comme suit :

Commencez en installant git :

yum install git

Téléchargez ensuite le client « Dehydrated » :

cd /etc
git clone https://github.com/lukas2511/dehydrated
mv dehydrated/dehydrated /usr/local/bin/


Configuration manuelle de « Dehydrated »

Vous devrez créer deux fichiers de configuration pour « Dehydrated ».

cd /etc/dehydrated
mkdir -p /home/e-smith/files/ibays/Primary/html/.well-known/acme-challenge
nano -w domains.txt

Dans ce fichier, vous ajouterez chaque nom d'hôte que vous voulez que votre certificat couvre, tous sur une seule ligne. Cela ressemblera à ceci :

domain1.com www.domain1.com mail.domain1.com domain2.net www.domain2.net domain3.org ftp.domain3.org

Ctrl-X pour quitter, Y pour sauvegarder.

En second, vous devrez créer le fichier de configuration config :

nano -w config

Cela devrait ressembler à :

#!/bin/bash
# config
# CA="https://acme-staging.api.letsencrypt.org/directory"
WELLKNOWN="/home/e-smith/files/ibays/Primary/html/.well-known/acme-challenge"
HOOK="/usr/local/bin/dehydrated-hook"
# E-mail to use during the registration (default: <unset>)
CONTACT_EMAIL="admin@yourdomain.com"

Ctrl-X pour quitter, Y pour sauvegarder.

Pour les phases de test, il est recommandé de dé-commenter la troisième ligne (celle qui commence par « CA="... »). Durant les tests, aucunes demandes de certificats ne seront effectuées, mais cela n'affectera pas non plus votre nombre limite. Une fois que votre configuration sera réglée, vous pourrez dé-commenter cette ligne et relancer « dehydrated ».

Vous devrez créer un script « hook » personnalisé pour configurer correctement la base de données de configuration et déclencher le rechargement de vos services système lors de l'émission ou du renouvellement d'un certificat.

nano /usr/local/bin/dehydrated-hook

Son contenu devrait ressembler à :

#!/bin/bash

if [ $1 = "deploy_cert" ]; then
  KEY=$3
  CERT=$4
  CHAIN=$6
  /sbin/e-smith/db configuration setprop modSSL key $KEY
  /sbin/e-smith/db configuration setprop modSSL crt $CERT
  /sbin/e-smith/db configuration setprop modSSL CertificateChainFile $CHAIN
  /sbin/e-smith/signal-event ssl-update
fi

Ctrl-X pour quitter, Y pour sauvegarder. Ensuite, rendez-le exécutable :

chmod +x /usr/local/bin/dehydrated-hook

Vous devrez aussi créer un fragment personnalisé de modèle pour Apache :

mkdir -p /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf
nano -w /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/VirtualHosts40ACME

Les contenus de ce fichier devrait ressembler à :

# Alias for letsencrypt
Alias /.well-known/acme-challenge /home/e-smith/files/ibays/Primary/html/.well-known/acme-challenge

A nouveau, Ctrl-X pour quitter, Y pour sauvegarder.

Développez le modèle et redémarrez Apache :

expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

Maintenant, vous êtes prêt(e) à lancer « dehydrated » et à obtenir votre certificat.

dehydrated -c

Le script s'exécutera pendant un moment et devrait indiquer le succès. Si c'est le cas, regardez dans /etc/dehydrated/certs/VOTRE_DOMAINE et voyez si vous y avez vos fichiers. Vous devriez voir un certain nombre de fichiers .pem, au moins un fichier .csr, et cinq liens symboliques (chain.pem, cert.csr, cert.pem, fullchain.pem et privkey.pem). Si c'est le cas, félicitations ! Vous avez réussi à obtenir votre certificat. Le script «hook» doit également avoir configuré votre serveur pour utiliser le nouveau certificat. Pour être sûr, exécutez :

config show modSSL

et assurez-vous qu'il y a des valeurs définies pour crt, key, et CertificateChainFile.

Si « dehydrated » fonctionne avec succès en mode test mode, re-commentez la troisième ligne « CA=... » dans /etc/dehydrated/config et exécutez :

dehydrated -c -x

pour obtenir en confiance un certificat de confiance.

Renouvellement

Une fois exécuté, le script «dehydrated» vérifiera votre certificat existant pour voir combien de temps il est valide. Si sa durée de vie est inférieure à 30 jours (par défaut, cela peut être modifié en réglant RENEW_DAYS dans config sur autre chose que 30), le script renouvellera vos certificats. S'il reste plus de 30 jours, le script se terminera sans autre action. Tout ce qui est nécessaire est d'exécuter quotidiennement « dehydrated » :

nano -w /etc/cron.daily/call-dehydrated

Entrez ce qui suit dans ce fichier :

#!/bin/bash
/usr/bin/dehydrated -c

Ctrl-X pour quitter, Y pour sauvegarder. Ensuite, rendez-le exécutable :

chmod +x /etc/cron.daily/call-dehydrated


Warning.png Attention :
fin de l'installation et de la configuration manuelles de « dehydrated » sans la contribution smeserver-letsencrypt.