Utiliser le service DynDNS d’OVH avec un Fortigate

Hello world,

Petite astuce que j’utilise depuis quelques années avec mes firewalls Fortigate, pour pouvoir bénéficier du DynDNS d’OVH !

Le DynDNS d’OVH s’appuie sur un protocole similaire au très célèbre DynDNS.org. Malheureusement la requête Web de mise à jour du Fortigate n’est pas complète pour OVH, il manque une variable… et le Fortigate ne permet pas de changer l’URL à utiliser.

Qu’à cela ne tienne, nous allons utiliser 2 bidouilles pour rerouter le flux vers OVH

Etape 1 : Créer un champ DynHOST

Connectez-vous sur votre manager OVH, et rendez vous dans l’onglet « DynHost », puis cliquer sur « Ajouter un DynHost »

Renseignez les paramètres du champ DynHost, avec une adresse IP fictive. Cela nous permettra de valider après implémentation que cela fonctionne correctement.

Cliquer ensuite sur « Gérer les accès », puis « Créer un Identifiant ». Renseignez les paramètres du compte DynHost, ils seront renseignés ensuite sur le Fortigate.

Etape 2 : Créer un « override DNS » sur le Fortigate

Le Fortigate va vouloir se rendre sur le domaine « members.dyndns.org ». Nous allons nous arranger pour créer une zone DNS bidon, permettant de rediriger la résolution sur OVH. Il n’est pas nécessaire d’activer la brique « DNS Server » sur le Fortigate, ce dernier résout déjà ses propres requêtes sur lui-même.

config system dns-database
    edit "members.dyndns.org"
        set domain "members.dyndns.org"
        set ttl 60
        config dns-entry
            edit 1
                set hostname "members.dyndns.org"
                set ip 213.186.33.34
            next
        end
    next
end

Etape 3 : Configurer le DynDNS

Nous allons configurer un serveur DynDNS, et nous allons implémenter notre 2eme bidouille pour que le Fortigate envoie toutes les variables manquantes. Il faut savoir que le Fortigate communique avec DynDNS via des requêtes « GET ». Nous allons donc « injecter » notre variable manquante dans le nom de domaine, en rajoutant « &system=dyndns »

config system ddns
    edit 1
        set ddns-server dyndns.org
        set ddns-domain "mondyndns.g-rom.info&system=dyndns"
        set ddns-username "g-rom.info-fortigate"
        set ddns-password ****
        set monitor-interface "wan1"
    next
end

On valide ensuite le changement :

C:\Users\g-rom>ping mondyndns.g-rom.info

Envoi d’une requête 'ping' sur mondyndns.g-rom.info [203.0.113.42] avec 32 octets de données :
Réponse de 203.0.113.42 : octets=32 temps<1ms TTL=255
Réponse de 203.0.113.42 : octets=32 temps<1ms TTL=255
Réponse de 203.0.113.42 : octets=32 temps<1ms TTL=255
Réponse de 203.0.113.42 : octets=32 temps<1ms TTL=255

Enjoy !! \o/

3 commentaires :

  1. I have a Problem: set ddns-domain « baunty1.**.de&system=dyndns »
    ddns-domain, baunty1.**.de&system=dyndns, is not a valid domain name.

  2. I’ve the same issue. What is you firmware version ?
    Probably, constraint added for this value with recents versions ..

  3. Hi,
    I confirm this issue.
    I think Fortinet has added some regular expressions in order to prevent this hack.
    As a consequence, I have migrated to FortiDDNS and I use a CNAME on my original domain, pointing to my FortiDDNS entry.
    It works properly but I consent you are dependent to Fortinet.
    Best regards,

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *