Garder une crontab effective après un reboot hasardeux...+ IPTables -I - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 28-12-2003 à 18:55:37
sinon une autre manière :
une crontab le soir met un fichier "prout" dans /var/tmp par exemple.
une crontab le matin efface ce fichier
une crontab vérifie toutes les heures la présence du fichier, si il existe tu lance les règles avec le drop, sinon tu met celles sans le drop.
Comme ca si la machine redémarre, au pire une heure après les règles sont adéquates
et je dit une heure comme exemple
Marsh Posté le 28-12-2003 à 18:57:59
sinon avec debian tu peut faire des ensembles de règles facilement, pour appliquer ce que je disais au-dessus ,exemple :
tu fait tes règles qui dropent l'ip locale, tu les enregistre sous le nom "matin"
/etc/init.d/iptables save matin
tu définit maintennant les règles pour le soir, et les enregistre sous "soir"
/etc/init.d/iptables save soir
Et voilà ! tu veut les règles du soir ? facile :
/etc/init.d/iptables load soir
le matin ?
/etc/init.d/iptables load matin
Marsh Posté le 28-12-2003 à 19:08:19
ou bien tu modifie ton script iptables avec le crontab qui vas le loader a chaque mofification . Comme ca si y a reboot , ton script seras relancé tel que l'auras modifier le crontab ... t'as compris ce que je voulais dire ?
Marsh Posté le 28-12-2003 à 19:11:44
Je réfléchis, ça n'a pas l'air trop sorcier à faire, c'est une bonne idée. Mais j'étais en train de me demander si ma distrib (une smoothwall), n'écrasait pas le contenu de iptables à chaque démarrage, ça m'étonnerai mais bon.
Je comprend juste pas pourquoi iptables ne garde pas les règles qu'il y avait avec le reboot. Je précise que la pauvre machine est redémarré à la chie dedans (débranche, rebranche )
Marsh Posté le 28-12-2003 à 19:12:48
ipnoz a écrit : ou bien tu modifie ton script iptables avec le crontab qui vas le loader a chaque mofification . Comme ca si y a reboot , ton script seras relancé tel que l'auras modifier le crontab ... t'as compris ce que je voulais dire ? |
euh non, j'ai pas compris , ni comment le mettre en place
Marsh Posté le 28-12-2003 à 19:15:39
t'as un script qui se trouve dans /etc/init.d/mon_script , c'est celui que lance au demarrage ta distro. , quand viends l'heure de droper une ip ou la rendre effective , tu demande a cron de rajouter la regle adequat et de relancer ce script . Si tu reboot , le script seras relancé avec la regle demandée
Marsh Posté le 28-12-2003 à 21:06:02
je comprend pas trop ce qu'on doit mettre dans le script
edit : hum je met la regle dans le script ok
Marsh Posté le 28-12-2003 à 21:25:40
je n'ai pas de /etc/init.d/ dans ma distrib, je peux le mettre autre part ?
Marsh Posté le 28-12-2003 à 22:24:19
où en fait, c'était ma question
edit : j'ai un /etc/rc.d/ qui a l'air ok, je test
Marsh Posté le 28-12-2003 à 18:41:25
Bonjour,
J'utilise 2 crontab pour alternativement mettre en DROP et ACCEPT des paquets provenant d'une IP en local avec iptables à 22 h et à 7 h.
Pour faire plus simple :
- A 22 h, j'installe le "drop", ça coupe Internet.
- A 7 h, je l'enlève, ça remet Internet pour cette IP.
Le problème est que si la machine plante et redémarre (ou si un petit malin va la redémarrer), la connexion Internet repart car la crontab pour couper le net ne sera lancée que le prochain soir et iptables a "oublié" la ligne.
J'ai essayé de mettre une crontab de 22 h à 7 h toutes les minutes MAIS le problème que je rencontre est qu'à chaque fois que je fais mon iptables -I, ça rajoute une ligne... Et il me faudrait autant de -D pour les enlever toute et remettre internet, ça ne va donc pas.
Bref, ce qui m'arrangerai c'est de ne pas "répéter" plusieurs lignes avec le iptables -I ou de pouvoir virer toutes les occurences identiques avec un iptables -D.
Merci
Si je n'ai pas été assez clair, demandez moi des précisions.
Edit : Ortho.
Message édité par Master_Jul le 28-12-2003 à 18:46:21