Nginx - Blocca l'accesso tramite indirizzo IP

Nel tempo quando abbiamo un sito live che utilizza Nginx stiamo notando alcuni comportamenti strani da parte di alcuni indirizzi IP, generalmente questi indirizzi appartengono a robot o agenti dannosi che attaccano il nostro servizio.

Sebbene abbiamo visto come bloccare l'accesso e il traffico utilizzando il Modulo GeoIP, esiste anche un modo più semplice e diretto per eseguire questo tipo di serrature, grazie a questo se non abbiamo la Modulo GeoIP a disposizione possiamo mettere a punto una buona serie di regole che ci consentono di regolamentare l'accesso al nostro sito.

Lista nera


Effettuare l'amministrazione di un server implica che abbiamo determinate politiche che garantiscono la sicurezza dei nostri dati oltre a garantire il corretto funzionamento delle nostre risorse, un ostacolo che affrontiamo sono attacchi e consultazioni massicce da parte di bot, script di esplorazione o persino agenti dannosi.

Per i motivi di cui sopra dobbiamo gestire una lista nera che ci permetta bloccare gli indirizzi IP che sappiamo sono strutturati e non riguardano il traffico organico per i nostri siti serviti da Nginx.

Per costruire queste blacklist possiamo bloccare per IP o per set di indirizzi IP, in questo modo possiamo alleviare un po' la situazione e avere uno sviluppo del servizio più sano.

Come costruire la lista nera?


Per costruire la nostra lista nera dobbiamo usare le regole negarepermettere in modo che possiamo specificare gli intervalli degli IP da bloccare o semplicemente posizionare indirizzi specifici, questo deve essere fatto con molta attenzione poiché possiamo bloccare più utenti del desiderato se non posizioniamo correttamente la regola.

Vediamo nell'immagine seguente un codice di esempio di come eseguire una configurazione base di blocco dell'accesso:

Nel codice vediamo come si usa negare per specificare un particolare IP e poi con allow specifichiamo un intervallo di indirizzi usando il sottomaschera / 24, Questo esempio è ampiamente utilizzato quando segmentiamo un servizio all'interno di una rete locale, in modo che un reparto non possa connettersi al servizio che ospita Nginx.

ImportanteUn altro aspetto che possiamo combinare quando utilizziamo questo tipo di blocchi è sapere quale errore dovremmo lanciare contro di loro, ad esempio, se stiamo bloccando possibili attacchi, è meglio lanciare un errore 404 pagina non trovata per non stimolare un attacco più forte se l'attaccante sa che gli viene negato l'ingresso, ma in un ambiente di rete locale forse l'ideale è che indichiamo con un 403 che sta accedendo ad un'area riservata.

Per finire questo tutorial vediamo che eseguire questo tipo di serratura è molto semplice e non dipendiamo da altri moduli, grazie a questo con un'installazione standard o ridotta di Nginx saremo in grado di implementare le nostre politiche di sicurezza.

Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave