Rumah Operasi dan penyelenggaraan Nginx Cara menggunakan Nginx untuk melaksanakan kawalan akses berdasarkan pengesahan pengguna

Cara menggunakan Nginx untuk melaksanakan kawalan akses berdasarkan pengesahan pengguna

Aug 02, 2023 pm 04:25 PM
nginx Pensijilan kawalan capaian

Cara menggunakan Nginx untuk melaksanakan kawalan akses berasaskan pengesahan pengguna

Nginx ialah HTTP berprestasi tinggi dan pelayan proksi terbalik, yang digunakan secara meluas untuk membina aplikasi dan perkhidmatan web berskala. Selain prestasi cemerlangnya, Nginx juga menyediakan banyak ciri, salah satunya adalah kawalan akses berdasarkan pengesahan pengguna. Dalam artikel ini, kita akan belajar cara melaksanakan kawalan akses ini menggunakan Nginx dan memberikan beberapa contoh kod.

  1. Pasang Nginx

Mula-mula, kita perlu memasang Nginx. Anda boleh mendapatkan arahan pemasangan untuk sistem pengendalian anda di tapak web rasmi (https://nginx.org/). Selepas pemasangan selesai, pastikan Nginx telah berjaya dimulakan. Anda boleh menyemak status Nginx menggunakan arahan berikut:

sudo systemctl status nginx
Salin selepas log masuk
  1. Buat fail kata laluan pengguna

Nginx menggunakan fail kata laluan untuk menyimpan bukti kelayakan pengguna. Kita boleh menggunakan alat htpasswd untuk mencipta fail ini. Jika htpasswd tidak dipasang pada sistem anda, anda boleh memasangnya menggunakan arahan berikut:

sudo apt-get install apache2-utils
Salin selepas log masuk

Seterusnya, buat fail kata laluan menggunakan arahan htpasswd dan tambah beberapa pengguna. Sebagai contoh, kami akan mencipta fail kata laluan yang dipanggil .htpasswd dan menambah pengguna bernama pengguna. Taip arahan berikut dalam terminal:

sudo htpasswd -c /etc/nginx/.htpasswd user
Salin selepas log masuk

Arahan itu akan meminta anda untuk kata laluan pengguna anda. Ingat, setiap pengguna memerlukan kata laluan mereka sendiri.

  1. Konfigurasi Nginx

Kini kita perlu mengkonfigurasi Nginx untuk mendayakan kawalan akses berasaskan pengesahan pengguna. Kami mengubah hala permintaan daripada pengguna yang tidak dibenarkan ke halaman 401 Tidak dibenarkan. Buka fail konfigurasi Nginx dan buat perubahan berikut.

sudo nano /etc/nginx/sites-available/default
Salin selepas log masuk

Dalam blok pelayan, tambahkan kod berikut:

location / {
    auth_basic "Restricted Content";
    auth_basic_user_file /etc/nginx/.htpasswd;
    try_files $uri $uri/ =404;
}
Salin selepas log masuk

Selepas menyimpan dan menutup fail, muat semula konfigurasi Nginx:

sudo systemctl reload nginx
Salin selepas log masuk
  1. Menguji kawalan akses

Sekarang, anda telah menyediakan kawalan akses berdasarkan pengesahan pengguna . Anda boleh menguji ini menggunakan mana-mana penyemak imbas yang menyokong Pengesahan Asas HTTP. Apabila anda cuba mengakses halaman yang dilindungi, penyemak imbas akan menggesa anda untuk mendapatkan kelayakan anda.

Jika anda menggunakan penyemak imbas Chrome, ia akan memaparkan tetingkap timbul yang meminta anda memasukkan nama pengguna dan kata laluan anda.

Jika anda menggunakan pelayar lain, ia mungkin memaparkan medan input kelayakan sebagai borang. Tidak kira pelayar mana yang anda gunakan, anda sepatutnya berjaya mengesahkan pengguna dan mengakses halaman yang dilindungi.

  1. Pilihan Konfigurasi Lanjutan

Nginx juga menyediakan beberapa pilihan konfigurasi lanjutan untuk kawalan akses yang lebih kompleks. Sebagai contoh, anda boleh mendayakan atau melumpuhkan pengesahan pengguna pada laluan URL yang ditentukan. Anda boleh menggunakan arahan akses had untuk mencapai ini. Berikut ialah contoh konfigurasi:

location /admin {
    auth_basic "Restricted Content";
    auth_basic_user_file /etc/nginx/.htpasswd;
    allow 192.168.1.0/24;
    deny all;
}
Salin selepas log masuk

Konfigurasi ini hanya akan membenarkan alamat IP daripada subnet 192.168.1.0/24 untuk mengakses kandungan di bawah laluan /admin, manakala IP lain akan dinafikan akses.

Selain menggunakan pengesahan asas, Nginx juga menyokong penggunaan kaedah pengesahan lain seperti sijil SSL dan OAuth untuk melaksanakan kawalan akses.

Kesimpulan

Kawalan capaian berasaskan pengesahan pengguna boleh dilaksanakan dengan mudah menggunakan Nginx untuk memastikan hanya pengguna yang dibenarkan boleh mengakses kandungan yang dilindungi dalam aplikasi web. Dengan langkah di atas, anda boleh mula melindungi aplikasi web anda dan menghalang akses tanpa kebenaran.

Contoh Kod:

server {
    listen       80;
    server_name  example.com;

    location / {
        auth_basic "Restricted Content";
        auth_basic_user_file /etc/nginx/.htpasswd;
        try_files $uri $uri/ =404;
    }
}
Salin selepas log masuk

Sila ambil perhatian bahawa contoh di atas hanya menunjukkan cara mengkonfigurasi Nginx untuk kawalan akses asas. Dalam situasi sebenar, anda mungkin perlu mengkonfigurasi pelarasan konfigurasi dan nyahpepijat berdasarkan keperluan khusus anda.

Di atas adalah pengenalan kepada cara menggunakan Nginx untuk melaksanakan kawalan akses berdasarkan pengesahan pengguna. Saya harap artikel ini dapat membantu anda memahami dan menggunakan fungsi berkuasa Nginx dalam kawalan akses.

Atas ialah kandungan terperinci Cara menggunakan Nginx untuk melaksanakan kawalan akses berdasarkan pengesahan pengguna. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara memeriksa nama bekas Docker Cara memeriksa nama bekas Docker Apr 15, 2025 pm 12:21 PM

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Cara memeriksa versi nginx Cara memeriksa versi nginx Apr 14, 2025 am 11:57 AM

Kaedah yang boleh menanyakan versi nginx adalah: gunakan perintah nginx -v; Lihat arahan versi dalam fail nginx.conf; Buka halaman ralat Nginx dan lihat tajuk halaman.

Cara mengkonfigurasi nama domain pelayan awan di nginx Cara mengkonfigurasi nama domain pelayan awan di nginx Apr 14, 2025 pm 12:18 PM

Cara mengkonfigurasi nama domain Nginx pada pelayan awan: Buat rekod yang menunjuk ke alamat IP awam pelayan awan. Tambah blok hos maya dalam fail konfigurasi Nginx, menyatakan port pendengaran, nama domain, dan direktori akar laman web. Mulakan semula nginx untuk memohon perubahan. Akses konfigurasi ujian nama domain. Nota Lain: Pasang sijil SSL untuk membolehkan HTTPS, pastikan firewall membenarkan trafik port 80, dan tunggu resolusi DNS berkuatkuasa.

Cara Mengkonfigurasi Nginx di Windows Cara Mengkonfigurasi Nginx di Windows Apr 14, 2025 pm 12:57 PM

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.

Cara memeriksa sama ada nginx dimulakan Cara memeriksa sama ada nginx dimulakan Apr 14, 2025 pm 01:03 PM

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.

Cara membuat bekas untuk Docker Cara membuat bekas untuk Docker Apr 15, 2025 pm 12:18 PM

Buat bekas di Docker: 1. Tarik Imej: Docker Pull [Nama Cermin] 2. Buat bekas: Docker Run [Options] [Mirror Name] [Command] 3. Mulailah bekas: Docker Start [Nama Container]

Cara memulakan pelayan nginx Cara memulakan pelayan nginx Apr 14, 2025 pm 12:27 PM

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

Cara Memulakan Bekas oleh Docker Cara Memulakan Bekas oleh Docker Apr 15, 2025 pm 12:27 PM

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

See all articles