Aller au contenu

[TUTO] [Zone publique sur DNS Server] Renouvellement automatisé de certificat wildcard

Featured Replies

Posté(e)
Il y a 1 heure, Jeff777 a dit :

Des domaines supplémentaires : tu veux dire que nas1.domain, nas2..... sont des domaines propres avec des ip4 distinctes ?

Pas nécessairement, j'ai deux de ces NAS derrière la même IP publique (distingués avec le reverse proxy pour la partie HTTP), et un autre avec une autre adresse IP publique. Il faut bien comprendre que les rôles de serveur DNS n'ont rien à voir avec le fait que les NAS aient leur propre adresse IP.

  • Réponses 58
  • Vues 14.4 k
  • Créé
  • Dernière réponse

Meilleurs contributeurs dans ce sujet

Most Popular Posts

  • aozorashinyuu
    aozorashinyuu

    Hello, Here is a really big huge thanks for this script. I have a proposal to extends its capabilities:  - init method: add bool variable saying whereas the ZONE_NAME is an alias domain or not

  • Bonsoir, Mes deux NAS ont renouvelé leur certificat aujourd'hui. Merci @.Shad.     👍

  • Ah je suis rassuré ! et cela rassurera peut-être ceux qui veulent se lancer dans l'aventure.

Images postées

Posté(e)

@PiwiLAbruti

Ce que je comprends c'est que tu as deux NAS avec la même IP publique qui ont chacun une zone publique.

Ce que je ne pige pas c'est comment une requête extérieure peut-elle consulter l'un OU l'autre des zones  avec une redirection du routeur qui ne peut ne diriger que vers l'un des deux NAS. Sauf à utiliser l'IPV6.

Si tu te sers des reverses proxies je ne vois pas où interviennent les 2 zones publiques.

Mais bon, même si j'ai pas mal bidouillé sur DNS serveur je suis loin d'être un expert mais j'essaie de comprendre 😉

 

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

comment une requête extérieure peut-elle consulter l'un OU l'autre des zones  avec une redirection du routeur qui ne peut ne diriger que vers l'un des deux NAS.

Les zones sont répliquées entre tous les NAS, ainsi je n'ai pas besoin que les deux serveurs DNS derrière une même adresse IP publique soient accessibles. Le serveur vers lequel est redirigé le port udp/53 donne accès aux résolutions de sa zone principale et des zones secondaires répliquées depuis d'autres serveurs DNS.

Posté(e)
il y a 42 minutes, PiwiLAbruti a dit :

Le serveur vers lequel est redirigé le port udp/53 donne accès aux résolutions de sa zone principale et des zones secondaires répliquées depuis d'autres serveurs DNS

Ce que je veux dire c'est que le port udp/53 est toujours redirigé vers le même nas donc je me demande l'intérêt des zones publiques sur les autres nas. Tu peux avoir toutes les zones publiques en master sur ce nas. Je me trompe ?

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

je me demande l'intérêt des zones publiques sur les autres nas.

Si le NAS faisant office de serveur DNS principal tombe, un autre est capable de prendre le relai en modifiant simplement la destination de la règle NAT.

Posté(e)
il y a 49 minutes, PiwiLAbruti a dit :

un autre est capable de prendre le relai en modifiant simplement la destination de la règle NAT

oui mais en faisant une intervention sur le routeur à moins que ton routeur soit capable de le faire sans intervention extérieur.

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

en faisant une intervention sur le routeur

C'est bien ça. Je n'ai aucun intérêt à le faire en automatique vu l'extreme rareté de ce type d'événement. D'ailleurs si ce NAS est impacté, le 3ème NAS derrière une autre adresse IP publique devrait prendre le relai étant donné qu'il est spécifié dans les enregistrements NS des zones répliquées (à tester).

Posté(e)
il y a 4 minutes, PiwiLAbruti a dit :

D'ailleurs si ce NAS est impacté, le 3ème NAS derrière une autre adresse IP publique devrait prendre le relai étant donné qu'il est spécifié dans les enregistrements NS des zones répliquées (à tester).

oui ça marche si ton troisième nas est sur une autre IP publique sur un autre routeur. 

Avoir deux nas sur le même réseau interne avec des zones publiques accessibles de l'extérieur sans intervention sur le routeur ce n'est possible à mon avis qu'avec l'aide de l'IPV6 (voir 2ème tuto en signature). Sauf à avoir un routeur qui puisse changer ses règles NAT en cas de défaillance du NAS vers lequel la requête est dirigée. Mais cela je ne sais pas si ça existe 🙄

En tout cas merci de l'échange 👍

Posté(e)
Il y a 1 heure, Jeff777 a dit :

Avoir deux nas sur le même réseau interne avec des zones publiques accessibles de l'extérieur sans intervention sur le routeur ce n'est possible à mon avis qu'avec l'aide de l'IPV6

Ce n'est pas un problème, je n'ai pas besoin que les deux serveur DNS derrière une même adresse IP soient accessibles depuis l'extérieur pour que toutes les zones publiques soient visibles.

Posté(e)

Je voulais dire

Avoir deux nas sur le même réseau interne avec des zones publiques accessibles de l'extérieur (même en cas de panne de l"autre )sans intervention sur le routeur ce n'est possible à mon avis qu'avec l'aide de l'IPV6.

Mais pas grave.😉

Posté(e)

Non, si les zones sont répliquées entre les serveurs DNS ça ne pose pas de problème.

Modifié par PiwiLAbruti

Posté(e)

EDIT Fais un essai, coupe le nas sur lequel est redirigé le/les ports 80/443  et essaie une requête externe sur un des enregistrements de l'autre nas du même réseau interne.

Modifié par Jeff777

Posté(e)

On ne parle pas de la même chose.

Concernant DNS Server, il n'est question que du port udp/53. Je ne parle que du fait que les zones publiques ne sont pas rattachées à un seul NAS puisqu'elles sont répliquées.

Posté(e)
il y a 20 minutes, PiwiLAbruti a dit :

On ne parle pas de la même chose.

C'est possible. Ce qui est certain c'est que l'on ne se comprend pas. Mais ce n'est pas grave.😁

Ah tu relances le sujet en corrigeant ton post 🤣

il y a 27 minutes, PiwiLAbruti a dit :

Je ne parle que du fait que les zones publiques ne sont pas rattachées à un seul NAS puisqu'elles sont répliquées.

Oui j'ai compris ça. Mais ce que je dis c'est qu'il est inutile de répliquer une zone publique sur un autre nas du même LAN vu que le NAT ne peut rediriger les requêtes extérieures que vers un seul NAS. Donc une des zones ne sera jamais consultée.

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

Donc une des zones ne sera jamais consultée.

Non, puisqu'elles sont répliquées et consultables sur tous les NAS.

Posté(e)

Regarde les options de transfert de zones et la création de zones secondaires (slave) dans DNS Server, tu comprendras 😉

Posté(e)

Renouvellement des certificats de mes deux NAS réussi. Mais il a fallu retirer le -x de la première ligne du script.

Edit : il faut laisser le -x 

Modifié par Jeff777

  • 6 mois après...
Posté(e)

Bonjour,

Renouvellement réussi ce jour sur DSM6 avec un nouveau script compatible DSM6/DSM7.😃

Reste à confirmer sur DSM7 lorsque j'aurai changé de NAS ou s'il y a des amateurs 🙄 (le script a toutefois été testé en simulation sur un fichier DSM7)

La modification tient compte des commentaires ajoutés sur le fichier zone par DSM7, commentaires non présents sur le fichier DSM6.

  • 2 mois après...
Posté(e)

Renouvellement réussi ce jour. Mais comme ça n'intéresse personne c'est la dernière fois que je le dis😄.

Sinon la compatibilité DSM6/7 n'est pas en cause dans mon script. Par contre il est compatible des fichiers de zone :

Capture1.jpg

ou

Capture.jpg

Le premier (sans les commentaires) étant le fichier master créé par DNS Serveur, le second (avec commentaires) le fichier des slaves après transfert.

 

Mais le fichier impliqué dans le script est le master DNS Serveur le script actuel devrait donc toujours fonctionner.

Modifié par Jeff777

  • 2 mois après...
Posté(e)

Bonjour à tous,

Cette nuit c'était le test du script sous DSM7. En effet jusqu'au dernier renouvellement j'avais le script sur le DS212+ qui est bien sûr en DSM6.

J'avais remplacé le DS212+ par le DS218+ réinitialisé  puis l'avait restauré avec Hyperbackup depuis le DS220+ (sauvegarde du DS212+).

Après réinstallation de acme selon le tuto d' @oracle7  j'attendais le prochain renouvellement des certificats.

 

Résultats du renouvellement de cette nuit :

Premier problème : l'autorité de certification dans acme.sh pour le renouvellement  n'était pas le bonne:

DEFAULT_CA=$CA_ZEROSSL     au lieu de

DEFAULT_CA=$CA_LETSENCRYPT_V2
 

Première question à @oracle7(J'avoue ne pas avoir lu en détail les derniers posts de ton tuto.) Quelle mauvaise manip j'ai bien pu faire ?

 

Après correction, deuxième problème : la commande synoservice de la ligne 254 (synoservice --restart pkgctl-DNSServer) n'est pas trouvée.

Un petit tour sur le net j'ai trouvé ceci "They switched to using systemd in DSM7. The correct command would now be “synosystemctl restart ”

Donc  remplacemant de " synoservice --restart pkgctl-DNSServer" par "synosystemctl restart pkgctl-DNSServer" (attention il y a aussi un contrôle en début de script  "synoservice --start pkgctl-DNSServer" à corriger).

Et là renouvellement du certificat et déploiement sur les 3 synos 😎

Après une recherche sur le forum je me suis rendu compte que ce problème était mentionné un certain nombre de fois et je ne l'avais pas vu 😳

Seconde question à @.Shad. même s'il n'y a pas grand monde d'intéressé peux-tu faire la modif pour DSM7 dans le tuto ?

 


 

 

Posté(e)

@Jeff777

Bonjour,

Il y a 1 heure, Jeff777 a dit :

Premier problème : l'autorité de certification dans acme.sh pour le renouvellement  n'était pas le bonne:

DEFAULT_CA=$CA_ZEROSSL     au lieu de

DEFAULT_CA=$CA_LETSENCRYPT_V2

Comme tu as réinstallé acme.sh, vu de acme.sh il s'agissait donc d'une première création du certificat. Il fallait donc pour avoir un certtificat LE aulieu de ZeroSSL par défaut, ajouter les options :

--set-default-ca --server letsencryp

à la commande

$ ./acme.sh --issue --keylength 4096 -d "$CERT_DOMAIN" -d "$CERT_WDOMAIN" --dns "$CERT_DNS" --set-default-ca --server letsencrypt

Du coup avec l'exécution, acme.sh inscrit automatiquement la variable d'environnement DEFAULT_ACME_SERVER='https://acme-v02.api.letsencrypt.org/directory'  dans le fichier account.conf (/usr/local/share/acme.sh/account.conf).

Ensuite partir du moment où cette variable est présente dans account.conf il n'y a plus besoin d'ajouter les deux options suscités dans la commande de création du certificat sinon cela génère une erreur d'exécution ensuite.

Enfin, comme tu es sauf erreur de ma part sous DSM7, il ne faut plus utiliser le script python pour le renouvellement du certificat. Je te renvoie à remonter les derniers posts du TUTO c'est expliqué et la commande de renouvellement à utiliser y est donnée.

Cordialement

oracle7😉

 

 

 

Posté(e)
il y a 20 minutes, oracle7 a dit :

Ensuite à partir du moment où cette variable est présente dans account.conf il n'y a plus besoin d'ajouter les deux options suscités dans la commande de création du certificat sinon cela génère une erreur d'exécution ensuite.

Ah génial. Tout à donc fonctionné comme prévisible et je n'ai plus rien à modifier. Cela dit, si la modif dans acme.sh je l'avais faite d'entrée, je n'aurai pas eu d'erreur car j'étais déjà avec un certificat Let's Encrypt non ?

 

il y a 20 minutes, oracle7 a dit :

Enfin, comme tu es sauf erreur de ma part sous DSM7,

Ben oui ...et c'était bien le soucis 🤣

il y a 20 minutes, oracle7 a dit :

il ne faut plus utiliser le script python pour le renouvellement du certificat

Euh... je n'utilise pas le script python mais celui de @.Shad. qui consiste à utiliser la méthode manuelle d'acme en l'automatisant (voir le Tuto de ce sujet).

Modifié par Jeff777

Posté(e)

@Jeff777

Bonjour,

il y a une heure, Jeff777 a dit :

Cela dit, si la modif dans acme.sh je l'avais faite d'entrée, je n'aurai pas eu d'erreur car j'étais déjà avec un certificat Let's Encrypt non ?

Oui c'est cela.

Bon bah voilà encore une affaire de résolue 🤣

Cordialement

oracle7😉

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.

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.