Cara kata laluan melindungi direktori web di Apache menggunakan .fail htaccess
- 3399
- 636
- Chris Little I
Apabila anda menguruskan projek dalam talian, anda sering perlu mengehadkan akses kepada projek itu untuk melindunginya daripada dunia luar. Mungkin ada sebab yang berbeza untuk itu - contohnya anda ingin mengelakkan crawler enjin carian daripada mengakses laman web anda semasa masih dalam fasa pembangunan.
Kata Laluan Lindungi Direktori Web ApacheDalam tutorial ini, saya akan menunjukkan kepada anda cara kata laluan dilindungi direktori laman web yang berbeza di Apache pelayan web. Terdapat banyak cara anda dapat mencapai ini, tetapi kami akan mengkaji dua daripadanya yang paling biasa digunakan.
Kaedah pertama mengkonfigurasi perlindungan kata laluan secara langsung dalam fail konfigurasi Apache, sementara yang kedua menggunakan .Htaccess fail.
Keperluan
Untuk menyediakan perlindungan kata laluan untuk direktori web anda, anda perlu mempunyai:
- Pelayan web Apache yang berfungsi
- The Allowoverride AuthConfig Arahan mesti diaktifkan dalam fail konfigurasi Apache.
Persediaan direktori terlindung kata laluan Apache
1. Untuk tutorial ini, kami akan melindungi Direktori Root Web Utama /var/www/html
. Untuk melindungi direktori itu, buka konfigurasi Apache anda:
---------------- Pada Redhat/Centos Sistem berasaskan ---------------- # VI/ETC/HTTPD/CONF/HTTPD.conf ---------------- ON Debian/Ubuntu Sistem Berdasarkan ---------------- # Nano/etc/Apache2/Laman-tersedia/000-Lalai.Conf
2. Cari root direktori dokumen Apache untuk /var/www/html Dan tambahkan perkara -perkara berikut seperti yang dicadangkan:
Pada Apache 2.2 versi
Indeks Pilihan Termasuk Followsymlinks Multiviews AllowOverride Semua pesanan, menafikan Benarkan dari semua
Pada Apache 2.4 versi
Indeks Pilihan Termasuk MultiViews Followsymlinks AllowOverride Semua Memerlukan Semua Yang DiberikanApache 2.4: Dayakan Allowoverride semua
3. Simpan fail dan mulakan semula Apache dengan menggunakan arahan berikut:
--------------- Pada Sistemd ------------------- # Systemctl mulakan semula httpd [on Topi merah sistem berasaskan] # Systemctl Mulakan semula Apache2 [ON Debian sistem berasaskan] --------------- pada SYSV INIT ----------------- # Perkhidmatan httpd mulakan semula [on Topi merah sistem berasaskan] # perkhidmatan apache2 mulakan semula [pada Debian sistem berasaskan]
4. Sekarang kita akan menggunakan htpasswd Perintah untuk menjana nama pengguna dan kata laluan untuk direktori yang dilindungi kami. Perintah ini digunakan untuk menguruskan fail pengguna untuk pengesahan asas.
Sintaks umum arahan adalah:
# htpasswd -c nama pengguna fail
The -c
pilihan menentukan fail yang akan menyimpan kata laluan yang disulitkan dan nama pengguna Menentukan pengguna untuk pengesahan.
5. Fail kata laluan kami perlu ditempatkan di direktori web yang boleh diakses oleh Apache supaya dilindungi dengan baik. Untuk tujuan itu, kami akan membuat direktori baru:
# mkdir /home /tecmint
6. Selepas itu kami akan menjana nama pengguna dan kata laluan kami yang akan disimpan dalam direktori itu:
# htpasswd -c/home/tecmint/webpass tecmint
Sebaik sahaja anda melaksanakan arahan ini, anda perlu memasukkan kata laluan untuk pengguna baru kami "Tecmint"
Dua kali:
Selepas itu kita perlu memastikan bahawa Apache dapat membaca "Webpass"Fail. Untuk tujuan itu, anda perlu menukar pemilikan fail itu dengan arahan berikut:
---------------- Pada Redhat/Centos Sistem Berdasarkan ---------------- # Chown Apache:/Home/Tecmint/Webpass # Chmod 640/Home/Tecmint/Webpass
---------------- Pada Debian/Ubuntu Sistem berasaskan ---------------- # Chown www-Data/Home/Tecmint/Webpass # Chmod 640/Home/Tecmint/Webpass
7. Pada masa ini pengguna dan kata laluan baru kami sudah siap. Sekarang kita perlu memberitahu Apache untuk meminta kata laluan semasa mengakses direktori sasaran kami. Untuk tujuan itu, buat fail yang dipanggil .Htaccess dalam /var/www/html:
# vi/var/www/html/.Htaccess
Tambahkan kod berikut di dalamnya:
AuthType asas authname "Akses Terhad" AuthuserFile/Home/Tecmint/Webpass Memerlukan Pengguna TecmintBuat akses terhad Apache
8. Sekarang simpan fail dan letakkan persediaan anda ke ujian. Buka penyemak imbas anda dan masukkan alamat IP atau nama domain anda di pelayar web, contohnya:
http: // ip-address
Anda harus diminta untuk nama pengguna dan kata laluan:
Pengesahan direktori terlindung kata laluan ApacheMasukkan nama pengguna dan kata laluan yang anda tetapkan untuk meneruskan ke halaman anda.
Nota tambahan
Sekiranya anda menggunakan hosting yang dikongsi, anda mungkin tidak mempunyai akses ke fail konfigurasi Apache. Walau bagaimanapun, kebanyakan syarikat hosting telah membolehkan "Allowoverride semua ” pilihan secara lalai. Ini bermaksud bahawa anda hanya perlu menjana nama pengguna dan kata laluan dan kemudian pilih direktori yang ingin anda lindungi. Ini memudahkan tugas anda dengan ketara.
Kesimpulan
Saya harap anda dapati tutorial ini berguna dan membantu anda mencapai matlamat anda. Sekiranya anda mempunyai sebarang pertanyaan atau komen, jangan ragu untuk menghantarnya di bahagian di bawah.