[BASH] Autoban iptables
|
12-08-2014, 20h18
(Modification du message : 12-08-2014, 20h21 par thxer.)
Message : #1
|
|
thxer
:(){ :|:& };: Messages : 382 Sujets : 60 Points: 162 Inscription : Feb 2013 |
[BASH] Autoban iptables
Suite à notre discussion sur irc je me suis dit que ça peut interesser du monde.
J'ai fait un ensemble de petits scripts comme celui-ci qui check les logs Apache && SSH et qui ban les ip. Le principe est simple : des tâches cron scannent les logs, et après ça append une liste ban.txt, de là tout les X temps les règles iptables sont mises à jours. Exemple : Code BASH :
Ajouter en crontab, créer d'autres règles sur les logs apaches etc .. Code BASH :
Le Script iptables qui vient récup le fichier ban.txt : Code BASH :
|
|
12-08-2014, 22h38
(Modification du message : 12-08-2014, 22h38 par notfound.)
Message : #2
|
|
notfound
#!/usr/bin/env bash Messages : 687 Sujets : 47 Points: 271 Inscription : Sep 2012 |
RE: [BASH] Autoban iptables
Holla, tout d'abord merci pour le partage.
(12-08-2014, 20h18)thxer a écrit : Bon, si t'as un fichier de log très grand, ton for ip in `cat ...` va être super lent, car ça stock tout en RAM. De plus, le cat|grep|awk est pas très élégant. Je te propose cette petite optimisation : Code BASH :
L'unicité peut se faire via awk aussi, ce qui permet de supprimer le pipe. Mais ça fait remplir un array[] etc, donc c'est plus chiant et uniq fait très bien le taff. Ensuite, pour éviter de te fatiguer à taper des echo à tout va, tu pourrais faire : Code BASH :
Mais bon c'est du détail ça. Et enfin : (12-08-2014, 20h18)thxer a écrit : Cette partie, j'attend d'avoir un exemple (comme dit sur irc) pour voir ce qu'on peut faire. Mais vu d'ici, ça se simplifie grandement. Et même remarque pour le for truc in $(cat...), et les echo La partie iptables semble ok Enjoy |
|
13-08-2014, 17h00
Message : #3
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: [BASH] Autoban iptables
vite fait en passant, si je comprends bien le principe est de scanner *tout* le fichier de logs
si le fichier de logs rotate sur 1 semaine ou sur 1 mois on va scanner tout un tas de lignes pour rien et ça va ralentir sérieusement le processus ce qu'il faudrait, ça serait qu'a chaque fois qu'on tail le fichier on ne traite que les lignes qui ont été écrites dans le fichier depuis le dernier tail c'est précisément le propos de la commande logtail (ça doit faire partie du package logcheck possiblement) pour tout le reste - et un traitement en temps réel - il y a sec qui mériterait bien quelques tutos sur son utilisation et est largement méconnu ça c'est pour les solutions "faites maison", pour la solution usine à gaz il y a fail2ban évidement, mais qui marche très bien
Avant donc que d'écrire, apprenez à penser.
Selon que notre idée est plus ou moins obscure, l'expression la suit, ou moins nette, ou plus pure. Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau, L'Art poétique) |
|
13-08-2014, 19h04
Message : #4
|
|
thxer
:(){ :|:& };: Messages : 382 Sujets : 60 Points: 162 Inscription : Feb 2013 |
RE: [BASH] Autoban iptables
Merci pour vos retour, effectivement je me troune vers fail2ban c'est plus carré
|
|
« Sujet précédent | Sujet suivant »
|
Sujets apparemment similaires… | |||||
Sujet | Auteur | Réponses | Affichages | Dernier message | |
[Bash] Scripts vsftpd | Ekroz | 4 | 312 |
24-02-2014, 10h57 Dernier message: Ekroz |
|
[BASH] Interface User Friendly | saywoot | 3 | 218 |
28-01-2014, 21h18 Dernier message: saywoot |
|
[BASH] Connaitre les utilisateurs avec un le nom suivant | InFamouZz | 8 | 413 |
27-01-2014, 15h39 Dernier message: notfound |
|
[Bash] explorer son /home dans un pipemenu Openbox | supersnail | 2 | 217 |
28-10-2013, 17h08 Dernier message: thxer |
|
[Bash] programme d'installation | InstinctHack | 0 | 90 |
12-09-2012, 10h08 Dernier message: InstinctHack |
|
[Php/Bash] Importer une base de donné de plus de 5Mo | CyberSee | 1 | 145 |
29-02-2012, 23h28 Dernier message: InstinctHack |
Utilisateur(s) parcourant ce sujet : 1 visiteur(s)