Iptable avec linux debian

Jackes -  
 jac -
Bonjour, j'aimerais iptable un block de environ 100 packet d'ip sur ma machine (baser sous debian) et j'aimerais savoir si il existe une commande iptable ou l'on peut mettre tout les ip d'un coup de façon a éviter de mettre devant chaque ip la commande

(C'est pour faire un firewall fonctionnant avec iptable dans /firewall)


Exemple commande pour ip table ip fin de la commande

J'aimerais début de la commande ip (plusieur) fin de la commande

Merci d'avance




A voir également:

18 réponses

Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
Bonjour,

Je te suggère de faire une liste dans un fichier, et de boucler sur cette liste avec un script, qui executera les commandes iptables à ta place.

0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Salut,

En root quelque chose de genre

for ip in $(cat fichier_avec_les_ip_un_par_ligne);do iptables -A INPUT -i INTERFACE -s $ip -j DROP;done


GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108
0
Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
exactement, j'ai eu la flemme de l'écrire :)
Ceci n'est que pour le cas ou il veut bannir cette liste d'IP
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Ceci n'est que pour le cas ou il veut bannir cette liste d'IP
Oui effectivement
0
Jackes
 
Donc je doi crée une commande qui s'exécute dans /firewall et qui va chercher les ip banni dans un fichier ??


Mais comment construire cette commande ?


car dans

for ip in $(cat fichier_avec_les_ip_un_par_ligne);do iptables -A INPUT -i INTERFACE -s $ip -j DROP;done

for ip in $(cat fichier_avec_les_ip_un_par_ligne) <--- la je doi mettre le chemin vers le txt avec les ip ?
0
Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
c'est ça :)

j'ai envie de dire OSEF de ou il s'execute, l'essentiel c'est la permission root d'écriture dans iptables
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Jackes
 
for ip in $(cd /bin/ip.txt);do iptables -A INPUT -i INTERFACE -s $ip -j DROP;done


Donc cela pourrais marcher avec 1 ip par ligne ?

Et bien evidament chmod 777 a ip.txt

?
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Et bien evidament chmod 777 a ip.txt
Pas besoin chmod 0600 suffit


N'oublie pas qu'il faut remplacer INTERFACE avec la tienne.
Le fichier mets le dans /etc pas dans /bin

0
Jackes
 
Remplacer par mon INTERFACE c'est a dire ??

je debute avec iptable donc je ne vois pas trop
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Affiche le résultat de
 /sbin/ifconfig
0
Jackes
 
Sa affiche


lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:3574 errors:0 dropped:0 overruns:0 frame:0
TX packets:3574 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:286218 (279.5 KiB) TX bytes:286218 (279.5 KiB)

venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
RX packets:54557820 errors:0 dropped:0 overruns:0 frame:0
TX packets:112479764 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:6626234619 (6.1 GiB) TX bytes:15096512268 (14.0 GiB)

venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:ip de mon dedier P-t-P:ip de mon dedier Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1


Jai masquer lip de mon dedier
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

C'est venet0
0
Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
jamais vu ce type de nom d'interface
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Ca doit être les interfaces virtuelles de https://fr.wikipedia.org/wiki/OpenVZ
0
Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
bien vu
0
Jackes
 
Il me dit


: command not found: ip
: command not found: ip

/etc/ip.txt: Ligne ip: command not found


jai remplacer les ip par ip pour vou monter les erreur et a chaque foi il me dit ce qu'il y a a commande not found a chaque ip
0
Leahkim Messages postés 3081 Date d'inscription   Statut Membre Dernière intervention   281
 
essaie:
for $ip in $(cat fichier_avec_les_ip_un_par_ligne);do iptables -A INPUT -i INTERFACE -s $ip -j DROP;done
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

/etc/ip.txt n'est pas une commande mais un fichier qui contient les IP que tu veux les bloqués.

La commande est normalement (à faire ne root)

for ip in $(cat /etc/ip.txt);do iptables -A INPUT -i venet0 -s $ip -j DROP;done 


--
GNU/Linux:Linux is Not Ubuntu! Quel linux choisir ne veut pas dire votre Distribution préférée,
106485010510997108
0
Jackes
 
Il arrive pas a executer la commande il met des erreur
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Ca sera plus simple d'afficher ici la commande que tu tapes ainsi que les résultats (bref, ce que tu vois à l'écran).
Je vais regarder ce soir à la maison si entre temps tu n'auras pas de réponse
0
Jackes
 
Sa m'affiche ce que jai mi jai juste mi ip a la place des ip pour ne pas que tout le monde les voye.
0
Jackes
 
J'attend ta reponce alors merci d'avance :)
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

C'est moi qui attends ta réponse
Je ne t'ai demande pas de m'afficher les IP.
Tu peux mettre à la place xxx.xxx.xxx.xxx, mais j'ai besoin de voir ce que tu fais si non je ne peux pas t'aider]

On peut faire plus simple juste pour un IP pour voir, donc tape

iptables -A INPUT -i venet0 -s xxx.xxx.xxx.xxx -j DROP


N'oublie pas de remplacer les xxx avec ton ip, et ensuite pour affichage de les remettre.
Ensuite affiche aussi le résultat de
egrep -c '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/ip.txt
 wc -l < /etc/ip.txt
0
Jackes
 
oui mais vue que jai plus de 100 ip jaimerais un truck pour aller plus vite.
0
Jackes
 
egrep -c '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/ip.txt
wc -l < /etc/ip.txt


a laire de marcher merci
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

Affiche le résultat.

Tape aussi une commande pour un seul ip comme je t'ai demandé dans mon message précédent
0
Jackes
 
Sa affiche riens cela ne reagi pas
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Re,

On ne se comprends pas.
Si tu n'affiche pas les commandes que tu tapes, je m'arrête là.
Je ne suis pas devant ton écran, donc si tu veux que je t'aide alors aide moi.

Donc tape et affiche ça

egrep -c '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/ip.txt
wc -l < /etc/ip.txt 


Voici comment tu dois m'afficher (j'ai créer un fichier bidon avec 3 ip)

lami20j@debian-acer:~$ egrep -c '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/ip.txt
3
lami20j@debian-acer:~$ wc -l < /etc/ip.txt
3
lami20j@debian-acer:~$ 


Vas-y, à toi maintenant.
0
Jackes
 
vps:~# egrep -c '([0-9]{1,3}\.){3}[0-9]{1,3}' /etc/ip.txt
127
vps:~# wc -l < /etc/ip.txt
154

C'est donc que sa marche ?
0
lami20j Messages postés 21331 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 569
 
Salut,

Ben, il y a un problème avec ton fichier puisque le résultat aurai du être le même.
La 1ère commande compte seulement les lignes qui contient au moins un ip
La 2ème commande comptes toutes les lignes de ton fichier.

Donc soit il y a des lignes vides dans ton fichier soit il y a autre choses.

Bref ton fichier doit avoir cette forme

xxx.xxx.xxx.xxx
yyy.yyy.yyy.yyy
zzz.zzz.zzz.zzz


Donc un ip par ligne.
Allez on va vérifié ton fichier. Par sécurité les ip seront remplacer avec des X, donc tu peux afficher le résultat ici

Chez moi sur le fichier test que j'ai crée

lami20j@debian-acer:~$ perl -pe 's/(\d{1,3})/"X" x length($1)/ge' /etc/ip.txt
XX.X.X.X
XXX.XXX.X.X
XXX.XX.XXX.XX


Donc tu dois taper la commande qui est en gras.

A toi.
0
jac
 
Merci sa marche niquel
0