Aller au contenu

[TUTO OBSOLÈTE] Certificat TLS/SSL - Let's Encrypt "Wildcard"


unPixel

Messages recommandés

@Jeff777

Bonjour,

J'ai moi aussi reçu ce mail de SSLforFree, comme je suis "joueur" j'ai essayé la création d'un certificat wilcard sur mon domaine.

  1. er constat : tout est fait pour que tu utilises l'abonnement Premium à 50$ par mois. IL faut bien faire attention où tu cliques. Pas cool ....
  2. ème constat : impossible de créer un certificat wilcard comme avant. Cela te revoie et t'impose de prendre du Premium. Donc pour du gratuit initialement : eh bien pas totalement au final ! Cela passe à 10$ par mois en version Basic.

Finalement, je vais laisser tomber cette solution SSLforFree dès l'expiration de mon certificat actuel, pour en créer un, le moment venu avec la méthode acme avec un chargement manuel sur NAS et Routeur.

Du coup cela me renforce dans l'idée de reprendre et adapter si besoin la méthode d'automatisation du renouvellement initiée et décrite ci-avant dans le Tuto par @unPixel et @PPJP.

Cordialement

oracle7😉

 

 

Modifié par oracle7
Lien vers le commentaire
Partager sur d’autres sites

Bonjour @oracle7

Désolé je viens de voir ton message ! Ce que tu dis confirme ce que je viens de comprendre 😬

D'ailleurs le changement de nom aurait dû me mettre la puce à l'oreille (zéro c'est zéro !).

Me voilà bien embêté, avec la wildcard je me suis éclaté dans les proxies inverses. Je dois en avoir une trentaine alors sans wildcard ça va être galère !

Quel est l'intérêt du renouvellement automatique s'il n'est plus possible d'obtenir une wildcard gratuite ?

 

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

Avec un certificat Let's Encrypt géré par le NAS tu peux inscrire des "sous-domaines" au moment de la génération du certificat.
Par contre la liste inscrite est je crois limitée en nombre de caractères (à confirmer) et de ne peut plus être modifier .. sauf à regénérer un nouveau certificat … mais avec le NAS c'est assez facile !

C'est ce que j'ai fais début janvier pour continuer à utiliser mon reverse proxy après avoir abandonné SSLforFree !

Lien vers le commentaire
Partager sur d’autres sites

Ben oui, c'est ce que je faisais avant de découvrir ce tuto. Mais c'est vraiment galère, tu as intérêt à faire plusieurs certificats et si tu te trompes trop souvent tu es bloqué car le nombre de renouvellement par semaine est limité à 5 je crois.

Question : pourquoi abandonner SSL for free début janvier ? Tu étais au courant qu'il allaient arrêter la wildcard gratuite ?

Lien vers le commentaire
Partager sur d’autres sites

Oui c'est une bonne raison. Je vais réduire mon nombre de (sous)domaines pour lesquels je vais demander un certificat à ceux que je veux atteindre de l'extérieur et interdire aux autres l'accès externe. Par contre quand je pense aux enregistrements CNAME que je vais devoir faire 🙄

Lien vers le commentaire
Partager sur d’autres sites

Sinon je rabâche mais l'image Docker letsencrypt de Linuxserver c'est juste magique, ça gère le renouvellement des certificats (wildcard ou non, dns ou http) automatiquement, et ça intègre un proxy inversé nginx complètement pré-configuré qui marche du tonnerre, quelque soit la forme (container, vm, apps Synology) et l'hôte (le NAS ou tout autre chose).
J'avais un peu peur de cette image au début, mais vraiment tout est parfaitement pensé et simplifié.
Si certains veulent essayer mais sont un peu perdus je peux volontiers les aider.

Lien vers le commentaire
Partager sur d’autres sites

@Jeff777

Bonjour,

IL y a une solution au problème pour générer un wilcard Let'sEncrypt "GRATUIT", c'est la méthode dite "acme" que j'ai décrit ici  et qui marche chez moi.

Seul truc pour l'instant, c'est qu'il faut surveiller la date de renouvellement pour faire celui-ci "à la main" et recharger ensuite le certificat sur le NAS/Routeur.

De toutes façons, mis à part que SSLforFree nous prévenait par mail de l'échéance, il fallait avec eux aussi re-générer le certificat pour le recharger manuellement après. Donc pas de changement notable avec "acme" dans la pratique.

Y-a plus qu'à attendre qu'une bonne âme fasse un script qui automatise cela.

Cela dit il y avait bien une base de script initiée et décrite ci-avant dans le Tuto par @unPixel et @PPJP qu'il suffirait de reprendre et d'adapter, pour ma part mes connaissances du moteur du NAS sont encore trop insuffisantes pour réaliser cela même si je me débrouille en shell.

Donc s'il y a des amateurs ...

@.Shad.

Tu ne pourrais pas nous faire un Tuto (au moins une trame de principe, détaillée) sur ta méthode (qui semble intéressante au demeurant) car rien que le mot "Docker" pour sa mise en œuvre, en effraie encore plus d'un ici. Moi le premier ...

Cordialement

oracle7😉

 

 

Lien vers le commentaire
Partager sur d’autres sites

Merci @.Shad. et @oracle7 je vais regarder ces deux solutions. En fait mon certificat wildcard expire le 7 juillet ça laisse un peu de temps ! 

Edit : je commence par le docker le côté renouvellement automatique me tente. Par contre @.Shad., le proxy inversé peut marcher avec celui du nas ou c'est ou l'un ou l'autre ?

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

Le plus simple c'est d'en avoir qu'un seul, vu qu'on va translater le port 443, on ne peut pas le faire vers différentes adresses avec du mappage statique, donc moi je remplacerais celui du Syno (qui au demeurant permet pas mal de choses) par celui du conteneur (qui permet encore plus de choses).
Je vais essayer de faire un petit guide, mais je n'ai pas exploré toutes les possibilités loin de là, par exemple je n'utilise pas sa fonctionnalité wildcard, mais avec la doc super complète sur leur GitHub, on va s'en sortir j'ai bon espoir. 🙂 

Modifié par .Shad.
Lien vers le commentaire
Partager sur d’autres sites

@Jeff777 pour les CNAME à mettre pour les "sous-domaines" tu n'est pas obligé de les mettre tous individuellement tu peux n'en mettre qu'un seul générique "*.ndd.tld".
Bon ça autorise l'utilisation de tous les "sous-domaines" mais il y a un filtre d'entrée avec le reverse proxy ça devrait pouvoir aller !

Je vais aussi regarder la solution avec ACME @oracle7

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Je me suis lancé dans le docker en utilisant la méthode docker-compose :

---
version: "2.1"
services:
  letsencrypt:
    image: linuxserver/letsencrypt
    container_name: letsencrypt
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Paris
      - URL="mondomaine"
      - SUBDOMAINS=wildcard,
      - VALIDATION=dns
      - DNSPLUGIN=ovh #optional
      - PROPAGATION= #optional
      - DUCKDNSTOKEN= #optional
      - EMAIL="monemail" #optional
      - DHLEVEL=2048 #optional
      - ONLY_SUBDOMAINS=false #optional
      - EXTRA_DOMAINS= #optional
      - STAGING=false #optional
    volumes:
      - </volume1/docker/letsencrypt/data/>:/config
    ports:
      - 443:443
      - 80:80 #optional
    restart: unless-stopped

 

un répertoire data est créé dans docker/letsencrypt qui héberge aussi le docker-compose

@.Shad. puisque tu proposes ton aide, j'ai deux questions 😉 :

1/ J'ai choisi la méthode dns avec ovh comme dnsplugin. Mais en fait, bien que j'ai un domaine chez ovh, je n'ai pas de zone chez eux (j'ai mes propres zones dns sur les nas). Est-ce que cette méthode est correcte ou bien faut-il choisir un autre plugin ?

2/ J'ai tenté un "docker-compose up -d" et la réponse est 

Named volume "</volume1/docker/letsencrypt/data/>:/config:rw" is used in service "letsencrypt" but no declaration was found in the volumes section.

J'ai fait d'autres tentatives avec la même réponse dont

volumes:
      - <./data/>:/config

comment déclarer correctement ce volume ?

Lien vers le commentaire
Partager sur d’autres sites

1/ Bonne question, là je ne sais pas du tout, vu que ma zone est chez OVH je ne me suis pas posé la question. Les DNSPLUGIN permettent en fait d'accéder automatiquement à la zone DNS via les API, ajouter les enregistrements TXT _acme.challenge, et les supprimer une fois les certificats validés. Question : est-ce que les enregistrements CNAME ou A doivent exister sur la zone DNS d'OVH pour que ça marche, mystère, il n'y a qu'à tester j'ai envie de dire 😛 

2/ Il ne faut pas laisse les "<" et ">"

Lien vers le commentaire
Partager sur d’autres sites

On progresse :

 

root@monNAS:/volume1/docker/letsencrypt# docker-compose up -d
Creating network "letsencrypt_default" with the default driver
Creating letsencrypt ... error

ERROR: for letsencrypt  Cannot start service letsencrypt: driver failed programming external connectivity on endpoint letsencrypt (0af80fe68fbb92fb70d54db80b520                                                                ed247e3995b4f49fe4aacddf246b7778cfb): Error starting userland proxy: listen tcp 0.0.0.0:443: bind: address already in use

ERROR: for letsencrypt  Cannot start service letsencrypt: driver failed programming external connectivity on endpoint letsencrypt (0af80fe68fbb92fb70d54db80b520                                                                ed247e3995b4f49fe4aacddf246b7778cfb): Error starting userland proxy: listen tcp 0.0.0.0:443: bind: address already in use
ERROR: Encountered errors while bringing up the project.

 

Je crois qu'il faut peut-être que je donne quelque part l'accès à mon NAS :

For dns validation, make sure to enter your credentials into the corresponding ini (or json for some plugins) file under /config/dns-conf

 

Je vais me documenter sur les différents pluggins indiqués par github https://github.com/linuxserver/docker-letsencrypt

Mais là je dois partir. A plus....

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

Nginx écoute déjà sur le port 443 du Synology, donc le conteneur letsencrypt ne peut pas le faire.
On pourrait décaler les ports d'Nginx sur le Syno mais je ne suis pas pour toucher à DSM.
2 solutions que j'entrevois, à tester dans les faits je ne sais pas si ça marche :

  • Tu translates les ports HTTP et HTTPS, donc par exemple 7080:80 et 7443:443. Et au niveau du modem, tu rediriges le port 80 (443) de ta box vers le port 7080 (7443) du NAS. Sur le papier ça me semble pouvoir faire l'affaire.
  • Tu crées ton conteneur avec le driver macvlan, ça crée une machine sur ton réseau physique (avec une IP du type 192.168.x.x), et on n'est plus tributaire des ports utilisés par le NAS.

La 2ème solution est plus complexe à mettre en oeuvre, j'essaierais la première dans un premier temps.

Lien vers le commentaire
Partager sur d’autres sites

Bonsoir,

Il y a 8 heures, .Shad. a dit :

La 2ème solution est plus complexe à mettre en oeuvre, j'essaierais la première dans un premier temps.

Déjà la première me semble assez compliquée. Je vais regarder ça calmement demain.

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

Il y a 18 heures, .Shad. a dit :

Et au niveau du modem, tu rediriges le port 80 (443) de ta box vers le port 7080 (7443) du NAS.

J'ai un routeur en DMZ de la box c'est donc là qu'il faut que je fasse le changement. Mais je crains pour ma redondance de reverse proxy. Dans ma config les deux NAS peuvent répondre à une requête externe l'un en IPV4 l'autre en IPV6.

Soit la requête est dirigée vers l'IPV4 de mon réseau et est routée vers le NAS1 grâce à la redirection des ports 80/443 soit c'est l'IPV6 du nas2 et dans ce cas la requête ignore la redirection et va directement sur le NAS2.

 

 

Lien vers le commentaire
Partager sur d’autres sites

Je ne pense pas que ce soit possible dans ce cas.
Si le port 443 des deux NAS est nécessaire, et qu'ils se trouvent derrière la même box, alors tu ne pourras pas utiliser cette image.
Tu peux très bien héberger ce conteneur sur une autre machine (Raspberry?) cela dit.

Lien vers le commentaire
Partager sur d’autres sites

il y a 1 minute, .Shad. a dit :

Tu peux très bien héberger ce conteneur sur une autre machine (Raspberry?) cela dit.

Là c'est possible. J'ai un Rasberry donné par un collègue et je ne l'ai pas encore utilisé. Je vais peut-être tenter l'expérience mais ça va prendre un peu de temps pour le prendre en main. Merci pour tes conseils 👍

Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines après...

Après recherche, j'ai trouvé et testé avec succès FreeSSL.org pour un renouvellement de certificat Wildcard Let's Encrypt fait auparavant avec SSLforFree

Gratuit et facile à utiliser. Pour moi :

Saisie du nom de domaine *.ndd

Saisie de l'adresse Email

Stockage des certificats en local avec le logiciel KeyManager puis export dans le format désiré ou tous formats (vers mes synology)

Vérification DNS

 

A priori il y a un service de rappel de fin de validité de certificat. Je ne sais pas si c'est automatique ou s'il faut s'enregistrer ! Je verrai et vous dirai le 9 septembre ...

 

Modifié par vieuxgrincheux91@free.fr
Lien vers le commentaire
Partager sur d’autres sites

Bonjour @vieuxgrincheux91@free.fr

Ce serait bien que tu te présentes ici https://www.nas-forum.com/forum/forum/16-présentation/ 😉

Sinon il y a plusieurs façon d'avoir une wildcard gratuite pour 3 mois. Ce qui manque c'est le renouvellement automatique. Si tu es chez OVH,  @oracle7 a fait ce Tuto :

Le renouvellement est presque totalement automatisé ! Il manque la configuration du certificat.

 

Modifié par Jeff777
Lien vers le commentaire
Partager sur d’autres sites

  • 2 semaines après...

Bonjour Jeff777,

Il me semblait l'avoir fait lors de mon inscription en 2014. Je vais mettre à jour.

Les derniers échanges sur le sujet concernaient le problème de fusion de SSLForFree et ZeroSSL qui au final devient payant. Donc ma solution trouvée en alternative à SSLForFree. 

Pour ce qui concerne le renouvellement automatique cela peut être un problème, mais pour un certificat, un renouvellement tous les 3 mois c'est un quart d'heure seulement ...

Lien vers le commentaire
Partager sur d’autres sites

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…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

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.