


Cara menggunakan Nginx untuk menyekat pelbagai akses berniat jahat
Memandangkan pembangunan Internet terus berkembang pesat, terdapat lebih banyak serangan akses berniat jahat. Untuk memastikan keselamatan sistem dan data kami, kami perlu mencari cara yang cekap untuk menyekat pelbagai akses berniat jahat. Di sini, saya akan memperkenalkan kepada anda cara menggunakan Nginx untuk menyekat pelbagai kaedah akses berniat jahat.
Nginx ialah pelayan web berprestasi tinggi yang bukan sahaja boleh mengendalikan sejumlah besar permintaan serentak, tetapi juga mencapai pelbagai fungsi dengan menggunakan pelbagai pemalam dan modul. Salah satu fungsi penting ialah mengehadkan serangan akses berniat jahat. Begini cara untuk melaksanakan ini dengan Nginx:
- Had Permintaan Pelayan HTTP
Permintaan HTTP ialah protokol berasaskan teks yang boleh disambungkan oleh sesiapa sahaja melalui HTTP Hantar sebarang permintaan kepada pelayan. Dalam kes ini, tanpa sebarang sekatan, pelayan mungkin tertakluk kepada sejumlah besar permintaan, walaupun daripada penyerang berniat jahat, menyebabkan pelayan terlebih muatan dan akhirnya ranap. Untuk mengelakkan perkara ini berlaku, kami perlu menetapkan had permintaan HTTP pada pelayan.
Dengan menggunakan modul Nginx, kami boleh mengkonfigurasi had permintaan HTTP dengan mudah. Mula-mula, pasang modul HttpLimitReq pada pelayan Nginx. Kemudian, edit fail konfigurasi Nginx dan tambah kod berikut:
http {
limit_req_zone $binary_remote_addr zone=mylimit:10m rate=1r/s; server { limit_req zone=mylimit burst=10 nodelay; }
}
Kod di atas melaksanakan permintaan daripada alamat IP yang sama: Hanya satu permintaan dibenarkan sesaat, dan saiz pecah maksimum yang dibenarkan ialah 10 permintaan.
- Sekatan akses alamat IP
Penyerang berniat jahat boleh menggunakan sejumlah besar alamat IP untuk menyerang pelayan kami, contohnya dengan menggunakan sejumlah besar pelayan proksi atau menggunakan bilangan komputer yang besar untuk melakukan serangan DDoS. Untuk mengehadkan serangan ini, kami perlu melaksanakan sekatan akses alamat IP.
Dengan menggunakan modul HttpAccess Nginx, kami boleh melaksanakan sekatan akses alamat IP dengan mudah. Sebagai contoh, kami boleh menambah kod berikut:
http {
deny 192.168.1.1; allow 10.0.0.0/8; allow 172.16.0.0/12; allow 192.168.0.0/16; location / { deny all; # ... }
}
Dalam kod di atas, kami mengehadkan akses kepada alamat IP 192.168.1.1, sambil membenarkan Akses dengan alamat IP 10.0.0.0/8, 172.16.0.0/12 dan 192.168.0.0/16.
- Sekatan akses Ejen Pengguna
Ejen Pengguna ialah medan dalam protokol HTTP yang menunjukkan jenis, versi dan sistem pengendalian penyemak imbas atau klien lain. Penyerang berniat jahat boleh mendapat akses kepada pelayan kami dengan memalsukan Agen-Pengguna. Untuk mengehadkan serangan ini, kami perlu melaksanakan sekatan akses Ejen Pengguna.
Dengan menggunakan modul HttpMap Nginx, kami boleh melaksanakan sekatan akses Ejen Pengguna dengan mudah. Sebagai contoh, kita boleh menambah kod berikut:
http {
map $http_user_agent $limit_user_agent { default 0; ~*bot 1; ~*spider 1; ~*crawler 1; } limit_conn_zone $binary_remote_addr zone=mylimit:10m; server { if ($limit_user_agent) { return 503; } limit_conn mylimit 1; }
}
Dalam kod di atas, kami mentakrifkan pemetaan yang dipanggil $limit_user_agent yang akan dipadankan oleh Ejen-Pengguna sama ada ia adalah perangkak atau robot dalam pembolehubah $limit_user_agent. Jika ya, ralat 503 dikembalikan, menunjukkan bahawa pelayan sibuk, jika tidak, akses dibenarkan.
Di atas adalah kaedah untuk menyekat pelbagai akses berniat jahat dengan menggunakan Nginx. Gabungan kaedah sekatan yang berbeza boleh melindungi keselamatan pelayan kami dengan lebih baik. Pada masa yang sama, kami juga perlu memberi perhatian kepada pengemaskinian pelbagai komponen dan perisian pelayan tepat pada masanya, serta beberapa langkah perlindungan, seperti memasang tembok api, melumpuhkan perkhidmatan yang tidak diperlukan, dll., untuk memastikan pelayan kami sentiasa mengekalkan yang terbaik. status keselamatan.
Atas ialah kandungan terperinci Cara menggunakan Nginx untuk menyekat pelbagai akses berniat jahat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Di Linux, gunakan arahan berikut untuk memeriksa sama ada nginx dimulakan: Hakim status SistemCTL Nginx berdasarkan output arahan: Jika "Aktif: Aktif (Running)" dipaparkan, Nginx dimulakan. Jika "aktif: tidak aktif (mati)" dipaparkan, nginx dihentikan.

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Langkah -langkah untuk memulakan Nginx di Linux: Periksa sama ada Nginx dipasang. Gunakan SistemCTL Mula Nginx untuk memulakan perkhidmatan Nginx. Gunakan SistemCTL Dayakan NGINX untuk membolehkan permulaan automatik Nginx pada permulaan sistem. Gunakan Status SistemCTL Nginx untuk mengesahkan bahawa permulaan berjaya. Lawati http: // localhost dalam pelayar web untuk melihat halaman selamat datang lalai.

Memulakan pelayan Nginx memerlukan langkah-langkah yang berbeza mengikut sistem operasi yang berbeza: Sistem Linux/Unix: Pasang pakej Nginx (contohnya, menggunakan apt-get atau yum). Gunakan SystemCTL untuk memulakan perkhidmatan Nginx (contohnya, SUDO SystemCTL Mula Nginx). Sistem Windows: Muat turun dan pasang fail binari Windows. Mula Nginx menggunakan nginx.exe executable (contohnya, nginx.exe -c conf \ nginx.conf). Tidak kira sistem operasi yang anda gunakan, anda boleh mengakses IP pelayan

Pelayan tidak mempunyai kebenaran untuk mengakses sumber yang diminta, mengakibatkan ralat NGINX 403. Penyelesaian termasuk: Periksa keizinan fail. Semak konfigurasi .htaccess. Semak konfigurasi Nginx. Konfigurasikan keizinan Selinux. Semak peraturan firewall. Menyelesaikan masalah lain seperti masalah penyemak imbas, kegagalan pelayan, atau kesilapan lain yang mungkin.

Terdapat dua cara untuk menyelesaikan masalah silang domain Nginx: Ubah suai tajuk tindak balas silang domain: Tambah arahan untuk membenarkan permintaan lintas domain, nyatakan kaedah dan tajuk yang dibenarkan, dan tetapkan masa cache. Gunakan modul CORS: Dayakan modul dan konfigurasikan peraturan CORS untuk membolehkan permintaan, kaedah, tajuk, dan masa cache domain.

Jawab kepada Soalan: 304 Tidak diubahsuai ralat menunjukkan bahawa penyemak imbas telah cache versi sumber terkini permintaan klien. Penyelesaian: 1. Kosongkan cache penyemak imbas; 2. Lumpuhkan cache penyemak imbas; 3. Konfigurasi nginx untuk membolehkan cache pelanggan; 4. Periksa keizinan fail; 5. Semak fail hash; 6. Lumpuhkan CDN atau cache proksi terbalik; 7. Mulakan semula nginx.
