diff --git a/docs/Savaneprod/2025-03-31-certificats-wildcard-pour-synology.md b/docs/Savaneprod/2025-03-31-certificats-wildcard-pour-synology.md index 192b1e0..569fd98 100644 --- a/docs/Savaneprod/2025-03-31-certificats-wildcard-pour-synology.md +++ b/docs/Savaneprod/2025-03-31-certificats-wildcard-pour-synology.md @@ -17,14 +17,15 @@ Pour importer automatiquement les certificats dans Synology DSM j'utilise le scr ## Utilisation du script Prérequis : -* Un compte [ZeroSSL](https://app.zerossl.com/signup). -* La commande `git` installée via le dépôt Synocommunity https://synocommunity.com/package/git. + +- Un compte [ZeroSSL](https://app.zerossl.com/signup). +- La commande `git` installée via le dépôt Synocommunity https://synocommunity.com/package/git. ```bash cd /la/ou/qutu/veux/que/ton/certificat/il/soit git clone https://gitea.savaneprod.fr/Savaneprod/Certificats.git ``` -* Tu crées un fichier `.domain` dans `./domains` qui contient le Common Name et le Subject Alternative Name : +- Tu crées un fichier `.domain` dans `./domains` qui contient le Common Name et le Subject Alternative Name : ```bash DOMAIN='savaneprod.fr' SUBJECT_ALTERNATIVE_NAME='*.savaneprod.fr' @@ -33,12 +34,13 @@ SUBJECT_ALTERNATIVE_NAME='*.savaneprod.fr' ## Côté infomaniak ### Pour le challenge DNS (vérification que l'on possède bien le nom de domaine) -* Utilisation de l'API infomaniak : [https://github.com/acmesh-official/acme.sh/wiki/dnsapi2#dns_infomaniak](https://github.com/acmesh-official/acme.sh/wiki/dnsapi2#dns_infomaniak) -* Création d'un token d'API pour la gestion des entrées DNS : +- Utilisation de l'API infomaniak : [https://github.com/acmesh-official/acme.sh/wiki/dnsapi2#dns_infomaniak](https://github.com/acmesh-official/acme.sh/wiki/dnsapi2#dns_infomaniak) +- Création d'un token d'API pour la gestion des entrées DNS : Depuis la page d'accueil. Aller dans "Utilisateur et profil", "Mon profil", "Développeur" et "Tokens API". ![Création d'un token d'API pour gérer les entrées DNS](infomaniak_API_token.png) -* À partir de ça tu crées un fichier `INFOMANIAK_API_TOKEN.secret` qui contient : + +- À partir de ça tu crées un fichier `INFOMANIAK_API_TOKEN.secret` qui contient : ```bash INFOMANIAK_API_TOKEN="mon_t0k3n_9uil_e2t_grand_et_b1en_utile" ``` @@ -120,11 +122,11 @@ do echo "####### $ACTION du certificat $DOMAIN #######" | tee -a $SCRIPT_PATH/$LOGFILENAME - docker run --rm -it \ + docker run --rm \ -v "$ACMESH_CONTAINER_DATA_PATH":/acme.sh \ -v "$SCRIPT_PATH/logs:/logs" \ -e $INFOMANIAK_API_TOKEN \ - $DOCKER_IMAGE $ISSUE_OR_RENEW -d $DOMAIN -d $SUBJECT_ALTERNATIVE_NAME --server zerossl --eab-kid $EAB_KID --eab-hmac-key $EAB_HMAC_KEY --dns dns_infomaniak --log "/$LOGFILENAME" + $DOCKER_IMAGE $ISSUE_OR_RENEW -d $DOMAIN -d $SUBJECT_ALTERNATIVE_NAME --server zerossl --eab-kid $EAB_KID --eab-hmac-key $EAB_HMAC_KEY --dns dns_infomaniak --log /$LOGFILENAME --log-level 2 echo "####### Déploiement du certificat $DOMAIN sur DSM #######" | tee -a $SCRIPT_PATH/$LOGFILENAME @@ -139,22 +141,12 @@ do # https://github.com/acmesh-official/acme.sh/wiki/deployhooks#20-deploy-the-certificate-to-synology-dsm export SYNO_USE_TEMP_ADMIN=1 - bash $ACMESH_LOCAL_PATH/acme.sh --home $ACMESH_CONTAINER_DATA_PATH -d $DOMAIN -d $SUBJECT_ALTERNATIVE_NAME --deploy --deploy-hook synology_dsm --log $SCRIPT_PATH/$LOGFILENAME + bash $ACMESH_LOCAL_PATH/acme.sh --home $ACMESH_CONTAINER_DATA_PATH -d $DOMAIN -d $SUBJECT_ALTERNATIVE_NAME --deploy --deploy-hook synology_dsm --log $SCRIPT_PATH/$LOGFILENAME --log-level 2 unset DOMAIN SUBJECT_ALTERNATIVE_NAME done -#echo " -####### Suppression de $ACMESH_LOCAL_PATH... ######## -" -#rm -rf $ACMESH_LOCAL_PATH - -# echo " -####### Suppression de l'image docker... ####### -" -#docker rmi -f $DOCKER_IMAGE - exit 0 ``` @@ -162,7 +154,7 @@ exit 0 ![Planificateur de tâche, onglet "General"](task_general-tab.png) -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. +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. En plus acme.sh fait une vérification pour toi. ![Planificateur de tâches, onglet "Schedule"](task_Schedule-tab.png)