Dalam aplikasi Internet moden, Nginx sangat digemari sebagai pelayan proksi terbalik yang sangat baik. Tetapi apabila menggunakan proksi terbalik Nginx, untuk memastikan prestasi keselamatan tapak web, kami masih perlu melakukan beberapa kerja tambahan. Seterusnya, mari kita pelajari tentang beberapa teknik pengoptimuman prestasi keselamatan proksi terbalik Nginx.
Protokol SSL/TLS ialah protokol keselamatan yang digunakan secara meluas dalam komunikasi rangkaian. Dengan menggunakan protokol SSL/TLS, tapak web boleh menyulitkan penghantaran data untuk mengelakkan isu keselamatan rangkaian seperti serangan man-in-the-middle. Nginx menyokong menggunakan SSL/TLS dalam proksi terbalik.
Menggunakan protokol SSL/TLS memerlukan sijil pelayan dan kunci peribadi. Apabila menjana sijil, gunakan had kesahan yang lebih panjang dan disyorkan untuk menggunakan kunci RSA sebanyak 2048 bit atau lebih. Selain itu, dalam fail konfigurasi Nginx, beri perhatian untuk menambah pernyataan berikut untuk mengkonfigurasi parameter berkaitan protokol SSL/TLS:
listen 443 ssl; ssl_certificate /path/to/cert; ssl_certificate_key /path/to/private/key;
Untuk mengelakkan serangan DOS dan Crawler berniat jahat dan tingkah laku jahat lain boleh menetapkan had permintaan untuk pelayan proksi terbalik. Melalui modul limit_req terbina dalam Nginx dan modul limit_conn, anda boleh mengehadkan bilangan permintaan dan bilangan sambungan masing-masing.
Dalam modul limit_req, anda boleh menetapkan kawasan storan req_zone dan parameter pecah untuk mengehadkan bilangan permintaan. Dalam modul limit_conn, anda boleh menetapkan kawasan storan conn_zone dan parameter nodelay untuk mengehadkan bilangan sambungan. Apabila menetapkan, anda perlu memberi perhatian kepada pemilihan parameter untuk memastikan operasi normal perkhidmatan.
Untuk memastikan keselamatan penghantaran data tapak web, kami biasanya perlu memaksa penggunaan protokol HTTPS. Nginx menyediakan cara mudah, mengubah hala melalui HTTPS.
Dalam fail konfigurasi Nginx, anda boleh menambah pernyataan berikut:
server { listen 80; server_name example.com; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name example.com; ssl_certificate /path/to/cert; ssl_certificate_key /path/to/private/key; ... }
Apabila pengguna melawati http://example.com, Nginx akan mengubah halanya secara automatik ke https:// contoh. com.
Apabila bilangan pelayan sasaran proksi terbalik meningkat secara beransur-ansur, kita perlu mempertimbangkan cara memilih algoritma pengimbangan beban yang paling sesuai. Nginx menyediakan pelbagai algoritma pengimbangan beban, termasuk pengundian, undian berwajaran, pencincangan IP, bilangan sambungan minimum, dsb.
Dalam fail konfigurasi Nginx, anda boleh memilih algoritma pengimbangan beban yang sepadan dengan mengkonfigurasi huluan. Contohnya:
upstream backend { ip_hash; server backend1.example.com; server backend2.example.com; }
Dalam kod di atas, algoritma pencincangan IP dipilih dan permintaan diedarkan kepada dua pelayan backend1.example.com dan backend2.example.com.
Ringkasan
Melalui penggunaan munasabah protokol SSL/TLS, had permintaan, pengalihan HTTPS, algoritma pengimbangan beban dan teknik lain, prestasi keselamatan proksi songsang Nginx boleh dipertingkatkan lagi dan pengalaman pengguna dan perkhidmatan bertambah baik. Saya harap pengenalan di atas akan membantu anda dalam menggunakan pengoptimuman prestasi keselamatan dalam proksi terbalik Nginx.
Atas ialah kandungan terperinci Petua pengoptimuman prestasi keselamatan untuk proksi terbalik Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!