Membolehkan UserDir dan Kata Laluan Lindungi Direktori Web di Zentyal Webserver - Bahagian 10

Membolehkan UserDir dan Kata Laluan Lindungi Direktori Web di Zentyal Webserver - Bahagian 10

Pada persekitaran pengguna berganda seperti a Direktori Aktif Zentyal PDC Menjalankan webserver boleh membantu, jika anda ingin membenarkan setiap pengguna mempunyai laman web peribadi mereka yang boleh dihoskan di rumah mereka sendiri.

Webserver modul dihidupkan Zentyal 3.4 boleh dikonfigurasikan untuk mengaktifkan Pengguna HTML awam Dan dengan bantuan beberapa Linux Bash Skrip untuk secara dinamik menjana beberapa kandungan untuk laman web dan menghantar pengguna maklumat yang diperlukan pada log masuk ke domain.

Dayakan Direktori Lindungi Kata Laluan UserDir

Juga Apache kapal untuk masa yang lama dengan ciri lain yang berkaitan dengan kandungan keselamatan yang disampaikan dan itu Kata Laluan Lindungi Direktori Web dalam salah satu bentuk yang paling mudah hanya dengan menggunakan .Htaccess fail dan buat senarai pengguna yang diperlukan untuk mengakses sumber, malah melindungi kandungan web dari crawler enjin carian.

Keperluan

  1. Panduan pemasangan Zentyal
  2. Pasang Perkhidmatan Web (Apache) di Zentyal Server

Langkah 1: Dayakan html awam pengguna

1. Log masuk ke anda Alat Pentadbir Web PDC Zentyal menggunakan https: // zentyal_ip.

2. Menavigasi ke Modul pelayan web -> periksa Dayakan pengguna rakan sebaya public_html, memukul Ubah butang kemudian Simpan perubahan.

Dayakan html awam pengguna

3. Buka penyemak imbas dan masukkan Url memfailkan perkara berikut: http: // mydomain.com/~ your_username.

Kesalahan terlarang Apache

Seperti yang anda lihat Apache tidak mempunyai kebenaran untuk mengakses setiap direktori pengguna atau rumah pengguna indeks. Untuk membetulkan tingkah laku ini, kita mesti sediakan www-data dengan kebenaran pelaksanaan pada /rumah/$ pengguna direktori dan buat a public_html Folder di bawah Laluan Pengguna.

Untuk mempermudahkan perkara sedikit kita akan menulis a Linux Bash skrip yang mencipta public_html direktori dan membolehkan kebenaran yang betul pada semua pengguna sistem, automatik menjana laman web HTML untuk semua pengguna dengan direktori rumah yang sah dan skrip lain, kali ini Windows Bach Skrip, yang akan menghubungkannya ke GPO domain lalai supaya setiap pengguna akan diminta dengan laman web peribadinya selepas log masuk dengan kelayakan domain dari Tingkap Sistem disertai domain.

4. Untuk menyelesaikan log masuk tugas ini ke Pelayan zentyal menggunakan Dempul dengan akaun pentadbiran zentyal anda yang dibuat pada pemasangan sistem dan buat skrip pertama menggunakan editor teks kegemaran anda. Kami akan menamakannya "Pengguna-hir-penciptaan".

# Nano User-Dir-Creation

5. Tambahkan kandungan di bawah pada "Pengguna-hir-penciptaan"Skrip.

#!/bin /bash untuk saya di 'ls /home | GREP -V Samba | grep -v hilang+dijumpai '; Adakah mkdir/home/$ i/public_html ## membuat dunia boleh dibaca dan boleh dieksekusi, supaya www -data boleh mengaksesnya ## chmod -r 755/home/$ i chgrp -r www -data/home/$ i/public_html/ ## Kod seterusnya harus berada di satu baris ## echo "

Pengguna Selamat Datang $ i pada 'HostName -F'

">/rumah/$ i/public_html/indeks.html ## senarai/rumah/$ keizinan pengguna dan public_html perm pilihan ## echo "..." ls -all/home/$ i echo "..." ls -all/home/$ i/public_html selesai;

6. Simpan skrip dan menjadikannya boleh dilaksanakan kemudian jalankan dengan keistimewaan root.

# chmod +x user-hir-creation # sudo ./Pengguna-Hir-Penciptaan

7. Buka lagi penyemak imbas dan tunjuk ke arah yang sama Url seperti di atas (lihat titik 3).

Domain akses

The public_html Direktori dibuat dan fail HTML dihasilkan untuk semua pengguna jadi sekarang mereka semua memiliki laman web yang diperibadikan (ini hanyalah halaman ujian mudah tetapi bayangkan apa yang boleh anda lakukan dengan beberapa Php, Mysql atau CGI skrip).

8. Jika Zentyal 3.4 pelayan juga a Pengawal domain utama Kami boleh membuat setiap laman web pengguna dibuka secara automatik dalam penyemak imbas apabila pengguna log masuk dari tuan rumah Windows menyertai domain.

Untuk membolehkannya log masuk ke a Tingkap Sistem bergabung dengan domain dan membuat skrip batch windows bernama "public_html.kelawar"Menggunakan Notepad dengan kandungan berikut.

explorer http: // your_domain.TLD/~%Nama Pengguna%

Catatan: Sila ambil perhatian "~"Watak khas dan %nama pengguna% yang merupakan pemboleh ubah persekitaran tingkap.

Buka halaman pengguna secara automatik

9. Buka Alat Pentadbiran Web Zentyal (https: // zentyal_ip) dan pergi ke Domain -> Objek dasar kumpulan -> Dasar domain lalai -> Editor GPO.

Objek dasar kumpulan

10. Klik pada Edit, Tatal ke bawah Konfigurasi pengguna -> Tambahkan skrip log masuk baru, Layari di jalan di mana skrip anda dibuat dan dipukul TAMBAH.

Tambahkan skrip log masuk baru Konfigurasi pengguna

Tahniah! Sekarang apabila anda log masuk ke domain penyemak imbas lalai anda akan membuka laman web peribadi yang berkaitan dengan nama pengguna anda.

Langkah 2: Kata laluan melindungi direktori web

Bahagian ini memerlukan konfigurasi yang lebih maju pada modul Apache yang tidak dapat dicapai borang Antaramuka Web Zentyal tetapi hanya dari baris arahan dan mengubah suai beberapa Modul Zentyal Apache templat.

Sekiranya anda cuba mengubah suai konfigurasi Apache secara langsung seperti yang biasanya anda lakukan pada pelayan Linux semua konfigurasi yang dibuat akan hilang kerana Zentyal menggunakan beberapa borang templat yang menulis semula setiap fail konfigurasi perkhidmatan selepas reboot atau memulakan semula perkhidmatan.

Untuk benar -benar melindungi folder web menggunakan pengesahan Apache dan membuat perubahan kekal "Allowoverride"Arahan perlu diubahsuai dan"auth_basic"Modul perlu dimuatkan dan didayakan di webserver Apache.

11. Untuk membolehkan semua konfigurasi yang diperlukan log masuk tinju melalui baris arahan menggunakan Dempul pada Pelayan zentyal dengan akar akaun.

12. Dayakan "auth_basic"Dengan mengeluarkan arahan berikut dan kemudian mulakan semula perkhidmatan web zentyal.

# a2enmod auth_basic # service zentyal webserver mulakan semula

13. Selepas modul dimuatkan adalah masa untuk mengubah suai Zentyal Apache Vhost Templat terletak di "/usr/share/zentyal/stubs/webserver/"Laluan dan Persediaan"Allowoverride".

Sandaran pertama vhost.Mas fail.

# cp/usr/share/zentyal/stubs/webserver/vhost.mas/usr/share/zentyal/stubs/webserver/vhost.Mas.Bak

Kemudian buka editor, navigasi bahagian bawah pada fail dan ganti "Tiada"Dengan"Semua"Pada"Benarkan menimpa"Barisan arahan seperti di tangkapan skrin.

Dayakan Lindungi Kata Laluan

14. Setelah selesai mengedit semula Zentyal Webserver modul untuk menggunakan perubahan baru.

# Perkhidmatan Zentyal Webserver mulakan semula

Matlamat utama Allowoverride Arahan adalah untuk mengubah konfigurasi Apache secara dinamik dari fail lain yang berbeza daripada yang digunakan dalam akar Apache (/etc/apache2/) secara per-path menggunakan .htacess fail.

15. Kini sudah tiba masanya untuk membuat beberapa pengguna yang dibenarkan untuk melayari kata laluan direktori kandungan web yang dilindungi. Pertama kita perlu membuat direktori yang diletakkan di luar laluan subdomain di mana .htpasswd fail akan dihoskan dan dilindungi.

# mkdir/srv/www/htpass # chmod -r 750/srv/www/htpass # chgrp -r www -data/srv/www/htpass

16. Sekarang masanya untuk mencipta .htpasswd fail dan tambahkan beberapa pengguna menggunakan htpasswd perintah. Apabila pengguna pertama dibuat tambah "-c"(Buat) Suis Perintah untuk membuat fail dan tambahkan pengguna kemudian masukkan dan sahkan kata laluan pengguna.

# htpasswd -c/srv/www/htpass/.htpasswd first_user # htpasswd/srv/www/htpass/.htpasswd second_user
Buat kata laluan pengguna Buat kata laluan pengguna

17. Sekarang .htpasswd fail dibuat dan disulitkan menggunakan MD5 algoritma garam dan anda boleh menambah seberapa banyak pengguna yang diperlukan untuk mengakses kandungan folder web seperti yang diperlukan.

Fail HtPasswd

18. Sekarang mari kita anggap bahawa anda mahu melindungi http: // www.mydomain.com URL dari pengguna lain maka yang dibuat pada anda htpasswd fail untuk mengakses subdomain. Untuk membolehkan tingkah laku ini membuat a .Htaccess fail pada www.mydomain.com laluan sistem dan tambahkan kandungan berikut.

AuthType Basic AuthName "What Ever Message You Want" AuthBasicProvider File AuthUserFile/Path/to/To/.Fail HtPassd Dibuat memerlukan pengguna user user2 user2 user2 user

Pastikan juga .HTACCES Fail dilindungi perkataan yang boleh dibaca.

# nano/srv/www/www.mydomain.com/.htaccess # chmod 750/srv/www/www.mydomain.com/.htaccess # chgrp www-data/srv/www/www.mydomain.com/.Htaccess

Tahniah! Anda sekarang berjaya kata laluan dilindungi The www.mydomain.com Subdomain di laman web anda dan pengguna akan diminta untuk memasukkan kelayakan mereka untuk mengakses kandungan laman web.

Direktori yang dilindungi kata laluan

Juga jika anda ingin melindungi domain atau subdomain lain yang dibuat pada pelayan anda dengan kelayakan yang dibuat, cuma salin .Htaccess fail di laluan Apdomain Apache anda dan pastikan www-data telah membaca akses.

Dengan bantuan Apache Web Direcory Kata Laluan Melindungi Zentyal Weberver boleh dipalsukan dengan beberapa lapisan keselamatan tambahan untuk mendedahkan maklumat sensitif yang dipaparkan di domain anda tetapi dinasihatkan bahawa kaedah ini hanya melindungi direktori dan bukan fail dan kata laluan dihantar dengan jelas oleh pelayar jadi cuba gunakan protokol HTTPS untuk melindungi kelayakan pengguna untuk dipintas.