Buoni passi per sopravvivere all'attacco denial-of-service (attacco DoS)

2

Devo seguire diversi passaggi per proteggere il nostro progetto Web dall'attacco DoS.

  • C'è qualche linea guida / passaggi?

EDIT: Abbiamo il nostro server in cui gestiamo diversi siti Web di e-commerce. Il nostro sistema operativo del server è CentOS.

    
posta Md Mahbubur Rahman 24.10.2012 - 16:02
fonte

2 risposte

5

Per evitare tempi di inattività durante DDoS su server singolo, puoi assicurarti che il tuo sistema operativo rimanga stabile durante DDoS, quindi quando l'attacco è sparito, continua a funzionare. Questo può essere ottenuto nel seguente modo:

  • Imposta IPTABLES con limite di velocità
  • Aggiungi il proxy di Varnish e configuralo per negare gli attacchi, è stabile e molto resiliente e ha alcuni moduli per supportarlo.
  • Abilita syncookies
  • Utilizza l'ultimo kernel Linux

Questa è una cosa molto difficile da fare e non semplice, ecco perché la risposta è un po 'vaga, e difficilmente otterrai qualcos'altro.

In sostanza, dovresti assicurarti che l'alluvione non stia raggiungendo il tuo livello di applicazione causando il soffocamento del server, ma invece droppando le connessioni.

Vedi questo su Server Fault:

link

    
risposta data 24.10.2012 - 16:58
fonte
2

Il modo migliore per proteggersi da un DDOS è avere la capacità di soddisfare tutte le richieste, ma ciò potrebbe significare un notevole dispendio di hardware e larghezza di banda. OTOH un po 'di messa a punto fa molto per migliorare la capacità e le prestazioni, il che giova anche ai tuoi utenti legittimi e al tuo business.

I server basati su eventi possono gestire un numero elevato di connessioni in modo molto più agevole dei server pre-fork o basati su thread: non si dice come si presenta l'architettura o quale software si sta utilizzando. Quindi eseguire nginx / lighttpd / varnish / ATS può darti molta più capacità.

Utilizzare un CDN può aiutare se il tuo contenuto è memorizzabile nella cache.

Se il DDOS sta assorbendo CPU / memoria, l'esecuzione di un proxy inverso nella cache aiuterà se il DDOS ha come obiettivo il contenuto memorizzabile nella cache . Non sarà di aiuto se il contenuto non è memorizzabile nella cache / targetizza problemi di blocco / riempie la larghezza di banda della rete.

Supponendo che si desidera mantenere il servizio durante un DDOS, significa quindi essere in grado di distinguere tra traffico legittimo e traffico DOS. Assicurati che il tuo server web stia già registrando l'agente utente e i cookie essenziali.

Se è possibile eseguire alcune applicazioni logiche sul dispositivo front-end, si ha la possibilità di applicare del codice per acquisire e differenziare tra traffico legittimo e DOS - è possibile iniziare a consultare URL, cookie, informazioni sull'indirizzo IP, agenti utente ecc.

  • Se hai problemi con i contenuti non memorizzabili nella cache, puoi iniziare a reindirizzare le richieste a una pagina memorizzabile nella cache in cui richiedi un intervento dell'utente per l'accesso non-gate al sito reale (ad esempio richiedendo all'utente di fare clic su un collegamento per impostare un cookie)

  • puoi applicare la profilatura delle richieste e inserire i risultati in, ad esempio, fail2ban (potresti volere google per una guida più intelligente di questo uno - che copre in termini generali come impostarlo - ma non fa un ottimo lavoro di spiegando come rilevare l'attacco e passare selettivamente le informazioni su fail2ban). Ricorda però che l'aggiunta di voci nella catena di regole per iptables può avere un impatto significativo sulle prestazioni.

  • Se la tua userbase segue una geografia ben definita, quindi utilizza il modulo geoip con iptables ti aiuterà - ma avrà bisogno di un po 'di lavoro per configurare switchnig tra le modalità di accesso ad accesso aperto e ad accesso limitato.

we are running several e-Commerce websites

Implica SSL - quindi c'è un rischio significativo di fame di CPU. Probabilmente mi farò fiammeggiare per questo - ma attenzione alle suite di cifratura PFS - sono piuttosto costose (le più recenti in openSSL sono molto meglio). Ci sono alcune cose buone sulla protezione SSL contro DOS qui .

Spero che tu non stia utilizzando Magento / Wordpress!

Idealmente vuoi essere in grado di bloccare il traffico prima che raggiunga anche il tuo server - parla al tuo provider di hosting / al tuo fornitore di servizi upstream per vedere cosa possono fare per aiutarti.

    
risposta data 24.10.2012 - 18:16
fonte

Leggi altre domande sui tag