Rumah > Artikel > Operasi dan penyelenggaraan > Aplikasi kawalan akses dan kawalan aliran dalam proksi terbalik Nginx
Nginx ialah pelayan web berprestasi tinggi, sumber terbuka dan serba boleh yang juga digunakan secara meluas sebagai pelayan proksi terbalik. Pelayan proksi terbalik boleh digunakan untuk menyediakan ciri seperti pengimbangan beban, ketersediaan tinggi, kawalan akses dan kawalan trafik. Artikel ini akan memperkenalkan aplikasi kawalan akses dan kawalan aliran dalam proksi terbalik Nginx.
1. Kawalan akses
Nginx boleh melaksanakan permintaan dengan mengkonfigurasi senarai hitam alamat IP atau kawalan akses senarai putih. Alamat IP dalam senarai hitam akan dinafikan akses, manakala alamat IP dalam senarai putih akan dibenarkan akses. Sebagai contoh, kita boleh menambah kod berikut pada fail konfigurasi Nginx:
# IP地址黑名单 location / { deny 192.168.1.1; deny 192.168.1.2; allow all; } # IP地址白名单 location / { deny all; allow 192.168.1.1; allow 192.168.1.2; }
Nginx juga boleh melepasi nginx-http-auth -digest modul Laksanakan kawalan capaian berdasarkan pengesahan pengguna. Sebagai contoh, kita boleh menambah kod berikut pada fail konfigurasi Nginx:
# 用户认证 location / { auth_digest "Enter username and password"; auth_digest_user_file /etc/nginx/user.passwd; }
Antaranya, /etc/nginx/user.passwd ialah fail yang menyimpan nama pengguna dan kata laluan. Selepas konfigurasi selesai, pengguna perlu memasukkan nama pengguna dan kata laluan mereka untuk mengakses pelayan proksi terbalik Nginx.
2. Kawalan aliran
1. Hadkan kadar permintaan
Nginx boleh mengehadkan kadar permintaan melalui modul ngx_http_limit_req_module. Sebagai contoh, kita boleh menambah kod berikut pada fail konfigurasi Nginx:
# 限制请求速率 http { limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; server { location / { limit_req zone=one burst=5; } } }
Di mana, rate=1r/s bermakna hanya satu permintaan dibenarkan sesaat, dan burst=5 bermakna pecahan 5 permintaan dibenarkan sebagai tindak balas. Kaedah mengehadkan kadar permintaan ini menghalang pengguna berniat jahat daripada menggunakan sumber pelayan dengan menghantar sejumlah besar permintaan.
2. Hadkan kadar sambungan
Nginx boleh mengehadkan kadar sambungan melalui modul ngx_http_limit_conn_module. Sebagai contoh, kita boleh menambah kod berikut dalam fail konfigurasi Nginx:
# 限制连接速率 http { limit_conn_zone $binary_remote_addr zone=addr:10m; server { location / { limit_conn addr 10; } } }
di mana limit_conn_zone digunakan untuk menentukan kawasan storan kongsi untuk had kadar sambungan, dan limit_conn digunakan untuk mengehadkan bilangan maksimum sambungan bagi setiap IP alamat. Kaedah mengehadkan kadar sambungan ini menghalang pengguna berniat jahat daripada menafikan perkhidmatan dengan memonopoli sejumlah besar sambungan.
Ringkasan
Pelayan proksi terbalik Nginx mempunyai keupayaan aplikasi yang kukuh dalam kawalan akses dan kawalan aliran, dan boleh melepasi senarai hitam/senarai putih alamat IP, pengesahan pengguna, had kadar permintaan dan pengehadan kadar sambungan dan kaedah lain untuk melaksanakan kawalan akses dan kawalan aliran permintaan. Kaedah ini boleh melindungi sumber pelayan dengan berkesan dan meningkatkan ketersediaan dan keselamatan perkhidmatan.
Atas ialah kandungan terperinci Aplikasi kawalan akses dan kawalan aliran dalam proksi terbalik Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!