Blocca intervallo di indirizzi IP


49

Mi sto bombardando con tentativi di hacking dalla Cina, tutti con IP simili.

Come bloccare l'intervallo IP con qualcosa come 116.10.191. * Ecc.

Sto eseguendo Ubuntu Server 13.10.

La linea corrente che sto usando è:

sudo /sbin/iptables -A INPUT -s 116.10.191.207 -j DROP

Questo mi permette di bloccare ognuno alla volta, ma gli hacker stanno cambiando gli IP ad ogni tentativo.


4
dovresti dare un'occhiata a fail2ban, è davvero bravo a vietare dinamicamente gli indirizzi IP fastidiosi.
user9517 supporta GoFundMonica il

Mi piace anche aggiungere knockd per eliminare praticamente il 100% dei tentativi di accesso non riusciti dai miei registri. help.ubuntu.com/community/PortKnocking
Bruno Bronosky il

pam_shield potrebbe essere di aiuto qui. github.com/jtniehof/pam_shield
Daniel

Risposte:


87

Per bloccare gli indirizzi 116.10.191. *:

$ sudo iptables -A INPUT -s 116.10.191.0/24 -j DROP

Per bloccare gli indirizzi 116.10. *. *:

$ sudo iptables -A INPUT -s 116.10.0.0/16 -j DROP

Per bloccare gli indirizzi 116. *. *. *:

$ sudo iptables -A INPUT -s 116.0.0.0/8 -j DROP

Ma fai attenzione a cosa blocchi usando questo metodo. Non vuoi impedire al traffico legittimo di raggiungere l'host.

modifica : come sottolineato, iptables valuta le regole in ordine sequenziale. Le regole più alte nel set di regole vengono applicate prima delle regole più basse nel set di regole. Quindi, se nel tuo set di regole è presente una regola che consente tale traffico, l'aggiunta ( iptables -A) della regola DROP non produrrà il risultato di blocco previsto. In questo caso, inserisci ( iptables -I) la regola:

  • come prima regola

sudo iptables -I ...

  • o prima della regola consenti

sudo iptables --line-numbers -vnL

dire che mostra la regola numero 3 consente il traffico ssh e si desidera bloccare ssh per un intervallo ip. -Iaccetta un argomento di un numero intero che corrisponde alla posizione nel set di regole in cui si desidera inserire la nuova regola

iptables -I 2 ...


Controlla arin.net e blocca l'intera gamma di gamme ip di proprietà di Amsterdam . Quel posto è RIPE con ragni sondaggi - dubito che vi sia traffico legittimo che esce da lì.
WEBjuju

nota che questo potrebbe non funzionare a seconda dell'ordine delle regole di iptable , vedi risposta serverfault.com/a/507502/1
Jeff Atwood

2
o snap @JeffAtwood Sono onorato del tuo commento. risposta aggiornata;)
Creek

E come sblocchi un certo intervallo?
zero il

11

sudo /sbin/iptables -A INPUT -s 116.10.191.0/24 -j DROP

Questo blocca l'intervallo. È possibile espandere la sottorete secondo necessità con lo stesso formato generale.


funzionerà sull'intera gamma 4 ° set? Like è 0/24 solo 0-24. Ho provato per esempio 500 ma non ha funzionato. Coprirà 0/24 tutti quegli altri numeri negli anni 100 e 200
Stephen Cioffi,

3
@Stephen È un intervallo CIDR. Se è necessario calcolarlo per un intervallo diverso, utilizzare questo: subnet-calculator.com/cidr.php
Nathan C

4

Come approccio alternativo potresti usare qualcosa di semplice come fail2ban. Istituisce un timeout per i successivi tentativi di accesso non riusciti e rende impossibile il bruteforcing poiché hanno solo poche possibilità per timeout. Ho impostato la durata del timeout su 30 minuti. Quando sono tra un'ora o due, si rendono conto che non saranno in grado di fare alcun passo avanti e rinunciare.


Inoltre, il blocco di interi paesi può inibire l'uso autorizzato.
Esa Jokinen,

Mi rendo conto che questa discussione ha più di un anno, ma volevo far sapere qualcosa alle persone. Ho Fail2ban installato e in esecuzione, ma controllo regolarmente anche i registri del mio server. C'è questo intervallo IP 89.248.x.xche continua a provare diversi accessi e-mail all'incirca un'ora dopo l'ultimo tentativo, durante il giorno. Apparentemente mantenere findtimein fail2ban a 30 minuti non è più sufficiente per tenere fuori ogni cattiva sceneggiatura.
Tanzeel Kazi,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.