====== Pseudo DynDNS ====== Si l'on possède un nom de domaine et espace web on peut réaliser un pseudo DynDNS pour héberger un serveur sur votre réseau domestique. Le problème provient du fait que l'adresse IP peut varier et qu'un DNS ne peut pas localiser le réseau domestique. La solution est de sauvegarder automatiquement l'adresse IP attribué sur un endroit accessible en permanence. Une page web si vous pouvez en stocker sur Internet. Le serveur se charge de tester régulièrement l'adresse IP attribuée. En cas de changement, il l'enregistre sur le web. ===== Installation sur le serveur ===== * Installer le client FTP (ftp) sur le raspberry apt-get install ftp * Créer un dossier /var/redirect et l'autoriser à tous mkdir /var/redirect chmod 777 /var/redirect * Copier le script redirect.sh dans le dossier et le personnaliser en fonction de votre serveur FTP nano /var/redirect/redirect.sh #!/bin/sh # constantes HOST=ftp.xxxxxxx.yy LOGIN=lllllllll PASSWORD=pppppppp PORT=21 # Script de controle cd /var/redirect IP1=$(wget http://checkip.dyndns.org -O - -o /dev/null | cut -d : -f 2 | cut -d \< -f 1) IP2=$(cat /var/redirect/index.html | cut -d / -f 4 | cut -d \' -f 1) if [ "$IP1" = "$IP2" ] then echo IP inchangé > /dev/null else echo IP changée > /dev/null DD=$(date) echo "$IP1 $DD" >> /var/redirect/modif.log IP1=$(echo $IP1 | cut -c 1-15) echo "Redirection" > /var/redirect/index.html # le transfert lui même (-v pour verbose) ftp -i -n $HOST $PORT << END_SCRIPT quote USER $LOGIN quote PASS $PASSWORD cd /public/raspberrypi bin passive put index.html put modif.log quit END_SCRIPT #echo "Mise à jour faite" fi [CTRL]+[X]; [Y] * Ajouter les autres fichiers et attribuer les droits touch /var/redirect/modif.log touch /var/redirect/index.html chmod 666 /var/redirect/* chmod +X /var/redirect/redirect.sh * Installer dans CRONTAB un cron qui lance le script à intervalle régulier (0h et 12h) crontab -e 5 0,12 * * * /var/redirect/redirect.sh [CTRL]+[X]; [Y] ===== Installation sur le site web ===== Créer un site virtuel ou un dossier sur un site existant pour stocker les informations ===== Installation sur la box ===== * Sur la page d'administration de la box, aller à l'onglet "Règles NAT" * Définir l'IP et le port du serveur en local ainsi que le port utilisé en externe. ===== Utilisation ===== * Aller sur l'URL raspberrypi * Noter l'adresse de redirection si le serveur n'est pas disponible par défaut ==== TODO ===== * Gérer la redirection en PHP pour rediriger aussi le port * Exécuter le script sous un compte neutre.