Bonjour,
je bricole à nouveau dans mon serveur, je suis sur une bonne piste, et comme souvent... il me manque quelque connaissance de base pour aboutir proprement !
La problématique:
- J'ai une adresse chez no-ip , mon adresse IP étant susceptible de changer, j'ai installé le programme <noip2> fourni par no-ip pour upgrader mon adresse sur leur serveur lorsqu'elle change chez moi.
- Mon fournisseur d'accès me change assez rarement d'adresse, la même peut rester plus d'un mois...
- No-IP prétexte de ce que mon adresse n'est pas renouvelée pendant un mois pour tenter - sous la menace d'une interruption du service et de perdre mon nom d'hôte - de me convaincre d'acheter un service payant ; sinon - pour rester gratuit - il faut que j'aille cliquer sur leur site pour renouveler chaque Hostname de mon groupe, en recopiant chaque fois un nouveau captcha ... Bref, c'est désagréable, menaçant, et fastidieux de devoir faire ça chaque fois à la main.
- je cherche donc à renouveler automatiquement l'inscription de mon adresse sur les serveurs de No-IP, au moins une fois par mois.
Le début de solution :
- à l'aide de la notice fournie avec le client <noip2>, j'ai écrit et expérimenté le script suivant :
#! /bin/sh
# Script pour renouveler chaque mois l'inscription chez no-ip
# première écriture par Lurey le 1/03/2014
# on arrête le client en cours...
echo "Arrêt du client noip2..."
for i in `noip2 -S 2>&1 | grep Process | awk '{print $2}' | tr -d ','`
do
noip2 -K $i
done
# on envoie une adresse IP bidon...
noip2 -i 0.0.0.0
echo "Envoi de l'adresse IP 0.0.0.0"
sleep 10
# on relance le client pour qu'il renvoie l'adresse IP réelle :
noip2
# on affiche les infos sur le client en cours :
sleep 10
echo "affichage des infos du client en cours"
noip2 -S
Bon. Lancé en ligne de commande, ce script fait l'affaire : pendant 10 secondes, No-IP considère que mon adresse est 0.0.0.0, puis je lui redonne l'IP courante, "ils" devraient considérer qu'elle a été renouvelée. (la dernière partie sert juste à vérifier, pour l'instant, que ça repart normalement en redonnant la bonne adresse)
> L'idéal serait de le lancer une fois par mois - dans la nuit, vers 3h du matin par exemple...
Là, je sais qu'il existe Monsieur Cron et Madame Crontab...
Plus sérieusement, j'ai trouvé cette dernière (crontab) dans /etc et je crois comprendre qu'elle est "templatisée"
Je trouve aussi les répertoires /etc/cron.daily , /etc/cron.weekly et /etc/cron.monthly ...
Ma question :
- Suffirait-il de mettre mon script dans /etc/cron.monthly ? Sachant que crontab commence par :
(...)
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
- Y a-t-il un moyen de "templatiser" de manière plus orthodoxe en utilisant les "templates-custom" ?
du genre mettre le script dans /etc/e-smith/templates-custom/etc/crontab et régénérer ensuite crontab (...faut que je retrouve comment)
Merci de vos lumière !