« Sécuriser ses sites avec letsencrypt et acme-tiny » : différence entre les versions
Aller à la navigation
Aller à la recherche
Ligne 114 : | Ligne 114 : | ||
#! /bin/bash | #! /bin/bash | ||
umask 022 | umask 022 | ||
python /home/acme/acme-tiny/acme_tiny.py --account-key /home/acme/secrets/ | python /home/acme/acme-tiny/acme_tiny.py --account-key /home/acme/secrets/core_account.key --csr /home/acme/work/networklab.fr/networklab.fr.csr --acme-dir /home/networklab.fr/www/challenges/ > /home/acme/work/networklab.fr/networklab.fr.crt | ||
umask 027 | umask 027 | ||
wget -O /home/acme/work/networklab.fr/intermediate.pem https://letsencrypt.org/certs/lets-encrypt- | wget -O /home/acme/work/networklab.fr/intermediate.pem.new https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem | ||
openssl x509 -in /home/acme/work/networklab.fr/networklab.fr.crt -text -noout &> /dev/null | |||
error=$? | |||
if [ ! $error == 0 ] ; then | |||
echo "ERROR: ACME output is not a valid x509 certificate" | |||
exit 1 | |||
fi | |||
openssl x509 -in /home/acme/work/networklab.fr/intermediate.pem.new &> /dev/null | |||
error=$? | |||
if [ ! $error == 0 ] ; then | |||
echo "ERROR: intermediate.pem is not a valid x509 certificate" | |||
exit 1 | |||
fi | |||
#only done if no error | |||
cp /home/acme/work/networklab.fr/intermediate.pem.new /home/acme/work/networklab.fr/intermediate.pem | |||
cp /home/acme/work/networklab.fr/networklab.fr.crt /home/acme/work/networklab.fr/networklab.fr.pem | |||
</pre> | </pre> | ||
Le changement d'umask permet d'écrire le fichier de challenges avec des droits permettant à Apache de servir le fichier (le fichier étant créé en acme:acme, l'umask 027 ne le permet pas). | Le changement d'umask permet d'écrire le fichier de challenges avec des droits permettant à Apache de servir le fichier (le fichier étant créé en acme:acme, l'umask 027 ne le permet pas). |