J’ai besoin du logiciel inadyn pour mettre à jours mes enregistrements dyndns chez OVH.
La version de Inadyn packagée par Debian est trop ancienne, et non compatible avec OVH, contrairement aux versions plus récentes dispos sur github.
Compilation et installation
## Prérequis
sudo aptitude install wget libssl-dev libgnutls28-dev autoconf libconfuse2 libconfuse-dev checkinstall pkg-config
## Répertoires nécessaires pour checkinstall
sudo mkdir /usr/local/share/doc
sudo mkdir /usr/local/share/man
sudo mkdir /usr/local/share/doc/inadyn
## libite
wget -c https://github.com/troglobit/libite/releases/download/v2.1.0/libite-2.1.0.tar.xz
tar -xvf libite-2.1.0.tar.xz
cd libite-2.1.0/
./configure
make -j5
sudo checkinstall ## Valider avec entrée plusieurs fois ; modifier les valeurs si souhaité
sudo dpkg -i libite_2.1.0-1_amd64.deb
sudo ldconfig
## inadyn
cd ..
wget -c https://github.com/troglobit/inadyn/releases/download/v2.5/inadyn-2.5.tar.xz
tar -xvf inadyn-2.5.tar.xz
cd inadyn-2.5/
./configure
make
checkinstall
sudo dpkg -i inadyn_2.5-1_amd64.deb
Fichier de conf
/etc/inadyn.conf
provider default@ovh.com {
ssl = true
username = monsite-admin
password = superpassword
hostname = {domaine.monsite.fr}
checkip-command = /root/.local/bin/scripts/checkIP.sh
}
provider default@ovh.com:2 {
ssl = true
username = monsite-admin
password = superpassword
hostname = {autredomaine.monsite.fr}
checkip-command = /root/.local/bin/scripts/checkIP.sh
}
Pour que les utilisateurs du serveur ne puissent lire les identifiants :
sudo chmod 600 /etc/inadyn.conf
On peut ajouter autant de hostname qu’on veut, en changeant le chiffre après default@ovh.com:
.
Les username/password doivent être définis sur l’interface OVH.
Script de reconnaissance d’IP (checkIP.sh)
#!/bin/sh
curl ipecho.net/plain; echo
Chemin à mettre en concordance avec inadyn.conf.
Ne pas oublier de sudo chmod +x checkIP.sh
.
Crontab
Je préfère lancer le programme ponctuellement et régulièrement via cron que de le laisser tourner en demon.
Voici mon entrée dans le crontab pour ce faire :
# Lance inadyn toutes les 5 minutes
*/5 * * * * /usr/local/sbin/inadyn -1 -f /etc/inadyn.conf > /dev/null 2>&1