Ce billet explique comment configurer Coolify et Traefik pour gérer des certificats SSL wildcard sur des sous-domaines dynamiques (comme user1.monapp.com, user2.monapp.com, etc.). L’auteur détaille d’abord le problème : avec des sous-domaines dynamiques, la validation HTTP classique de Let’s Encrypt ne fonctionne pas, car les domaines n’existent pas encore au moment de la demande de certificat. La solution passe par le DNS challenge, qui consiste à prouver le contrôle du domaine en ajoutant un enregistrement TXT dans la zone DNS, plutôt qu’un fichier sur le serveur.
Le guide décrit la configuration d’un résolveur de certificats dans Traefik (via Coolify) en utilisant l’API d’un fournisseur DNS compatible (comme bunny.net), puis montre comment appliquer ce résolveur à une application. Enfin, il aborde la gestion des custom domains, où l’utilisateur peut utiliser son propre domaine, en combinant un routeur Traefik avec une règle HostRegexp pour capturer tout le trafic inconnu et générer automatiquement les certificats via HTTP challenge. Un retour d’expérience utile pour qui veut automatiser la gestion du SSL sur des architectures multi-tenants.
Ce billet explique comment configurer une application multi-tenant avec des sous-domaines dynamiques (ex: clientA.monapp.com, clientB.monapp.com) en utilisant Coolify et Nuxt. Coolify, une alternative open-source aux PAAS comme Heroku, permet de déployer des applications et services managés. L’astuce repose sur l’utilisation des wildcard domains et la modification des Container labels de Traefik pour accepter tout le trafic sur *.monapp.com via une expression régulière (HostRegexp(.+.monapp.com$)). Côté Nuxt, un composableuseTenant()` extrait le sous-domaine de l’URL pour identifier le client. Une solution simple une fois la configuration Traefik bien comprise !
Tout est dans le titre
Dans la partie précédente https://blog.blaisot.org/letsencrypt-wildcard-part1.html l'auteur montrait le process de génération le certificat wildcard. Il restait l'étape d'édition des DNS qu'il décrit ici (avec plusieurs cas pratiques)
Tout est dans le titre
Tout est dans le titre (ici NPM = Nginx Proxy Manager)
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Tout est dans le titre
Let's encrypt permet désormais de générer des certificats wildcard. L'auteur montre comment faire
Pratique : on veut tester un site mobile avec son smartphone en local, on crée un sous domaine montest.10.0.0.1.xip.io (avec 10.0.0.1 = adresse IP publique) et ce service se charge de rediriger vers 10.0.0.1 ! Ensuite, il suffit de créer un virtual host avec ce sous domaine, et à nous les joies du développement en local :-)