Comment générer un certificat SSL LetsEncrypt à l'aide du défi CloudFlare DNS-01 et l'utiliser sur Synology NAS

Comment Generer Un Certificat Ssl Letsencrypt A L Aide Du Defi Cloudflare Dns 01 Et L Utiliser Sur Synology Nas



Disk Station Manager v7 (DSM 7) est le système d'exploitation des périphériques Synology NAS. Vous pouvez configurer les certificats SSL Let's Encrypt pour votre Synology NAS à partir de l'interface Web de DSM 7. Par défaut, Synology DSM 7 utilise le défi HTTP-01 pour vérifier la propriété du domaine (que vous souhaitez utiliser pour votre Synology NAS) et émettre un certificat SSL pour le domaine. Mais le défi HTTP-01 ne fonctionnera que si vous disposez d’une adresse IP publique et que votre ordinateur est accessible depuis Internet. Ainsi, si vous souhaitez utiliser les certificats SSL Let's Encrypt pour votre réseau domestique ou votre réseau privé, vous devez plutôt utiliser le défi DNS-01. Lorsque le défi DNS-01 est utilisé, Let's Encrypt vérifie la propriété du domaine à l'aide du serveur DNS du domaine. Cela fonctionne donc également pour les réseaux privés. Malheureusement, l'interface Web de Synology DSM 7 ne fournit aucun moyen d'obtenir les certificats SSL Let's Encrypt à l'aide du défi DNS-01.

Heureusement, le programme « acme.sh » peut être installé sur votre Synology NAS et est utilisé pour générer et renouveler les certificats SSL Let's Encrypt à l'aide du défi DNS-01.







Dans cet article, nous allons vous montrer ce qui suit :



  • Comment installer « sh » sur votre Synology NAS
  • Comment utiliser « acme.sh » pour générer un certificat SSL Let's Encrypt (via le défi DNS-01) pour le nom de domaine que vous utilisez sur votre Synology NAS
  • Comment installer le certificat SSL Let's Encrypt généré « acme.sh » sur votre Synology NAS
  • Comment configurer le système d'exploitation DSM 7 de votre Synology NAS pour utiliser le certificat SSL Let's Encrypt généré
  • Comment configurer votre Synology NAS pour renouveler automatiquement les certificats SSL Let's Encrypt générés à l'aide de « acme.sh »

Dans cet article, nous utiliserons le serveur DNS CloudFlare à des fins de démonstration. Vous pouvez utiliser d'autres Services DNS pris en charge par acme.sh aussi. Il ne vous reste plus qu'à procéder aux ajustements nécessaires.



Sujet du contenu :

  1. Création d'un utilisateur Certadmin sur Synology NAS
  2. Configuration du serveur DNS CloudFlare pour le défi LetsEncrypt DNS-01
  3. Configuration d'autres services DNS pour le défi LetsEncrypt DNS-01
  4. Accéder au terminal Synology NAS via SSH
  5. Téléchargement d'Acme.sh sur votre Synology NAS
  6. Installation d'Acme.sh sur votre Synology NAS
  7. Génération d'un certificat SSL Let's Encrypt à l'aide d'Acme.sh pour votre Synology NAS
  8. Installation du certificat SSL Let's Encrypt sur votre Synology NAS à l'aide d'Acme.sh
  9. Définition du certificat SSL Let's Encrypt par défaut sur votre Synology NAS
  10. Configurer le Synology NAS pour renouveler automatiquement un certificat SSL Let's Encrypt à l'aide d'Acme.sh
  11. Conclusion
  12. Les références

Création d'un utilisateur Certadmin sur Synology NAS

Tout d'abord, vous devez créer un nouvel utilisateur administrateur sur votre Synology NAS pour générer et renouveler les certificats SSL Let's Encrypt.





Pour créer un nouvel utilisateur administrateur sur Synology NAS, cliquez sur Panneau de contrôle [1] > Utilisateur et groupe [2] à partir de l'interface Web de DSM 7.



Cliquez sur « Créer » dans l’onglet « Utilisateur ».

Tapez «certadmin» comme nom d'utilisateur [1] , une brève description facultative pour l'utilisateur [2] , le mot de passe de connexion de l'utilisateur [3] , et cliquez sur « Suivant » [4] .

Pour créer un utilisateur administrateur, cochez le groupe « Administrateurs » dans la liste [1] et cliquez sur « Suivant » [2] .

Cliquez sur « Suivant ».

Cliquez sur « Suivant ».

Cliquez sur « Suivant ».

Cliquez sur « Suivant ».

Cliquez sur « Terminé ».

Le administrateur de certificat L'utilisateur devrait maintenant être créé sur votre Synology NAS.

Configuration du serveur DNS CloudFlare pour le défi Let's Encrypt DNS-01

Pour utiliser le serveur DNS CloudFlare pour le défi Let's Encrypt DNS-01, vous devez générer un jeton DNS CloudFlare. Vous pouvez générer un jeton de serveur DNS CloudFlare à partir du tableau de bord CloudFlare. Pour plus d'informations, lire cet article .

Configuration d'autres services DNS pour le défi Let's Encrypt DNS-01

« Acme.sh » prend en charge d'autres services DNS. Si vous ne souhaitez pas utiliser le DNS CloudFlare, vous pouvez utiliser l'un des services DNS pris en charge par « acme.sh ». La configuration est un peu différente pour les différents services DNS. Pour plus d'informations, consultez le guide de l'API DNS « acme.sh » .

Accéder au terminal Synology NAS via SSH

Pour installer « acme.sh » et générer et installer un certificat SSL Let's Encrypt sur votre Synology NAS, vous devez accéder au terminal de votre Synology NAS. Pour plus d'informations sur l'activation de l'accès SSH sur votre Synology NAS et l'accès au terminal de votre Synology NAS, lire cet article .

Une fois que vous avez activé l'accès SSH sur votre Synology NAS, ouvrez une application de terminal sur votre ordinateur et exécutez la commande suivante :

$ ssh certadmin@

Il vous sera demandé de saisir le mot de passe de connexion du administrateur de certificat utilisateur. Saisissez le mot de passe de connexion du administrateur de certificat utilisateur de votre Synology NAS et appuyez sur . Vous devez être connecté à votre Synology NAS en tant que administrateur de certificat utilisateur.

Téléchargement d'Acme.sh sur votre Synology NAS

Pour télécharger la dernière version du client « acme.sh », exécutez la commande suivante :

$ wget -O /tmp/acme.sh.zip https://github.com/acmesh-official/acme.sh/archive/master.zip

La dernière version de l'archive client « acme.sh » « acme.sh.zip » doit être téléchargée dans le répertoire « /tmp » de votre Synology NAS.

Installation d'Acme.sh sur votre Synology NAS

Pour extraire l'archive « /tmp/acme.sh.zip » dans le répertoire « /usr/local/share » de votre Synology NAS, exécutez la commande suivante et saisissez le mot de passe de connexion de l'utilisateur certadmin et appuyez sur lorsqu'on vous demande le mot de passe. L'archive « /tmp/acme.sh.zip » doit être extraite dans le répertoire « /usr/local/share/acme.sh-master ».

$ sudo 7z x -o /usr/local/share /tmp/acme.sh.zip

Pour plus de simplicité, renommez le répertoire « acme.sh-master » en « acme.sh » avec la commande suivante :

$ sudo mv -v /usr/local/share/acme.sh-master /usr/local/share/acme.sh

Pour faire le administrateur de certificat utilisateur propriétaire du répertoire « /usr/local/share/acme.sh » et de son contenu, exécutez la commande suivante :

$ sudo chown -Rfv certadmin /usr/local/share/acme.sh

Génération d'un certificat SSL Let's Encrypt à l'aide d'Acme.sh pour votre Synology NAS

Pour générer un certificat SSL Let's Encrypt pour le nom de domaine que vous utilisez sur votre Synology NAS, accédez au répertoire « /usr/local/share/acme.sh » comme suit :

$ cd /usr/local/share/acme.sh

Vous devez maintenant exporter les variables d'environnement de jeton d'API DNS requises. Nous utilisons le DNS CloudFlare pour gérer le nom de domaine que nous utilisons sur notre Synology NAS. Donc, pour nous, il suffit d'exporter la variable d'environnement CF_Token avec la valeur du jeton de l'API DNS CloudFlare. Si vous utilisez un autre service DNS, consultez la documentation de l'API DNS « acme.sh » pour connaître les variables que vous devez exporter pour que « acme.sh » fonctionne avec votre service DNS.

$ export CF_Token=''

Exportez également les variables d'environnement Synology requises afin que « acme.sh » puisse installer les certificats SSL générés sur votre Synology NAS.

$ export SYNO_User
$ export SYNO_Password='Votre_certadmin_login_Password'
$ export SYNO_Certificate='Chiffrons'
$ exporter SYNO_Create=1

Pour générer un certificat SSL Let's Encrypt pour le nom de domaine « *.nodekite.com » (caractère générique) à l'aide du plugin DNS CloudFlare ( –dns dns_cf ), exécutez la commande suivante :

$ ./acme.sh --server letencrypt --issue --dns dns_cf --home $PWD -d '*.nodekite.com'

Si vous utilisez d'autres services DNS, vous devez modifier le plugin DNS (–dns ) dans la commande précédente en conséquence. Pour plus d'informations, consultez la documentation de l'API DNS « acme.sh » .

Un certificat SSL Let’s Encrypt est en cours de génération. Cela prend un certain temps pour terminer.

À ce stade, le certificat SSL Let’s Encrypt doit être généré.

Installation du certificat SSL Let's Encrypt sur votre Synology NAS à l'aide d'Acme.sh

Une fois le certificat SSL Let's Encrypt généré pour le nom de domaine (*.nodekite.com dans ce cas) de votre Synology NAS, vous pouvez l'installer sur votre Synology NAS avec la commande suivante :

$ ./acme.sh -d '*.nodekite.com' --deploy --deploy-hook synology_dsm --home $PWD

Si vous disposez d'une authentification à deux facteurs activée pour le administrateur de certificat utilisateur, vous recevrez un code OTP. Vous devez saisir le code OTP et appuyer sur .

Si l’authentification à deux facteurs n’est pas activée pour le administrateur de certificat utilisateur, laissez-le vide et appuyez sur .

Presse .

Le certificat SSL Let's Encrypt généré doit être installé sur votre Synology NAS.

Une fois le certificat SSL Let's Encrypt installé sur votre Synology NAS, il sera affiché sur l'écran. Panneau de contrôle > Sécurité > Certificat de l'interface Web DSM 7 de votre Synology NAS.

Définition du certificat SSL Let's Encrypt par défaut sur votre Synology NAS

Pour gérer les certificats SSL de votre Synology NAS, accédez au Panneau de contrôle > Sécurité > Certificat de l'interface Web DSM 7 de votre Synology NAS.

Pour définir le certificat SSL Let's Encrypt nouvellement installé par défaut afin que les services Web nouvellement installés sur votre Synology NAS l'utilisent par défaut, sélectionnez le certificat SSL Let's Encrypt et cliquez sur Action > Modifier .

Cochez « Définir comme certificat par défaut » [1] et cliquez sur 'OK' [2] .

Le certificat SSL Let's Encrypt doit être défini comme certificat par défaut pour votre Synology NAS.

Pour configurer les services Web existants de votre Synology NAS pour utiliser le certificat SSL Let's Encrypt, cliquez sur « Paramètres ».

Comme vous pouvez le constater, tous les services Web utilisent le certificat SSL auto-signé Synology.

Pour modifier le certificat SSL d'un service Web, cliquez sur le menu déroulant correspondant à droite.

Ensuite, sélectionnez le certificat SSL Let's Encrypt que vous souhaitez utiliser pour le service Web dans le menu déroulant.

De la même manière, sélectionnez le certificat SSL Let's Encrypt pour tous les services web installés de votre Synology NAS et cliquez sur « OK ».

Cliquez sur « Oui ».

Les changements sont appliqués. Cela prend quelques secondes.

Une fois le certificat SSL Let's Encrypt appliqué à tous les services Web de votre Synology NAS, actualisez la page Web et votre interface Web DSM 7 devrait utiliser le certificat SSL Let's Encrypt.

Configuration du Synology NAS pour renouveler automatiquement le certificat SSL Let's Encrypt à l'aide d'Acme.sh

Pour configurer votre Synology NAS pour renouveler automatiquement le certificat SSL Let's Encrypt, accédez à Panneau de contrôle > Planificateur de tâches à partir de l'interface Web de DSM 7.

Depuis le planificateur de tâches, cliquez sur Créer > Tâche planifiée > Script défini par l'utilisateur .

Dans l'onglet « Général », saisissez « Renouveller les certificats SSL » dans la section « Tâche » [1] et sélectionnez « certadmin » dans le menu déroulant « Utilisateur » [2] .

Dans l'onglet « Calendrier », sélectionnez « Exécuter à la date suivante » [1] et sélectionnez « Répéter mensuellement » dans le menu déroulant « Répéter » [2] .

Accédez à l'onglet « Paramètres de la tâche », tapez la commande suivante dans la section « Script défini par l'utilisateur » [1] , et cliquez sur « OK » [2] .

/usr/local/share/acme.sh/acme.sh –renew –server listsencrypt -d « *.nodekite.com » –home /usr/local/share/acme.sh

Une nouvelle tâche doit être créée. La tâche « Renouveler les certificats SSL » s'exécutera chaque mois et garantira que le certificat SSL Let's Encrypt est renouvelé avant son expiration.

Conclusion

Dans cet article, nous vous avons montré comment installer et utiliser le client ACME « acme.sh » pour générer un certificat SSL Let's Encrypt via le défi DNS-01 sur votre Synology NAS. Nous vous avons également montré comment installer le certificat SSL Let's Encrypt généré sur votre Synology NAS et configurer les services Web de votre Synology NAS pour l'utiliser. Enfin, nous vous avons montré comment configurer une tâche planifiée sur votre Synology NAS pour renouveler automatiquement le certificat SSL Let's Encrypt avant son expiration.

Les références: