Cara melindungi VPS daripada serangan DDoS
Serangan penafian perkhidmatan teragih (DDoS) membanjiri pelayan atau sambungan rangkaiannya dengan trafik sehingga pelawat sebenar tidak dapat mengakses perkhidmatan. Sesetengah serangan terlalu besar untuk dikendalikan oleh pelayan itu sendiri, jadi perlindungan paling berkesan dilaksanakan secara berlapis: penapisan di tepi rangkaian dahulu, kemudian tetapan firewall dan aplikasi pada VPS. ONIE melindungi pelayan awan di Ho Chi Minh City dengan DDoS Shield di tepi rangkaian tanpa caj tambahan, dan anda boleh melancarkan VPS dengan perlindungan DDoS dalam beberapa minit.
Jenis serangan
- Volumetrik (lapisan 3 dan 4): banjiran paket yang memenuhi pautan rangkaian, contohnya banjiran UDP.
- Serangan protokol: penyalahgunaan pengendalian sambungan, seperti banjiran SYN yang memenuhi jadual sambungan.
- Lapisan aplikasi (lapisan 7): banyak permintaan HTTP yang kelihatan sah sehingga menghabiskan sumber pelayan web atau pangkalan data.
Setiap jenis memerlukan pertahanan yang berbeza. Trafik volumetrik mesti dihentikan sebelum sampai ke pelayan anda; banjiran lapisan aplikasi boleh dikurangkan di peringkat pelayan.
1. Tapis di tepi rangkaian
Penapisan di tepi rangkaian menggugurkan trafik buruk sebelum sampai ke VPS anda, supaya pautan tidak menjadi tepu. Dengan DDoS Shield, penapisan dijalankan di tepi rangkaian menggunakan XDP/eBPF, dan konsol memaparkan trafik serta peristiwa serangan bagi setiap IP. Tanyakan mana-mana pembekal yang anda nilai tentang perkara yang disertakan, di mana penapisan berlaku dan sama ada ia dikenakan caj tambahan.
2. Tutup perkhidmatan yang tidak digunakan
sudo ufw default deny incoming
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
sudo ufw enableJangan dedahkan pangkalan data atau panel pentadbiran kepada internet. Ikat kepada 127.0.0.1 atau rangkaian peribadi.
3. Laraskan kernel untuk banjiran SYN
SYN cookies diaktifkan secara lalai dalam kebanyakan distribusi. Semak:
sysctl net.ipv4.tcp_syncookiesKekalkan perubahan kernel lain pada skala kecil dan uji dahulu, kerana nilai yang salah boleh menjejaskan trafik biasa.
4. Hadkan kadar permintaan dalam Nginx
Dalam blok http:
limit_req_zone $binary_remote_addr zone=perip:10m rate=10r/s;
limit_conn_zone $binary_remote_addr zone=connperip:10m;Dalam blok server atau location:
limit_req zone=perip burst=20 nodelay;
limit_conn connperip 20;Muat semula dengan sudo nginx -t && sudo systemctl reload nginx. Hidangkan fail statik dari cache dan gunakan plugin caching pada WordPress untuk mengurangkan kos setiap permintaan. Lihat memasang WordPress dengan Nginx.
5. Pantau trafik
ss -s
sudo ss -ntu state established | wc -l
sudo apt install -y nload && nloadLonjakan mendadak dalam sambungan atau lebar jalur, atau pelayan yang menjadi perlahan walaupun penggunaan CPU rendah, boleh menandakan serangan. Tetapkan makluman supaya anda dapat mengesannya lebih awal.
6. Senarai semak insiden
- Sahkan dalam konsol sama ada trafik itu serangan atau lonjakan sebenar.
- Semak peristiwa serangan dan IP yang diserang.
- Sekat alamat sumber yang menyalahgunakan atau julat yang dapat dikenal pasti.
- Aktifkan had kadar yang lebih ketat atau halaman penyelenggaraan.
- Hubungi sokongan pembekal anda dengan masa dan IP berkaitan.
- Selepas itu, semak log dan kemas kini pelan ini. Kekalkan sandaran dan snapshot yang terkini.
Soalan lazim
Bolehkah firewall pada VPS menghentikan DDoS besar?
Tidak sepenuhnya. Jika trafik memenuhi pautan rangkaian, pelayan tidak dapat menapisnya. Anda memerlukan penapisan di hulu pelayan.
Adakah CDN membantu?
Untuk laman web, CDN atau reverse proxy boleh menyerap trafik web, selagi IP pelayan sebenar anda tidak didedahkan dalam DNS atau pengepala e-mel.
Adakah saya memerlukan pelan khas untuk perlindungan DDoS?
Ia bergantung pada pembekal. Semak perkara yang disertakan dengan pelan dan lokasi anda.