Tetapan keselamatan protokol HTTP Nginx
Nginx ialah pelayan web berprestasi tinggi dan pelayan proksi terbalik Disebabkan prestasinya yang cemerlang dan fungsi yang berkuasa, ia telah semakin digunakan dan telah menjadi peneraju dalam bidang pelayan aplikasi web semasa. Dalam proses menggunakan Nginx untuk pembangunan dan penggunaan aplikasi web, isu yang sangat penting ialah bagaimana untuk memastikan keselamatan protokol HTTP. Artikel ini akan memperkenalkan cara menyediakan keselamatan protokol HTTP Nginx dari aspek berikut.
1. Dayakan protokol HTTPS
Protokol HTTP itu sendiri tidak selamat kerana protokol HTTP dihantar dalam teks yang jelas, jadi ia mudah dicuri oleh penggodam. Untuk memastikan keselamatan protokol HTTP, kami boleh menaik taraf protokol HTTP kepada protokol HTTPS. Protokol HTTPS menggunakan protokol SSL/TLS untuk menyulitkan protokol HTTP untuk memastikan keselamatan data semasa penghantaran rangkaian. Untuk mendayakan protokol HTTPS, kami perlu melakukan langkah-langkah berikut:
1 Beli atau jana sendiri sijil SSL
2 Dayakan sokongan HTTPS dalam fail konfigurasi Nginx
3 .Konfigurasikan port mendengar HTTPS
2. Hadkan kaedah permintaan HTTP
Kaedah permintaan HTTP termasuk GET, POST, PUT, DELETE, dsb. Kaedah GET digunakan untuk mendapatkan sumber daripada pelayan, dan kaedah POST digunakan untuk menghantar data ke pelayan. Walaupun kaedah ini sangat biasa dalam aplikasi web, kaedah ini juga boleh dieksploitasi oleh penggodam. Sebagai contoh, penggodam boleh mencuri maklumat log masuk pengguna melalui kaedah POST, dan kemudian mendapatkan nombor akaun dan kata laluan pengguna. Untuk mengelakkan situasi ini, kami boleh mengehadkan kaedah permintaan HTTP dan hanya membenarkan pengguna membuat permintaan menggunakan kaedah yang diperlukan. Dalam Nginx, kita boleh menggunakan arahan berikut untuk mengehadkan kaedah permintaan HTTP:
limit_except GET {
deny all;
}
Arahan di atas menunjukkan bahawa hanya kaedah GET dibenarkan untuk membuat permintaan kaedah permintaan HTTP lain akan ditolak.
3. Tetapkan sekatan pengepala permintaan HTTP
Pengepala permintaan HTTP termasuk banyak maklumat berguna, seperti Ejen Pengguna, Kuki, dll. Walau bagaimanapun, pengepala permintaan ini juga boleh digunakan untuk serangan. Contohnya, dalam serangan suntikan SQL, penggodam boleh melakukan serangan dengan mengubah suai nilai Kuki dalam pengepala permintaan HTTP. Untuk memastikan keselamatan protokol HTTP, kami boleh menetapkan sekatan pengepala permintaan HTTP. Dalam Nginx, anda boleh menggunakan arahan berikut untuk menetapkan had pengepala permintaan HTTP:
if ($http_user_agent ~* ^curl) {
return 403;
}
Arahan di atas bermaksud jika Jika maklumat Ejen Pengguna dalam pengepala permintaan HTTP mengandungi rentetan curl, permintaan itu akan ditolak.
4. Tapis permintaan HTTP khusus
Dalam aplikasi web, terdapat beberapa permintaan HTTP yang mudah dieksploitasi oleh penggodam untuk serangan. Contohnya, untuk menyerang kelemahan kebocoran fail /etc/passwd, penggodam boleh menambah simbol traversal direktori seperti ../ pada permintaan HTTP untuk mendapatkan maklumat sensitif pada pelayan. Untuk mengelakkan serangan ini, kami perlu menapis permintaan HTTP untuk melarangnya daripada mengandungi aksara atau jujukan aksara berbahaya. Dalam Nginx, anda boleh menggunakan arahan berikut untuk menapis permintaan HTTP tertentu:
if ($request_uri ~* "/etc/passwd") {
return 403;
}
di atas Arahan menunjukkan bahawa jika permintaan HTTP mengandungi urutan aksara /etc/passwd, permintaan akan ditolak.
Ringkasan
Artikel ini memperkenalkan cara menyediakan keselamatan protokol HTTP Nginx Dalam proses menggunakan Nginx untuk pembangunan dan penggunaan aplikasi web, kita perlu memberi perhatian untuk memastikan keselamatan protokol HTTP. Dengan mendayakan protokol HTTPS, menyekat kaedah permintaan HTTP, menetapkan sekatan pengepala permintaan HTTP dan menapis permintaan HTTP tertentu, kami boleh meningkatkan keselamatan aplikasi web dengan berkesan.
Atas ialah kandungan terperinci Tetapan keselamatan protokol HTTP Nginx. 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.
