Proksi terbalik Nginx melindungi daripada serangan Bot
Dengan perkembangan teknologi Internet, mencegah serangan web telah menjadi isu penting untuk keselamatan tapak web. Sebagai alat serangan automatik, Bot telah menjadi salah satu bentuk utama serangan web. Khususnya, Nginx, yang berfungsi melalui proksi terbalik, telah digunakan secara meluas kerana kecekapan, kestabilan, fleksibiliti dan penyesuaiannya. Artikel ini akan menyediakan beberapa langkah pencegahan yang berkesan terhadap serangan Bot di bawah proksi terbalik Nginx.
1. Hidupkan Log Akses
Nginx menyediakan fungsi Log Akses, yang boleh merekodkan protokol HTTP, IP sumber, masa permintaan, kod status respons dan maklumat lain bagi setiap permintaan. Dengan menghidupkan Log Akses, serangan Bot boleh dikesan dengan lebih mudah.
Tambah kandungan berikut dalam fail konfigurasi Nginx:
http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; …… }
2 Tambah IP terhad
Tambah kaedah untuk menyekat IP dalam fail konfigurasi Nginx, yang boleh menghalang dengan berkesan. serangan IP Serantau tertentu. Sebagai contoh, menambah yang berikut boleh menghalang serangan dari tanah besar China:
http { deny 61.135.0.0/16; deny 118.25.0.0/16; …… }
3 Gunakan modul GeoIP
Modul GeoIP Nginx boleh memadankan IP sumber akses dengan lokasi geografinya. Hanya pasang modul GeoIP dan perpustakaan GeoIP dan gunakan pembolehubah GeoIP untuk mengesan kawasan asal IP. Contohnya:
http { geoip_country /usr/share/GeoIP/GeoIP.dat; geoip_city /usr/share/GeoIP/GeoIPCity.dat; server { location / { if ($geoip_country_code = CN) { return 403; } if ($geoip_city_name ~* "moscow") { return 403; } } } }
4. Tambah pengesahan Perujuk HTTP
Perujuk HTTP boleh digunakan untuk mengesahkan sumber permintaan. Cuma tambah kandungan berikut dalam fail konfigurasi Nginx:
http { server { if ($http_referer ~* (blacklist1|blacklist2|blacklist3)) { return 403; } } }
5. Gunakan Nginx untuk menghalang serangan CC
Nginx menyediakan beberapa ciri untuk menghalang serangan CC. Hanya tetapkan dalam fail konfigurasi Nginx:
http { limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; server { location / { limit_req zone=one burst=5; …… } } }
6 Dayakan sijil SSL
Dengan mendayakan sijil SSL, anda boleh menghalang kecurian data dan serangan man-in-the-middle pada protokol HTTP. tahap. Pada masa yang sama, mekanisme HTTP Strict Transport Security (HSTS) boleh didayakan untuk menghalang permintaan HTTP daripada ditukar secara paksa kepada permintaan HTTP, dengan itu membolehkan semua akses diakses sebagai HTTPS pada masa hadapan.
http { server { listen 443 ssl; ssl_certificate /path/to/cert; ssl_certificate_key /path/to/key; add_header Strict-Transport-Security "max-age=315360000; includeSubDomains; preload;"; } }
Ringkasan
Keselamatan pelayan proksi terbalik Nginx secara langsung mempengaruhi keselamatan keseluruhan sistem aplikasi Web. Untuk serangan Bot, dengan menghidupkan Log Akses, menambah IP terhad, menggunakan modul GeoIP, menambah pengesahan Perujuk HTTP, menggunakan Nginx untuk menghalang serangan CC dan mendayakan sijil SSL, dsb., anda boleh membantu pelayan proksi terbalik Nginx mengelakkan permintaan palsu dan serangan berniat jahat, dan melindungi keselamatan sistem aplikasi Web.
Atas ialah kandungan terperinci Proksi terbalik Nginx melindungi daripada serangan Bot. 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.

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.

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.

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.

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.

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.

Bagaimana untuk memperbaiki kesilapan dilarang nginx 403? Semak keizinan fail atau direktori; 2. Semak .htaccess File; 3. Semak fail konfigurasi nginx; 4. Mulakan semula nginx. Penyebab lain yang mungkin termasuk peraturan firewall, tetapan selinux, atau isu aplikasi.
