Bonjour,
Je suis entrain de monter un serveur sous sarge et j'ai configuré grâce à des howto un magnifique iptable. Mon soucis est que en cas de redémarrage de la machine il perd alors toute sa configuration ce que je trouve fort génant et la je ne vois pas ou je dois aller/chercher pour que la configuration reste (et google ne m'en dit pas plus). Si quelqu'un pouvait me renseigner j'en serai très heureux.
Merci.
# iptables-restore
Posté par Rémi . Évalué à 1.
iptables-restore < ton_fichier au boot
# script ou iptables-save
Posté par Cereal Killer . Évalué à 1.
- La première, c'est d'utiliser iptables-save => man iptables-save.
Je connais pas, mais le magnifique tuto de christian caleca => http://christian.caleca.free.fr/netfilter/iptables.htm(...) utilise cette méthode.
- La deuxième, c'est de faire un script iptables.sh par exemple, de le mettre dans /etc/init.d/, de le rendre executable et de créer les liens dans /etc/rcX.d/.
Je préfère la deuxième, y a rien de particulier a savoir, c'est un bête script shell ... juste commence ton script avec #!/bin/bash et enchaine tes commandes iptables.
[^] # Re: script ou iptables-save
Posté par Mr Kapouik (site web personnel) . Évalué à 2.
[^] # Re: script ou iptables-save
Posté par Cereal Killer . Évalué à 1.
Le runlevel par défaut sous debian est 2. C'est configurable via /etc/Inittab.
Ton interface réseau est lancé par un lien dans /etc/rc2.d/ qui pointe sur /etc/init.d/networking.
Le liens a créer dans ton cas est celui de /etc/init.d/tonscript_iptables vers /etc/rc2.d/
donc
# ln -s /etc/init.d/tonscript_iptables /etc/rc2.d/S20tonscript_iptables
devrait faire l'affaire.
Ma façon de faire à le mérite de marcher "partout" ... celle de Gerald est plus debian-style et plus propre ... à toi de choisir ce qui te plait le plus.
[^] # Re: script ou iptables-save
Posté par Mr Kapouik (site web personnel) . Évalué à 2.
stormbringer:/etc/rc0.d# ls
K11cron K20makedev K89atd K91apache-ssl S35networking
K20dhcp K20ssh K89hotplug-net S20sendsigs S36ifupdown
K20exim4 K25hwclock.sh K89klogd S30urandom S40umountfs
K20inetd K79nfs-common K90sysklogd S31umountnfs.sh S90halt
K20lpd K86ppp K91apache S32portmap
stormbringer:/etc/rc0.d# cd /etc/rc2.d/
stormbringer:/etc/rc2.d# ls
S10sysklogd S20dhcp S20makedev S89cron S99stop-bootlogd
S11klogd S20exim4 S20ssh S91apache
S14ppp S20inetd S21nfs-common S91apache-ssl
S18portmap S20lpd S89atd S99rmnologin
bon je vais voir du cote des inittab moi
# re
Posté par LaBienPensanceMaTuer . Évalué à 4.
Avec la Sarge, la politique a changé, maintenant il faut activer le firewall lors du montage des interfaces réseaux.
Exemple:
La commande "iptables-restore < /etc/network/iptables-rules" sera executée à chaque "ifup eth0"
Si tu préfères comme moi la vieille méthode du /etc/init.d, voici un fichier iptables qui fera l'affaire:
Ensuite, tu crées les liens symboliques pr que ton script soit executé au démarrage de la machine:
Le dernier chiffre définit l'ordre de lancement du script. Les interfaces réseaux étant montées en 40, il est plus sure d'activer le firewall avant celle ci, d'ou le choix du 30.
Pour le script donné plus haut, tes règles doivent impérativement se trouver dans /var/lib/iptables/active et inactive (active loadé au start et inactive au stop).
[^] # Re: re
Posté par Mr Kapouik (site web personnel) . Évalué à 2.
aussi dans ta deuxieme proposition, n etant pas un pro du bash pourrais tu m expliquer en gros ce qu il fait (ou il va chercher les regles d'iptables notamment) et a quel runlevel dois je faire pointer le lien car j ai beau examiner les repertoire /etc/rcX.d/ je ne vois pas ou ca doit aller.
merci de me repondre.
ps: j'aime comprendre ce que je fais alors desole si je devient embetant dans mes requettes mais en tout cas deja merci pour ton premier message qui est deja bien expliquer contrairement a certaine reponse que je vois des fois sur les forums
[^] # Re: re
Posté par Pro21 . Évalué à 1.
[^] # Re: re
Posté par Cereal Killer . Évalué à 1.
Save justement te permet de récupérer ta config iptables présente et de la sauver dans sa variable $ruleset_dir (=/var/lib/iptables).
Donc en gros, tu copies son script dans /etc/init.d/sonscript, tu le rend executable et tu fais un beau "/etc/init.d/sonscript save".
En gros, d'après ce que j'ai compris, à chaque fois que tu change ta config, tu fais un save et le reste du temps, tu te contente de commande start ; stop ; restart ; etc ...
Oublie pas de faire un liens dans /etc/rc2.d/ pour le lancer a chaque démarrage. (update-rc.d ou ln)
[^] # Re: re
Posté par Mr Kapouik (site web personnel) . Évalué à 2.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.