Aller au contenu

[TUTO]Création d'un Certificat "wilcard" Let'sEncrypt avec la méthode "acme.sh"

Featured Replies

Posté(e)

Merci pour la piste. J'ai remplacé dans le script les références à "SAVED_SYNO_Username" et "SAVED_SYNO_Password" par respectivement "SAVED_SYNO_USERNAME" et "SAVED_SYNO_PASSWORD".

Le script génère bien les certificats, importe ce qu'il faut mais c'est pas parfait. Voici ce que j'ai dans DSM :

image.png

Le nouveau certificat est bien importé mais c'est un nouveau certificat : il ne vient pas en remplacement du précédent. Il ne doit pas manquer grand chose.

Dans le log, j'ai :

Content-Disposition: form-data; name="id"^M
^M
^M
----------------------------20260219133250^M
Content-Disposition: form-data; name="desc"^M
^M
__ACME_BASE64__START_QUNNRV9XaWxjYXJkX0xFXyouZmFtaaaaaaaaaaaaaaaaaaaaaa==__ACME_BASE64__END_^M
----------------------------20260219133250--^M
'
[Thu Feb 19 14:32:50 CET 2026] _postContentType='multipart/form-data; boundary=--------------------------20260219133250'
[Thu Feb 19 14:32:50 CET 2026] Http already initialized.
[Thu Feb 19 14:32:50 CET 2026] _CURL='curl --silent --dump-header /usr/local/share/acme.sh/http.header  -L  --trace-ascii /tmp/tmp.XJtSsmKMTi  -g '
[Thu Feb 19 14:32:50 CET 2026] _ret='0'
[Thu Feb 19 14:32:50 CET 2026] Restart HTTP services failed.
[Thu Feb 19 14:32:50 CET 2026] GET
[Thu Feb 19 14:32:50 CET 2026] url='http://localhost:5000/webapi/entry.cgi?api=SYNO.API.Auth&version=7&method=logout&_sid=NPKQ39v-iicT-nhFTaSlQruGEF3SqkWI3WaOKCnbC7k-vplS8y5MLB-5xRrDyHFLs1rwtSaV-BsNByHmbmyBYU'
[Thu Feb 19 14:32:50 CET 2026] timeout=
[Thu Feb 19 14:32:50 CET 2026] Http already initialized.
[Thu Feb 19 14:32:50 CET 2026] _CURL='curl --silent --dump-header /usr/local/share/acme.sh/http.header  -L  --trace-ascii /tmp/tmp.XJtSsmKMTi  -g '
[Thu Feb 19 14:32:50 CET 2026] ret='0'
[Thu Feb 19 14:32:50 CET 2026] Success
[Thu Feb 19 14:32:50 CET 2026] Return code: 0
[Thu Feb 19 14:32:50 CET 2026] _error_level='2'
[Thu Feb 19 14:32:50 CET 2026] _set_level='2'
[Thu Feb 19 14:32:50 CET 2026] The NOTIFY_HOOK is empty, will just return.
[Thu Feb 19 14:32:50 CET 2026] ===End cron===

Quand il l'importe les nouveaux fichiers, il ne reprend pas la bonne description du certificat. (flux "desc")

Je me retrouve avec 2 certificats de même noms avec 2 descriptions différentes (un en clair et l'autre encodé en base 64).

Sinon pour répondre à la question, j'ai bien Container Manager sur le NAS mais la solution tache planifiée me semble plus simple à mettre en œuvre.

Je vais peut-être me résoudre à regarder ce lien si personne ne trouve d'où vient le problème.

GitHub
No image preview

Synology NAS Guide

A pure Unix shell script ACME client for SSL / TLS certificate automation - acmesh-official/acme.sh

Merci.

  • Réponses 956
  • Vues 208.5 k
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Most Popular Posts

  • Bonjour à tous, étant légèrement partie prenante, je vous fait part de mon point de vue qui je l'espère ne heurtera personne : je ne suis qu'un amateur s'intéressant à ce qu'il touche ...

  • Bonjour tout le monde, @Mic13710 Je me devais de faire un petit retour sur mon problème concernant OVH (même si ce n'est pas entièrement lié au tuto ci-présent, mais cela reste connecté):

  • _Megalegomane_
    _Megalegomane_

    @oracle7 Je viens de comprendre qu'il faut d'abord faire un execute sur cette API : https://api.ovh.com/console/#/me/api/application#GET et ensuite aller sur https://api.ovh.com/console/#/me

Images postées

Posté(e)

Ca confirme ce que j'ai déjà dit : le script python est obsolète tout comme ce tuto.

Le nom du certificat en base64 est inscrit dans les fichiers de conf depuis au moins 3 ans. Le script lui le lit en clair.

Je ne saurais trop vous recommander de laisser tomber ce tuto qui n'est plus maintenu depuis des années et vous tourner vers la solution de base dont je vous ai donné le lien ou vers la solution docker qui est dans la section des tutoriels. Cette dernière reprends le même fonctionnement que la solution de base dont il s'inspire.

Posté(e)

@Mic13710

Bonjour,

En lisant ce sujet je viens de comprendre pourquoi j'avais des soucis avec mon script de renouvellement des certificats :

J'ai corrigé certaines des valeurs SYNO_xxx en les passant en majuscule et cela a l'air de fonctionner.

Existe-t-il un document qui résume l'ensemble des nouveaux paramètres employés par Acme ?

Modifié par Jeff777

Posté(e)
Il y a 3 heures, Jeff777 a dit :

Existe-t-il un document qui résume l'ensemble des nouveaux paramètres employés par Acme ?

Pas à ma connaissance. Quand ça change, c'est un peu la surprise. Il faut suivre le github. C'est comme le passage du nom du certificat en base 64 dont la transition m'a posé quelques problèmes à l'époque sans que comprenne réellement pourquoi. Le script s'évertuait à le passer en base 64 mais j'étais obligé de le remettre en clair pour le renouvellement. Et puis c'est rentré dans l'ordre à la mise à jour suivante.

Tu as noté que maintenant les certificats sont renouvelés tous les 30 jours depuis décembre ?

Posté(e)
il y a 7 minutes, Mic13710 a dit :

Tu as noté que maintenant les certificats sont renouvelés tous les 30 jours depuis décembre ?

Cela m'explique un autre problème du script. Depuis plus d'un an mon certificat est un certificat ECC sans que je ne fasse rien de particulier. A cause de cela certains fichiers/dossier ont l'ajout "ECC" sur leur nom et le script ne sait plus lire la date de validation du certificat et donc essaie systématiquement de renouveller le certificat. Et effectivement celui-ci s'est renouvellé récemment avant les 60 jours prévus.

Je vais devoir reprendre le script pour qu'il puisse lire la date d'expiration mais sans l'aide de @.Shad. que l'on ne voit plus beaucoup☹️

De plus le déploiement ne s'effectuait que sur un des deux nas mais ceci vient d'être résolu avec le passage en majuscule des valeurs SYNO_xxx.

Merci pour ton aide.

Posté(e)
il y a 7 minutes, Jeff777 a dit :

Je vais devoir reprendre le script pour qu'il puisse lire la date d'expiration

D'autant que le script n'est plus disponible au téléchargement....

Déjà tu peux modifier RENEWAL_CYCLE=30

Le certificat LE est encore de 90 jours. Le renouvellement raccourci est là pour préparer l'obligation d'arriver à des certificats d'une durée de validité de 45 (ou 47 je ne sais plus) jours en 2027. Tu peux consulter le calendrier des étapes et des durées sur le net. Acme a choisi dès maintenant un délai de 30 jours pour laisser du temps (15 jours à terme) pour que le renouvellement puisse se faire avant l'échéance au moment de l'application d'une validité raccourcie. Donc mieux vaut anticiper aussi dans le script.

Posté(e)
il y a 16 minutes, Mic13710 a dit :

D'autant que le script n'est plus disponible au téléchargement...

Celui que j'utilise l'est toujours (voir plus haut)

il y a 16 minutes, Mic13710 a dit :

Déjà tu peux modifier RENEWAL_CYCLE=30

Oui dès que le script aura été modifié pour trouver la date d'expiration ce qui n'est pas le cas actuellement.

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.

Account

Navigation

Rechercher

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.