Synology Certificat Let's encrypt sur le routeur, le NAS et une box Jeedom ?

f1oren

Nouveau membre
17 Avril 2021
4
1
3
Bonjour à tous,

J'ai besoin de votre aide pour partir du bon pied sur le sujet :)

Je présente les protagonistes :
  • un routeur Synology RT2600ac (et borne MR2200ac)
  • un nas Synology DS918+
  • une box Jeedom
  • un nom de domaine enregistré chez OVH

Je voudrais en utilisant mon nom de domaine créer un certificat Let's Encrypt utilisable pour le NAS, le routeur et la box Jeedom. Comment je fais ça ? Je dois en créer sur chaque appareil ? Je peux utiliser au choix le NAS ou le routeur pour créer un certificat utilisable pour les trois ?

Sachant qu'à moyen terme le routeur devrait être remplacé par du matériel Ubiquiti, je voudrais éviter de dépendre de lui pour le renouvellement du certificat et si possible ne faire ça que sur le NAS.

Autre question bête mais comment vous faites pour lister tous les sous-domaines à inclure dans le certificat et ne pas en oublier ?

Merci de votre aide
 
Coucou f1oren pour ça je pense qu'il va te falloir passer par un prestataire et ajouter les certificats manuellement car tu vas avoir besoin des fichiers pour installer les certificats

Ce que je te propose c'est de passer par Zerossl cela va te permettre d'obtenir un certificat pour ton domaine gratuitement pendant 90J à renouveler

La délivrance est assez rapide en 30min en générale
 
  • J'aime
Réactions: f1oren
Salut,
Je peux utiliser au choix le NAS ou le routeur pour créer un certificat utilisable pour les trois ?
Salut
Pour le routeur je ne sais pas mais pour le NAS, il peu te servir de reverse proxy
Si ton IP est dynamique, cela ce configure dans Panneau de Config > Acces Externe > DDNS ( et chez OVH dans dyndns )
Si ton IP est fixe dans Panneau de Config > Acces Externe > Avancé ( et chez OVH il faut configurer sur ton domaine un champ A vers ton IP public )

Le certificat ce créer et ce configure dans Panneau de Config > Sécurité > Certificats

Le reverse ce configurer dans Panneau de Config > portail des applications > proxy inversé

Autre question bête mais comment vous faites pour lister tous les sous-domaines à inclure dans le certificat et ne pas en oublier ?
Il faut faire un certificat wildcard, mais DSM6 ne le permet pas nativement ( DSM7 peut etre ? ) .
Meme si c'est contraignant en cas de modif, Il est aussi possible de rajouter les noms apres et de re-générer le certificat ou de crer un nouveau certificats uniquement pour ce nouveau nom.
 
  • J'aime
Réactions: f1oren
Je confirme ce que dit @EVOTk. Le mieux est de passer par le NAS et son reverse-proxy et de le laisser gérer le certificat LE (gratuit ^^).
Ton nom de domaine, il est chez un fournisseur type OVH ?
Si oui, il te sera possible de générer un certificat LE wildcard pour gérer *.ton-ndd.tld. Mais il faudra faire quelques manipulations supplémentaires.
Sinon il est possible de générer un certificat pour chaque service que tu utilises :
  • ton NAS , donc DSM je suppose ;
  • ton routeur, donc SRM ;
  • et jeedom.
Sinon, l'utilisation d'un nom de domaine synology règle le soucis car il est très facile de générer un certificat wildcard.

Dis nous en plus, et on pourra te conseiller sur la meilleure manière de procéder.

PS : pour le reverse proxy, voilà comment moi je fonctionne...
Je redirige tout traffic du port 443 depuis internet vers le port 443 du NAS. (ça, ça se passe dans le routeur, faut faire une transmission de port :
1635766250415.png
Sur le NAS, tu configures le reverse proxy pour chaque domaine utilisé :
  • dsm.ton-ndd.tld (en HTTPS, sur port 443) : redirige vers l'IP de ton NAS sur le port défini pour DSM :
    1635766352799.png
    Tu peux aussi définir un profil de contrôle d'accès pour restreindre l'accès à DSM à certaines IP (LAN et/ou internet), mais ce n'est pas obligatoire, mais conseillé pour la sécurité. Moi je n'autorise que les IP LAN et VPN.

  • SRM : srm.ton-ndd.tld en HTTPS sur 443, redirige vers le port de SRM sur l'IP du routeur :
    1635766970046.png
  • Et ainsi de suite...
 
  • J'adore
  • J'aime
Réactions: f1oren et EVO
Bonjour @wax77, @EVOTk et @MilesTEG1

Merci pour vos réponses.

J'ai bien un nom de domaine chez OVH et une IP dynamique, pour la partie DynDNS c'est ok.

Je prévois de mettre une wildcard au niveau DNS vers mon ndd et d'utiliser le reverse proxy du NAS (dommage que SRM n'en propose pas). Au niveau du certificat au pire je listerai manuellement les sous-domaines nécessaires si Synology ne permet pas de le générer avec une wildcard.

Du coup le certificat je le génère sur le NAS ? Comment je le met ensuite sur le routeur et la box Jeedom ? (ou alors le fait de passer par le reverse proxy du NAS pour accéder au routeur et à la box Jeedom ne nécessite pas d'installer dessus le certificat ? J'avoue que ce point est un peu flou pour moi).

@MilesTEG1 dans configuration que tu as fait, si je comprends même quand tu accèdes depuis l'extérieur à ton routeur via le reverse proxy c'est comme si tu y accédais depuis le LAN et non depuis le WAN ?

Comment vous gérez la partie renouvellement du certificat depuis le NAS ? J'ai cru comprendre qu'il existait une méthode permettant de ne plus avoir à ouvrir des ports et en utilisant à la place des enregistrements DNS ?
 
Je prévois de mettre une wildcard au niveau DNS vers mon ndd et d'utiliser le reverse proxy du NAS (dommage que SRM n'en propose pas). Au niveau du certificat au pire je listerai manuellement les sous-domaines nécessaires si Synology ne permet pas de le générer avec une wildcard.
Et bien il faut distinguer deux choses : un nom de domaine synology et le nom de domaine OVH.
Lorsque tu parles de "wildcard au niveau DNS" tu parles bien de mettre une redirection *.ton-ndd.ovh vers ton-ndd.ovh.
Pour ce nom de domaine, si tu veux faire un certificat wildcards, c'est possible, mais faut utiliser des solutions pas documentées par Synology, et pas possible depuis l'interface DSM... (c'est possible via deux tutos, en fonction de si tu comptes utiliser ou non Docker, dit moi ce que tu envisagerais ^^)

Pour un nom de domaine fourni par Synology (via l'interface de DSM) moyennant un compte Synology, là c'est possible d'avoir un certificat wildcards via l'interface de DSM.
@MilesTEG1 dans configuration que tu as fait, si je comprends même quand tu accèdes depuis l'extérieur à ton routeur via le reverse proxy c'est comme si tu y accédais depuis le LAN et non depuis le WAN ?
Alors non, car j'ai mis en place un profil d'accès qui empêche les connexions depuis l'extérieur via une liste d'IP autorisées :
1636011784291.png

Pour accéder à DSM et SRM via internet, je passe par le serveur VPN qui est sur mon routeur.
Comment vous gérez la partie renouvellement du certificat depuis le NAS ? J'ai cru comprendre qu'il existait une méthode permettant de ne plus avoir à ouvrir des ports et en utilisant à la place des enregistrements DNS ?
Alors pour ne plus avoir à ouvrir les ports, il faut utiliser une des deux méthodes dont j'ai parlé précédemment, qui se base sur une validation DNS (je sais pas trop comment ça marche :D ), et là on a du wildcard en prime :)
Moi j'utilise la méthode avec Docker.
Et le certificat généré sur le NAS reste sur le NAS. Avec le reverse proxy, pas besoin de le mettre sur les autres périphériques, c'est le reverse proxy qui est interrogé avec le nom de domaine donc c'est lui qui fourni le certificat :) après la redirection qu'il fait est transparente et ne concerne plus le navigateur qui a reçu son certificat :)
Le tuto que j'ai suivi c'est celui-là : (méthode avec Docker)

L'autre tuto c'est celui-là (sans docker) :


Je pense que le tuto Docker est le plus simple à suivre :)
 
Merci @MilesTEG1 pour ton aide, c'est précieux :-)

Oui je parlais d'un ndd chez OVH et de faire une redirection au niveau DNS de *.ton-ndd.ovh vers ton-ndd.ovh, ce point est OK

pour la wilcard sur le certificat, je peux l'impasse ce n'est pas indispensable ça éviter d'ouvrir trop de porte, un fois que j'aurais défini la liste des sous-domaines dont j'ai besoin. Je préfèrerai par simplicité utiliser les outils intégrés dans DSM mais en même temps j'ai pas spécialement envie d'ouvrir des ports juste pour ça. Du coup je vais lire les deux tutos pour me faire un avis. Vaste débat sur Docker que pour ma part je n'ai pas encore utilisé (mais il faut bien un début à tout ;-)

Surtout merci pour ta confirmation sur le lien entre certificat et reverse proxy, le plus gros truc qui me bloquait (y)

J'avance de mon côté et je reviendrais sûrement avec des questions :-)
 
  • J'aime
Réactions: MilesTEG
@f1oren
Nickel j'avais bien compris pour ton nom de domaine.
Pour les certificats, tu pourrais en effet ne gérer que domaine par domaine (machin.ndd.tld étant un domaine lui aussi comme l'est ndd.tld).
Mais c'est s'embêter et surtout comme tu dis, c'est ouvrir le port 80 au monde :)

Je te conseille vivement le tuto docker :)
Conseil : lit avant le tuto sur docker (généraliste) qui te permettra de comprendre ce que c'est et comment ça fonctionne :)
Seul bémol : il faudra jouer de la ligne de commande en SSH :) J'espère que tu ne craindras pas d'y mettre les mains ^^ Je te le cacherais pas, c'est risqué si tu copies/colles une commande que tu ne comprends pas :) Mais si tu fais attention à ce que tu fais, que tu cherches à bien comprendre les commandes que tu vas lancer, ça se passera bien ;)
Je suis passé par là, et j'ai jamais foiré mes NAS avec la ligne de commande :)
Pose toujours les questions concernant les commandes que tu vas passer si tu as des doutes.

Pour Docker, tu verras probablement des nouvelles utilisations s'offrir à toi :p Dès lors, je ne pourrais que trop te conseiller d'investir du temps sur les fichiers docker-compose.yml et l'installation de Portainer pour installer/gérer les conteneurs docker, car l'interface de DSM est plutôt limitée...
Bon là on entre dans un nouveau chapitre ^^ Termine déjà celui en cours :p