Commit 0
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
---
|
||||
title: "Générer et mettre à jour automatiquement un certificat \"wildcard\" let's encrypt."
|
||||
summary: "brief decription to sum up"
|
||||
author:
|
||||
- JF
|
||||
date: 2019-12-16
|
||||
---
|
||||
# Générer et mettre à jour automatiquement un certificat "wildcard" let's encrypt.
|
||||
|
||||
## Installation de acme.sh
|
||||
```bash
|
||||
# 1 - Beeing root
|
||||
|
||||
SYNOPATH="/volume1/something"
|
||||
cd $SYNOPATH
|
||||
|
||||
git clone https://github.com/acmesh-official/acme.sh.git
|
||||
|
||||
./acme.sh/acme.sh --install --nocron --home $SYNOPATH/acme.sh/.acme.sh --accountemail "admin@savaneprod.fr"
|
||||
```
|
||||
|
||||
|
||||
Sur DSM, les certificats se trouvent dans `/usr/syno/etc/certificate/_archive/`.
|
||||
|
||||
## Mise à jour automatique du certificat
|
||||
|
||||
### Chez Gandi
|
||||
|
||||
Utilsation de l'API Gandi : [https://github.com/acmesh-official/acme.sh/wiki/dnsapi#18-use-gandi-livedns-api](https://github.com/acmesh-official/acme.sh/wiki/dnsapi#18-use-gandi-livedns-api)
|
||||
|
||||
### Le script de mise à jour
|
||||
|
||||
```bash
|
||||
SYNOPATH="/volume1/something"
|
||||
|
||||
jour=$(date +%Y-%m-%d)
|
||||
file='$SYNOPATH/Certificats/'$jour'.log'
|
||||
|
||||
HOME_orig=$HOME
|
||||
HOME="$SYNOPATH/Certificats/.acme.sh"
|
||||
|
||||
export GANDI_LIVEDNS_KEY="la clef récupérée chez Gandi"
|
||||
|
||||
export SYNO_Certificate="savaneprod.fr cert"
|
||||
export SYNO_Create=0
|
||||
export SYNO_Username="admin_c_pas_top"
|
||||
export SYNO_Password="Un mdp de ouf"
|
||||
|
||||
echo "*********************************************" 2>&1 | tee -a $file
|
||||
echo " Mise à jour du certificat *.savaneprod.fr" 2>&1 | tee -a $file
|
||||
echo "*********************************************" 2>&1 | tee -a $file
|
||||
|
||||
bash $SYNOPATH/Certificats/acme.sh/acme.sh --home $HOME --renew -d savaneprod.fr -d '*.savaneprod.fr' --dns dns_gandi_livedns --force --log 2>&1 | tee -a $file
|
||||
bash $SYNOPATH/Certificats/acme.sh/acme.sh --home $HOME -d savaneprod.fr -d "*.savaneprod.fr" --deploy --deploy-hook synology_dsm --log 2>&1 | tee -a $file
|
||||
|
||||
echo "---------------------------------" 2>&1 | tee -a $file
|
||||
echo " Fin du script de mise à jour." 2>&1 | tee -a $file
|
||||
echo "*********************************" 2>&1 | tee -a $file
|
||||
```
|
||||
|
||||
### La conf dans DSM dans le planificateur de tâches
|
||||
|
||||

|
||||
|
||||
J'ai finalement décidé de renouveler tous les mois parce que le Synology propose tous les 3 mois mais la durée de vie du certificat est légèrement inférieure. Et je n'ai pas cherché à configurer le renouvellement tous les deux mois.
|
||||

|
||||
|
||||
Exécution du script. Il faut bien entendu que le script ait la permission d'éxécution configurée.
|
||||

|
||||
|
||||
Reference in New Issue
Block a user