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

18 réponses

  1. Leahkim Messages postés 3219 Statut Membre 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
  2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    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
    1. Leahkim Messages postés 3219 Statut Membre 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
    2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Re,

      Ceci n'est que pour le cas ou il veut bannir cette liste d'IP
      Oui effectivement
      0
  3. 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
  4. Leahkim Messages postés 3219 Statut Membre 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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    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
  8. Jackes
     
    Remplacer par mon INTERFACE c'est a dire ??

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

      Affiche le résultat de
       /sbin/ifconfig
      0
  9. 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
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      Re,

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

      Ca doit être les interfaces virtuelles de https://fr.wikipedia.org/wiki/OpenVZ
      0
    4. Leahkim Messages postés 3219 Statut Membre 281
       
      bien vu
      0
  10. 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
    1. Leahkim Messages postés 3219 Statut Membre 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
  11. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    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
  12. Jackes
     
    Il arrive pas a executer la commande il met des erreur
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      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
  13. 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
  14. Jackes
     
    J'attend ta reponce alors merci d'avance :)
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      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
  15. Jackes
     
    oui mais vue que jai plus de 100 ip jaimerais un truck pour aller plus vite.
    0
  16. 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
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      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
  17. Jackes
     
    Sa affiche riens cela ne reagi pas
    0
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      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
  18. 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
    1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
       
      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