C'est quoi le DynDNS ?

La zone Domain Name System (DNS) d’un nom de domaine constitue le fichier de configuration de ce dernier. Elle se compose d’informations techniques, appelées enregistrements. Pour diverses raisons, comme l’auto-hébergement de son propre serveur sans bénéficier d’une adresse IP dite « fixe », donc dynamique (exemple Orange), mettre à jour dynamiquement un enregistrement DNS peut s’avérer indispensable afin d’éviter une interruption prolongée de l’un de vos services.

Il existe pas mal de fournisseurs gratuits de DynDNS, on va se pencher sur deSEC qui propose un service de DNS dynamique gratuit, vous pouvez d'abord vous inscrire gratuitement.

Puis créez un compte et attendez vos données d'accès par e-mail.

Dès que vous disposez de ces informations, on va pouvoir commencer à configurer le client.

La configuration

Saisir les commandes suivantes :

apt install ddclient -y

Si le client d'installation ne propose pas de renseigner d'informations, vous pouvez le relancer avec :

dpkg-reconfigure ddclient

Dans la configuration ddclient, vous commencez par sélectionner "Autre".

Renseignez comme serveur DNS dynamique :

update.dedyn.io

Choisissez comme protocole :

dyndns2

Sélectionnez le nom d'utilisateur que vous avez choisi et confirmé dans l'e-mail comme nom d'utilisateur, puis confirmez le mot de passe qui vous ai demandé deux fois.

Entrez ensuite le nom de votre interface réseau, vous pouvez l'afficher avec la commande : ip link show

Ne pas accepter la question de la connexion PPP.

Ensuite, laissez le processus démarrer automatiquement en répondant par "Oui", puis déterminez l'intervalle d'exécution par 300.

Si votre interface ne peut pas déterminer l'adresse IP publique, ajoutez server=update.dedyn.iosur le fichier suivant :

nano /etc/ddclient.conf

puis :

use = cmd, cmd = 'curl https://checkipv4.dedyn.io/'

Enregistrez et quittez le fichier.

Le ddclient n'utilise pas le chiffrage SSL, pour corriger cela, nous modifions à nouveau la configuration de ddclient :

nano /etc/ddclient.conf

et ajouter ssl=yessur la ligne server=.

La configuration complète ressemble à ceci :

# Configuration file for ddclient generated by debconf
# /etc/ddclient.conf

protocol=dyndns2
use=if, if=esp0s3
ssl=yes
use=cmd, cmd='curl https://checkipv4.dedyn.io/'
server=update.dedyn.io
login=votrechoix.dedyn.io
password='passsword'
votrechoix.dedyn.io
Pensez à remplacer le login et le password par vos informations !

Exécutez la commande suivante pour tester votre ddclient :

ddclient -force

Le résultat doit ressembler à ceci :

Enfin, configurez le ddclient pour lui permettre de fonctionner comme un processus (daemon) :

nano /etc/default/ddclient

... 
run_dhclient = "false" 
... 
run_ipup = "false" 
... 
run_daemon = "true" 
... 
daemon_interval = "300" 
...

Par mesure de précaution, vous pouvez configurer un cron qui met régulièrement à jour votre adresse IP publique :

crontab -e

15 05 * * * / usr / sbin / ddclient --force

Vous pouvez désormais accéder à votre Nextcloud dans le monde entier via une adresse DynDNS.