Web direktoriju iespējošana UserDir un Password Protect Web direktorijās - 10. daļa


Vairāku lietotāju vidē, piemēram, Zentyal PDC Active Directory , izmantojot tīmekļa serveri, var būt liela palīdzība, ja vēlaties ļaut katram lietotājam izmantot savu personīgo vietni, kuru var mitināt savās mājās.

Moduli Webserver vietnē Zentyal 3.4 var konfigurēt, lai aktivizētu Lietotāju publisko HTML un ar dažu Linux BASH skriptu palīdzību. dinamiski ģenerēt kādu tīmekļa vietnes saturu un pārsūtīt lietotājiem nepieciešamo informāciju par pieteikšanos uz domēnu.

Arī Apache ilgu laiku tiek piegādāts ar citu funkciju, kas saistīta ar nodrošināto drošību un kas ir aizsargāt tīmekļa direktoriju ar paroli vienā no vienkāršākajām formām, vienkārši izmantojot .htaccess faili un izveidojiet lietotāju sarakstu, kas nepieciešami, lai piekļūtu resursiem, pat aizsargā tīmekļa saturu no meklētājprogrammu rāpuļprogrammām.

  1. Zentyal instalēšanas rokasgrāmata
  2. Instalējiet Web Services (Apache) Zentyal Server

1. darbība: iespējojiet lietotāja publisko HTML

1. Piesakieties savā Zentyal PDC Web Admin Tool , izmantojot https:/zentyal_ip .

2. Pārejiet uz Tīmekļa servera modulis -> pārbaudiet Iespējot vienaudžu lietotāju public_html , nospiediet pogu Mainīt un pēc tam Saglabāt izmaiņas .

3. Atveriet pārlūkprogrammu un ievadiet URL , kas ievadīts šādi: http://mansdomens.com/~jūsu_vārds .

Kā redzat, Apache nav atļauju piekļūt katram lietotāja direktorijam vai rādītāja lietotāja vietnei. Lai labotu šo darbību, mums jānodrošina www-data ar izpildes atļaujām direktorijā /home/$USER un jāizveido public_html mape zem lietotāju ceļa.

Lai kaut ko nedaudz vienkāršotu, mēs rakstīsim skriptu Linux Bash , kas izveido direktoriju public_html un ļauj pareizas atļaujas visiem sistēmas lietotājiem, automātiski ģenerē html tīmekļa lapas visiem lietotāji ar derīgu mājas direktoriju un citu skriptu, šoreiz Windows Bach skriptu, kas to saistīs ar noklusējuma domēna GPO, lai katram lietotājam pēc pieteikšanās ar domēna akreditācijas datiem no Windows sistēmas ir pievienotas domēnam.

4. Lai pabeigtu šo uzdevumu, piesakieties Zentyal Server , izmantojot Putty ar savu Zentyal administratīvo kontu, kas izveidots sistēmas instalēšanas laikā, un izveidojiet pirmo skriptu, izmantojot iecienīto teksta redaktoru. Mēs to nosauksim par “ user-dir-creation ”.

# nano user-dir-creation

5. Pievienojiet zemāk redzamo saturu skriptam “ user-dir-creation ”.

#!/bin/bash

for i in `ls /home | grep -v samba| grep -v lost+found`;  do

        mkdir /home/$i/public_html

## Make world readable and executable, so that www-data can access it  ##

        chmod -R 755 /home/$i

      chgrp -R www-data /home/$i/public_html/

## Next code should be on a single line ##

echo "<html><body style='background-color:#2DC612'><div align='center'><p><H1 style='color:#fff'>Welcome user $i on <a style='color:#fff' href='https://mydomain.com'>`hostname -f` </a></H1></p></div></body></html>" > /home/$i/public_html/index.html

## List /home/$USER permissions and public_html perm optional ##

echo "......................."

ls -all /home/$i

echo "......................"

ls -all /home/$i/public_html

done;

6. Saglabājiet skriptu un padariet to izpildāmu, pēc tam palaidiet to ar root tiesībām.

# chmod +x user-dir-creation
# sudo ./user-dir-creation

7. Atkal atveriet pārlūkprogrammu un norādiet uz to pašu URL kā iepriekš (sk. 3. punktu).

Tika izveidots katalogs public_html un visiem lietotājiem tika ģenerēts html fails, tāpēc tagad viņiem visiem ir personalizēta tīmekļa lapa (šī ir tikai vienkārša testa lapa, bet iedomājieties, ko jūs varat darīt ar kādu PHP , MySQL vai CGI skripti).

8. Ja Zentyal 3.4 serveris ir arī primārā domēna kontrolieris , mēs varam iestatīt, lai katra lietotāja tīmekļa lapa tiktu automātiski atvērta pārlūkprogrammā, kad lietotāji pieteiktos no Windows saimniekiem pievienotos domēnam.

Lai iespējotu pieteikšanos Windows sistēmā, kas pievienota domēnam, un izveidojiet Windows pakešpaketes skriptu “ public_html.bat ”, izmantojot Notepad ar šādu saturu.

explorer http://your_domain.tld/~%username%

Piezīme: Lūdzu, ņemiet vērā īpašo rakstzīmi “ ~ ” un % username% , kas ir Windows vides mainīgais.

9. Atveriet Zentyal Web Administration Tool (https:/zentyal_IP) un dodieties uz Domēns -> Grupas politikas objekti -> Noklusējums Domēna politika -> GPO redaktors .

10. Noklikšķiniet uz Rediģēt , ritiniet uz leju līdz Lietotāja konfigurācija -> Pievienot jaunu pieteikšanās skriptu , pārlūkojiet ceļu, kur tika izveidots skripts, un nospiediet < b> PIEVIENOT .

Apsveicam ! Nākamreiz, kad piesakāties domēnā, noklusējuma pārlūks atvērs personalizētu tīmekļa lapu, kas saistīta ar jūsu lietotājvārdu.

2. darbība: aizsargājiet tīmekļa direktoriju ar paroli

Šai daļai nepieciešama sarežģītāka Apache moduļa konfigurēšana, kuru nevar panākt no Zentyal tīmekļa saskarnes , bet tikai no komandrindas un modificējot kādu veidni Zentyal Apache modulis .

Ja mēģināt tieši modificēt Apache konfigurāciju, kā parasti darāt Linux serverī, visas veiktās konfigurācijas tiks zaudētas, jo Zentyal izmanto dažas veidņu veidlapas, kas pārraksta katru pakalpojuma konfigurācijas failu pēc restartēšanas vai restartēšanas.

Lai faktiski aizsargātu tīmekļa mapi, izmantojot Apache autentifikāciju un veiktu izmaiņas pastāvīgas, ir jāmaina direktīva “ AllowOverride ”, un Apache tīmekļa serverī jāielādē un jāaktivizē “ auth_basic ” modulis. .

11. Lai iespējotu visas nepieciešamās konfigurācijas, vispirms ievadiet komandu, izmantojot komandrindu, izmantojot Putty uz Zentyal Server ar root kontu.

12. Iespējojiet “ auth_basic ”, izsniedzot šādu komandu, un pēc tam restartējiet tīmekļa pakalpojumu Zentyal.

# a2enmod auth_basic
# service zentyal webserver restart

13. Pēc moduļa ielādes ir laiks modificēt veidni Zentyal Apache Vhost , kas atrodas ceļā “/usr/share/zentyal/stubs/webserver/”, un iestatīt “ AllowOverride “.

Pirmais dublējuma vhost.mas fails.

# cp /usr/share/zentyal/stubs/webserver/vhost.mas  /usr/share/zentyal/stubs/webserver/vhost.mas.bak

Pēc tam atveriet redaktoru, pārvietojieties faila apakšdaļā un aizstājiet “ Neviens ” ar “ Visi ” direktīvā “Atļaut ignorēt ”, piemēram, ekrānuzņēmumā. .

14. Pēc rediģēšanas restartējiet moduli Zentyal Webserver , lai lietotu jaunas izmaiņas.

# service zentyal webserver restart

Galvenais direktīvas AllowOverride mērķis ir dinamiski mainīt Apache konfigurācijas no citiem failiem, kas atšķiras no Apache saknē izmantotajiem failiem (/etc/apache2/) katrā ceļā, izmantojot .htacess fails.

15. Tagad ir pienācis laiks izveidot dažus lietotājus, kuriem ir atļauts pārlūkot aizsargātu tīmekļa satura direktoriju. Vispirms mums jāizveido direktorijs, kas atrodas ārpus apakšdomēna ceļa, kur tiks mitināts un aizsargāts .htpasswd fails.

# mkdir /srv/www/htpass
# chmod –R 750 /srv/www/htpass
# chgrp –R www-data /srv/www/htpass

16. Tagad ir pienācis laiks izveidot failu .htpasswd un pievienot dažus lietotājus, izmantojot komandu htpasswd . Kad ir izveidots pirmais lietotājs, pievienojiet komandas slēdzi –c (izveidot), lai izveidotu failu un pievienotu lietotāju, pēc tam ievadiet un apstipriniet lietotāja paroli.

# htpasswd –c /srv/www/htpass/.htpasswd first_user
# htpasswd /srv/www/htpass/.htpasswd second_user

17. Tagad fails .htpasswd ir izveidots un šifrēts, izmantojot sāls algoritmu MD5 , un jūs varat pievienot tik daudz lietotāju, cik nepieciešams, lai piekļūtu tīmekļa mapes saturam.

18. Tagad pieņemsim, ka vēlaties aizsargāt URL vietni http://www.mydomain.com no citiem lietotājiem, kas ir izveidoti jūsu failā htpasswd , lai piekļūtu apakšdomēnam. Lai iespējotu šo darbību, izveidojiet .htaccess failu www.mydomain.com sistēmas ceļā un pievienojiet šo saturu.

AuthType basic
AuthName “What ever message you want”
AuthBasicProvider file
AuthUserFile  /path/to/.htpassd file created
Require user  your_user1 user2 userN

Pārliecinieties arī, vai fails .htacces ir aizsargāts ar vārdiem lasāmu tekstu.

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

Apsveicam ! Tagad esat veiksmīgi aizsargājis ar paroli apakšdomēnu www.mydomain.com savā vietnē, un lietotājiem tiks piedāvāts ievadīt akreditācijas datus, lai piekļūtu vietnes saturam.

Arī tad, ja vēlaties aizsargāt citus jūsu serverī izveidotos domēnus vai apakšdomēnus ar jau izveidotiem akreditācijas datiem, vienkārši nokopējiet failu .htaccess apakšdomēna Apache ceļā un pārliecinieties, vai www-data ir piekļuve lasīšanai.

Ar Apache Web Direcory Password Protect palīdzību Zentyal Weberver var tikt izveidots ar papildu drošības slāni, lai atklātu slepenu informāciju, kas ievietota jūsu domēnos, taču jābrīdina, ka šī metode aizsargā tikai direktorijus, bet netiek pārsūtīti faili un paroles. skaidri pārlūkprogrammā, tāpēc mēģiniet izmantot HTTPS protokolu, lai aizsargātu lietotāju akreditācijas datus, lai tos pārtvertu.