Kako zaštititi VPS od DDoS napada
Napad uskraćivanjem usluge distribuiranim izvorima (DDoS) preplavljuje server ili njegovu mrežnu vezu saobraćajem sve dok pravi posetioci ne mogu da dođu do sadržaja. Neki napadi su previše veliki da bi ih sam server mogao da obradi, zato zaštita najbolje funkcioniše u slojevima: prvo filtriranje na ivici mreže, a zatim podešavanja vatrozida i aplikacija na VPS-u. ONIE štiti cloud servere u Ho Chi Minh Cityju uz DDoS Shield na ivici mreže bez dodatne naknade, a VPS sa DDoS zaštitom možete postaviti za nekoliko minuta.
Vrste napada
- Volumetrijski (sloj 3 i 4): poplave paketa koje zapunjavaju mrežnu vezu, na primer UDP poplave.
- Protokolni napadi: zloupotreba obrade veza, na primer SYN poplave koje zapunjavaju tabelu veza.
- Napadi na sloju aplikacije (sloj 7): mnogo naizgled ispravnih HTTP zahteva koji iscrpljuju web server ili bazu podataka.
Svaka vrsta napada zahteva drugačiju odbranu. Volumetrijski saobraćaj mora biti zaustavljen pre nego što stigne do servera, dok se poplave na nivou aplikacije mogu ublažiti na samom serveru.
1. Filtrirajte na ivici mreže
Filtriranje na ivici odbacuje loš saobraćaj pre nego što stigne do VPS-a, pa veza ostaje nezasićena. Kod DDoS Shield-a filtriranje se izvodi na ivici mreže pomoću XDP/eBPF, a konzola prikazuje saobraćaj i događaje napada za svaku IP adresu. Pitajte svakog provajdera koga razmatrate šta je uključeno, gde se filtriranje odvija i da li košta dodatno.
2. Zatvorite ono što ne koristite
sudo ufw default deny incoming
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableNemojte izlagati baze podataka ili administratorske panele internetu. Vežite ih za 127.0.0.1 ili privatnu mrežu.
3. Podesite kernel za SYN poplave
SYN kolačići su podrazumevano uključeni u većini distribucija. Proverite:
sysctl net.ipv4.tcp_syncookiesDržite se malih izmena u kernelu i testirajte ih, jer pogrešne vrednosti mogu da naruše normalan saobraćaj.
4. Ograničite zahteve u Nginx-u
U http bloku:
limit_req_zone $binary_remote_addr zone=perip:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=connperip:10m;U server ili location bloku:
limit_req zone=perip burst=20 nodelay;
limit_conn connperip 20;Ponovo učitajte konfiguraciju komandom sudo nginx -t && sudo systemctl reload nginx. Servirajte statičke fajlove iz keša i koristite dodatak za keširanje na WordPress-u da smanjite trošak svakog zahteva. Pogledajte instalaciju WordPress-a uz Nginx.
5. Pratite saobraćaj
ss -s
sudo ss -ntu state established | wc -l
sudo apt install -y nload && nloadNagli skok u broju veza ili propusnosti, ili server koji postaje spor uz malo korišćenje procesora, može ukazivati na napad. Podesite upozorenja kako biste ga rano primetili.
6. Kontrolna lista za incident
- Potvrdite u konzoli da li je saobraćaj napad ili stvarni porast.
- Proverite događaje napada i napadnutu IP adresu.
- Blokirajte zlonamerne izvorne adrese ili opsege koje možete da identifikujete.
- Uključite strože ograničenja zahteva ili stranicu za održavanje.
- Kontaktirajte podršku provajdera i navedite vreme i IP adresu.
- Nakon toga pregledajte logove i ažurirajte ovaj plan. Redovno ažurirajte sigurnosne kopije i snimke.
Често постављана питања
Može li vatrozid na VPS-u zaustaviti veliki DDoS napad?
Ne sam. Ako saobraćaj zapuni mrežnu vezu, server ga ne može filtrirati. Potrebno vam je filtriranje pre servera.
Da li CDN pomaže?
Za veb-sajtove, CDN ili reverzni proxy može da apsorbuje veb-saobraćaj, pod uslovom da stvarna IP adresa vašeg servera nije izložena u DNS-u ili zaglavljima e-pošte.
Da li su mi potrebni posebni paketi za DDoS zaštitu?
Zavisi od provajdera. Proverite šta je uključeno u vaš paket i lokaciju.