GNU/Linux >> Linux Esercitazione >  >> Debian

Debian:come vietare automaticamente gli indirizzi IP in modo permanente?

Attualmente sto usando iptables su un nuovo server Debian che esegue Asterisk.

Ogni giorno ho controllato auth.log per gli indirizzi IP e manualmente eseguendo iptables -A INPUT -s IPA.DRE.SS.0/24 -j DROP

Inizialmente stavo facendo solo indirizzi IP, ma molti risultati provenivano da indirizzi IP simili, quindi /24 ha funzionato meglio, ho usato /16 un paio di volte.

Ho già centinaia di voci iptables e questo sta andando fuori controllo! So che ci deve essere un modo più semplice per farlo.

fail2ban mi è stato consigliato ma sembra che blocchi gli IP solo temporaneamente dopo un certo # tentativi.

I due principali tentativi di intrusione che vedo sono l'utilizzo di nomi utente falsi e porte casuali.

È possibile, se si tenta di accedere con un nome utente che non sto attualmente utilizzando, bloccare automaticamente in modo permanente l'indirizzo IP? Lo stesso con le porte che non sono in uso?

Vedo anche molto così:

Did not receive identification string from (malicious IP) port 48334

Vorrei bannare anche quegli IP.

Non bloccherò automaticamente i tentativi di accesso errati come se immettessi un dito grasso sulla password che potrebbe bloccarmi. Ma forse basterà un ban permanente su un IP dopo 3 tentativi.

Posso farlo con iptables? Non ho trovato nulla riguardo ai "ban permanenti" che funzionino in questo modo, sembra che funzioni di più al momento.

Mi piacerebbe più o meno realizzare ciò che ho fatto manualmente; blocco permanente degli intervalli IP dopo un singolo accesso con nome utente errato, una singola connessione alla porta errata o 3 tentativi di accesso errati (con nome utente corretto). Spero che questo eviterà che auth.log venga spammato.

Risposta accettata:

fail2ban può essere configurato per ban permanenti impostando bantine a -1

In jail.conf

bantime = -1 

Questi andranno persi al riavvio, ma non è necessariamente una cosa negativa perché così tanti tentativi saranno temporanei da macchine domestiche pwned in una botnet...

Se desideri la persistenza, https://arno0x0x.wordpress.com/2015/12/30/fail2ban-permanent-persistent-bans/ potrebbe fornire alcune indicazioni.

Sostanzialmente modificando il fail2ban config per creare un file di configurazione persistente di tutti gli IP vietati e fare in modo che iptables carichi questo elenco al riavvio...

Quindi, se controlli il tuo jail.conf predefinito potresti scoprire che l'azione predefinita è iptables-multiport . Questo corrisponde al file di configurazione /etc/fail2ban/ction.d/iptables-multiport.conf

Possiamo aggiungere le seguenti voci:

[Definition]
# Option:  actionstart
# Notes.:  command executed once at the start of Fail2Ban.
# Values:  CMD
#
actionstart = iptables -N fail2ban-<name>
              iptables -A fail2ban-<name> -j RETURN
              iptables -I <chain> -p <protocol> -m multiport --dports <port> -j fail2ban-<name>
          cat /etc/fail2ban/persistent.bans | awk '/^fail2ban-<name>/ {print $2}' \
          | while read IP; do iptables -I fail2ban-<name> 1 -s $IP -j <blocktype>; done

# Option:  actionstop
# Notes.:  command executed once at the end of Fail2Ban
# Values:  CMD
#
actionstop = iptables -D <chain> -p <protocol> -m multiport --dports <port> -j fail2ban-<name>
             iptables -F fail2ban-<name>
             iptables -X fail2ban-<name>

# Option:  actioncheck
# Notes.:  command executed once before each actionban command
# Values:  CMD
#
actioncheck = iptables -n -L <chain> | grep -q 'fail2ban-<name>[ \t]'

# Option:  actionban
# Notes.:  command executed when banning an IP. Take care that the
#          command is executed with Fail2Ban user rights.
# Tags:    See jail.conf(5) man page
# Values:  CMD
#
actionban = iptables -I fail2ban-<name> 1 -s <ip> -j <blocktype>
        echo "fail2ban-<name> <ip>" >> /etc/fail2ban/persistent.bans

Ora, quando fail2ban contrassegna una voce aggiungerà una riga a /etc/fail2ban/persistent.bans (tramite actionban configurazione). Quando fail2ban si avvia chiama actionstart che legge questo file e costruisce iptables regole necessarie.

Correlati:Mac:assegnare IP a indirizzi mac certian in dd-wrt?

Naturalmente, fail2ban deve essere riavviato dopo aver modificato uno qualsiasi dei file di configurazione.

Tutto il merito di "arno0x0x" e del suo sito wordpress per questa ricetta.


Debian
  1. Come installare Debian 10 (Buster)

  2. Come modificare il nome host in Debian 10

  3. Come eseguire OpenVPN automaticamente su Debian con un indirizzo IP statico

  4. Come interrompere l'installazione automatica degli aggiornamenti su Ubuntu o Debian (aggiornamenti automatici)

  5. Come posso elencare gli indirizzi IP bloccati da iptables?

Come installare Debian 11

Come riavviare Debian 10

Come abilitare/disabilitare il ping usando iptables su Debian 10

Come assegnare più indirizzi IP a una singola scheda LAN in Debian 10

Come installare Vai su Debian 10

Come installare Vai su Debian