Re: [HS] iptable comment insérer une règle?
Merci, je vais étudier celà à tête reposé. Gaëtan Le Fri, 24 Oct 2008 20:05:19 +0200 Franck Joncourt [EMAIL PROTECTED] a écrit: mouss wrote: Gaëtan PERRIER a écrit : C'est ce que je fais par défaut mais là je voulais ajouter dynamiquement des règles en fonction de l'apparition de connections vpn par ex. mais finalement je me dis que ce n'est peut-être pas problématique de les ajouter en premier avec un iptables -I ? La méthode usuelle est de créer une chaîne et d'insérer les règles dynamiques dans cette chaîne. si l'anglais ne te fait pas peur, tu peux jeter un coup d'oeil sur: http://dave.thehorners.com/tech-talk/unix-linux-bsd-osx-etc/76-information-about-the-linuxunix-os-and-friends/86-iptables-a-real-mans-firewall Voila ce que cela donne chez moi :p! [code] # ifup eth3 Chargement du fichier : fw_config.sh dthfw v0.2 Chargement du fichier : fw_modules.sh Chargement du fichier : fw_proc.sh Chargement du fichier : fw_rules.sh Chargement du fichier : eth3.sh [+] Loading iptables rules for eth3 interface ... Done. # iptables -L -v | grep eth3 0 0 eth3_in_new all -- eth3 any anywhere anywhere 17 3006 eth3_out_new all -- anyeth3anywhere anywhere Chain eth3_in_new (1 references) Chain eth3_out_new (1 references) # ifdown eth3 Chargement du fichier : fw_config.sh dthfw v0.2 Chargement du fichier : fw_modules.sh Chargement du fichier : fw_proc.sh Chargement du fichier : fw_rules.sh Chargement du fichier : eth3.sh [+] Unloading rules for eth3 interface ... Done. # iptables -L -v | grep eth3 [/code] Avec un simple script bash présent dans: - /etc/network/if-pre-up.d/ - /etc/network/if-post-down.d Un petit exemple: [code] #!/bin/bash DTHFW=dthfw if [ $MODE = start ]; then MODE=load else MODE=unload fi invoke-rc.d $DTHFW $MODE $IFACE exit 0 [/code] Ensuite, c'est le script firewall qui prend le relais et fait les vérifications d'usage: - firewall démarré, - recherche des règles associées à l'interface ... Aujourd'hui j'ai un fichier de règles par interface. Chaque fichier est renseigné de la même façon: [code] #!/bin/sh METHOD=$1 IFACE=$2 IPTABLES='/sbin/iptables' IN_CHAIN=$IFACE'_in_new' OUT_CHAIN=$IFACE'_out_new' = # Unload iptables rules for this specific interface # # This function removes all specific rules linked to this interface. # Therefore, the user defined chains are unlinked from the dynamic # chain, then flushed and by the end removed # # syntax : unload # # return : nothing unload () { $IPTABLES -D dyn_in_new -i $IFACE -j $IN_CHAIN $IPTABLES -F $IN_CHAIN $IPTABLES -X $IN_CHAIN $IPTABLES -D dyn_out_new -o $IFACE -j $OUT_CHAIN $IPTABLES -F $OUT_CHAIN $IPTABLES -X $OUT_CHAIN } # = # Load iptables rules for this specific interface # # This function adds all specific rules linked to this interface. # Therefore, the user defined chains are created and linked to the # dynamic chains, then the ruleset is applied # # syntax : load # # return : nothing load () { ... } [/code] On remarquera les chaines utilisateurs dyn_in_new et dyn_out_new dans lesquelles sont ajoutées une chaine utilisateur par interface. L'avantage est grand, car: - Le firewall n'est jamais redémarré à moins d'une modification de la politique par défaut. - Chaque ruleset associé à une interface peut-être chargé/déchargé de façon simple. - Une mise à jour de mon ruleset pour mon interface de test peut échouer sans impacter tout le firewall et verrouiller ainsi tous les accès. - Toutes les interfaces bénéficient de la politique par défaut bien qu'ajouter plus tard. -- Franck Joncourt http://debian.org - http://smhteam.info/wiki/ Fingerprint : C10E D1D0 EF70 0A2A CACF 9A3C C490 534E 75C0 89FE -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
On Thu, 23 Oct 2008 21:24:06 +0200 Gaëtan PERRIER [EMAIL PROTECTED] wrote: Oui mais le problème c'est qu'avec cette commande ce n'est pas évident d'insérer juste avant la dernière règle, non? Faire un script est le plus simple, ensuite l'exécuter au boot : http://www.linux-france.org/prj/inetdoc/guides/iptables-tutorial/ -- M.B -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
mouss wrote: Gaëtan PERRIER a écrit : C'est ce que je fais par défaut mais là je voulais ajouter dynamiquement des règles en fonction de l'apparition de connections vpn par ex. mais finalement je me dis que ce n'est peut-être pas problématique de les ajouter en premier avec un iptables -I ? La méthode usuelle est de créer une chaîne et d'insérer les règles dynamiques dans cette chaîne. si l'anglais ne te fait pas peur, tu peux jeter un coup d'oeil sur: http://dave.thehorners.com/tech-talk/unix-linux-bsd-osx-etc/76-information-about-the-linuxunix-os-and-friends/86-iptables-a-real-mans-firewall Voila ce que cela donne chez moi :p! [code] # ifup eth3 Chargement du fichier : fw_config.sh dthfw v0.2 Chargement du fichier : fw_modules.sh Chargement du fichier : fw_proc.sh Chargement du fichier : fw_rules.sh Chargement du fichier : eth3.sh [+] Loading iptables rules for eth3 interface ... Done. # iptables -L -v | grep eth3 0 0 eth3_in_new all -- eth3 any anywhere anywhere 17 3006 eth3_out_new all -- anyeth3anywhere anywhere Chain eth3_in_new (1 references) Chain eth3_out_new (1 references) # ifdown eth3 Chargement du fichier : fw_config.sh dthfw v0.2 Chargement du fichier : fw_modules.sh Chargement du fichier : fw_proc.sh Chargement du fichier : fw_rules.sh Chargement du fichier : eth3.sh [+] Unloading rules for eth3 interface ... Done. # iptables -L -v | grep eth3 [/code] Avec un simple script bash présent dans: - /etc/network/if-pre-up.d/ - /etc/network/if-post-down.d Un petit exemple: [code] #!/bin/bash DTHFW=dthfw if [ $MODE = start ]; then MODE=load else MODE=unload fi invoke-rc.d $DTHFW $MODE $IFACE exit 0 [/code] Ensuite, c'est le script firewall qui prend le relais et fait les vérifications d'usage: - firewall démarré, - recherche des règles associées à l'interface ... Aujourd'hui j'ai un fichier de règles par interface. Chaque fichier est renseigné de la même façon: [code] #!/bin/sh METHOD=$1 IFACE=$2 IPTABLES='/sbin/iptables' IN_CHAIN=$IFACE'_in_new' OUT_CHAIN=$IFACE'_out_new' = # Unload iptables rules for this specific interface # # This function removes all specific rules linked to this interface. # Therefore, the user defined chains are unlinked from the dynamic # chain, then flushed and by the end removed # # syntax : unload # # return : nothing unload () { $IPTABLES -D dyn_in_new -i $IFACE -j $IN_CHAIN $IPTABLES -F $IN_CHAIN $IPTABLES -X $IN_CHAIN $IPTABLES -D dyn_out_new -o $IFACE -j $OUT_CHAIN $IPTABLES -F $OUT_CHAIN $IPTABLES -X $OUT_CHAIN } # = # Load iptables rules for this specific interface # # This function adds all specific rules linked to this interface. # Therefore, the user defined chains are created and linked to the # dynamic chains, then the ruleset is applied # # syntax : load # # return : nothing load () { ... } [/code] On remarquera les chaines utilisateurs dyn_in_new et dyn_out_new dans lesquelles sont ajoutées une chaine utilisateur par interface. L'avantage est grand, car: - Le firewall n'est jamais redémarré à moins d'une modification de la politique par défaut. - Chaque ruleset associé à une interface peut-être chargé/déchargé de façon simple. - Une mise à jour de mon ruleset pour mon interface de test peut échouer sans impacter tout le firewall et verrouiller ainsi tous les accès. - Toutes les interfaces bénéficient de la politique par défaut bien qu'ajouter plus tard. -- Franck Joncourt http://debian.org - http://smhteam.info/wiki/ Fingerprint : C10E D1D0 EF70 0A2A CACF 9A3C C490 534E 75C0 89FE signature.asc Description: OpenPGP digital signature
Re: [HS] iptable comment insérer une règle?
iptables -I et le man. Gaëtan PERRIER a écrit : Bonjour, Est-il possible d'insérer une règle avec iptable? Gaëtan -- -- | .:: Alfred Sawaya ::. | -- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
Oui mais le problème c'est qu'avec cette commande ce n'est pas évident d'insérer juste avant la dernière règle, non? Le Thu, 23 Oct 2008 20:34:20 +0200 .:: Alfred Sawaya ::. [EMAIL PROTECTED] a écrit: iptables -I et le man. Gaëtan PERRIER a écrit : Bonjour, Est-il possible d'insérer une règle avec iptable? Gaëtan -- -- | .:: Alfred Sawaya ::. | -- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Le mieux c'est d'écrire un script dans lequel tu incorpores tes règles dans l'ordre que tu désires. Après, tu peux tester tes règles. Enfin tu fais en sorte que ce script soit exécuté au boot de la machine. Je ne me souviens plus de la méthode préconisée pour Debian, mais moi j'utilise le pre-up dans le fichier /etc/network/interfaces... Mes 2 cents Librement Gaëtan PERRIER a écrit : Oui mais le problème c'est qu'avec cette commande ce n'est pas évident d'insérer juste avant la dernière règle, non? Le Thu, 23 Oct 2008 20:34:20 +0200 .:: Alfred Sawaya ::. [EMAIL PROTECTED] a écrit: iptables -I et le man. Gaëtan PERRIER a écrit : Bonjour, Est-il possible d'insérer une règle avec iptable? Gaëtan -- -- | .:: Alfred Sawaya ::. | -- - -- Laurent Guignard, Registered as user #301590 with the Linux Counter Site : http://www.famille-guignard.org Blog : http://blog.famille-guignard.org Projet : http://sicontact.sourceforge.net GULL de Villefranche sur Saône : http://www.cagull.org -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFJANIojcKpXFc/7oYRAmvQAKC2B7wtur0KyxZ/Dysr4R0z2CzwQACfYekJ cwp1TXIW2mu2ZF9M0t5+4Vc= =TMwO -END PGP SIGNATURE- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
Salut, Gaëtan PERRIER wrote: Oui mais le problème c'est qu'avec cette commande ce n'est pas évident d'insérer juste avant la dernière règle, non? -I permet de spécifier l'emplacement de la règle dans une chaîne donnée. Tu peux t-aider de l'argument --line-numbers pour définir l'emplacement de ta nouvelle règle. Par contre si tu veux le faire avec un script, regarde du côté des modules perl libiptables-parse-perl et libiptables-chainmgr-perl. Les pages de manuelle associées mettent en évidence les différentes fonctions disponibles. Ces modules sont à ce jour uniquement présents en Lenny, et en Sid depuis les dépôts officiels. -- Franck Joncourt http://debian.org - http://smhteam.info/wiki/ Fingerprint : C10E D1D0 EF70 0A2A CACF 9A3C C490 534E 75C0 89FE signature.asc Description: OpenPGP digital signature
Re: [HS] iptable comment insérer une règle?
C'est ce que je fais par défaut mais là je voulais ajouter dynamiquement des règles en fonction de l'apparition de connections vpn par ex. mais finalement je me dis que ce n'est peut-être pas problématique de les ajouter en premier avec un iptables -I ? Le Thu, 23 Oct 2008 21:36:09 +0200 Laurent Guignard [EMAIL PROTECTED] a écrit: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Le mieux c'est d'écrire un script dans lequel tu incorpores tes règles dans l'ordre que tu désires. Après, tu peux tester tes règles. Enfin tu fais en sorte que ce script soit exécuté au boot de la machine. Je ne me souviens plus de la méthode préconisée pour Debian, mais moi j'utilise le pre-up dans le fichier /etc/network/interfaces... Mes 2 cents Librement Gaëtan PERRIER a écrit : Oui mais le problème c'est qu'avec cette commande ce n'est pas évident d'insérer juste avant la dernière règle, non? Le Thu, 23 Oct 2008 20:34:20 +0200 .:: Alfred Sawaya ::. [EMAIL PROTECTED] a écrit: iptables -I et le man. Gaëtan PERRIER a écrit : Bonjour, Est-il possible d'insérer une règle avec iptable? Gaëtan -- -- | .:: Alfred Sawaya ::. | -- - -- Laurent Guignard, Registered as user #301590 with the Linux Counter Site : http://www.famille-guignard.org Blog : http://blog.famille-guignard.org Projet : http://sicontact.sourceforge.net GULL de Villefranche sur Saône : http://www.cagull.org -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFJANIojcKpXFc/7oYRAmvQAKC2B7wtur0KyxZ/Dysr4R0z2CzwQACfYekJ cwp1TXIW2mu2ZF9M0t5+4Vc= =TMwO -END PGP SIGNATURE- -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED] -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: [HS] iptable comment insérer une règle?
Gaëtan PERRIER a écrit : C'est ce que je fais par défaut mais là je voulais ajouter dynamiquement des règles en fonction de l'apparition de connections vpn par ex. mais finalement je me dis que ce n'est peut-être pas problématique de les ajouter en premier avec un iptables -I ? La méthode usuelle est de créer une chaîne et d'insérer les règles dynamiques dans cette chaîne. si l'anglais ne te fait pas peur, tu peux jeter un coup d'oeil sur: http://dave.thehorners.com/tech-talk/unix-linux-bsd-osx-etc/76-information-about-the-linuxunix-os-and-friends/86-iptables-a-real-mans-firewall -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.org/DebFrFrenchLists Vous pouvez aussi ajouter le mot ``spam'' dans vos champs From et Reply-To: To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]