UserDir- ja salasanasuojausverkkohakemistojen ottaminen käyttöön Zentyal Webserverissä - Osa 10


Usean käyttäjän ympäristössä, kuten Zentyal PDC Active Directoryssa, verkkopalvelin voi olla suureksi avuksi, jos haluat antaa jokaiselle käyttäjälle henkilökohtaisen verkkosivun, jota voidaan isännöidä heidän omissa kodeissaan.

Webserver-moduuli Zentyal 3.4:ssä voidaan määrittää aktivoimaan Users Public HTML ja joidenkin Linux BASH -skriptien avulla luoda dynaamisesti sisältöä verkkosivulle ja lähettää käyttäjille tarvittavat tiedot kirjautuessaan verkkotunnukseen.

Myös Apache toimitetaan pitkään toisella suojattuun sisältöön liittyvällä ominaisuudella, joka on verkkohakemiston salasanasuojaus yhdessä yksinkertaisimmista muodoista vain käyttämällä .htaccess-tiedostoja ja luo luettelo käyttäjistä, joita tarvitaan resurssien käyttämiseen, ja jopa suojaa verkkosisältöä hakukoneiden indeksoijalta.

Vaatimukset

  1. Zentyalin asennusopas
  2. Asenna Web Services (Apache) Zentyal Serveriin

Vaihe 1: Ota User Public Html käyttöön

1. Kirjaudu Zentyal PDC Web Admin Tool -työkaluun käyttämällä https://zentyal_ip.

2. Siirry kohtaan Web Server Module -> valitse Ota vertaiskäyttäjä public_html, paina Muuta-painiketta ja Tallenna muutokset .

3. Avaa selain ja kirjoita URL-osoitteeseen seuraava: http://omaverkkotunnus.com/~your_username.

Kuten näet, Apachella ei ole käyttöoikeuksia käyttäjähakemistoon tai hakemistokäyttäjän kotiin. Korjataksemme tämän toiminnan meidän on annettava www-datalle suoritusoikeudet hakemistoon /home/$USER ja luotava public_html-kansio käyttäjien polkuun.

Yksinkertaistaaksemme asioita aiomme kirjoittaa Linux Bash-komentosarjan, joka luo public_html-hakemiston ja mahdollistaa oikeat käyttöoikeudet kaikille järjestelmän käyttäjille, automaattisesti luo html-verkkosivut kaikille käyttäjiä, joilla on kelvollinen kotihakemisto ja toinen komentosarja, tällä kertaa Windows Bach -komentosarja, joka linkittää sen oletusverkkotunnuksen GPO:hen, jotta jokaiselle käyttäjälle kysytään henkilökohtaista verkkosivuaan kirjautumisen jälkeen verkkotunnuksen tunnistetiedoilla. b>Windows-järjestelmät liitetty toimialueeseen.

4. Suorittaaksesi tämän tehtävän kirjaudu sisään Zentyal Serveriin käyttämällä Puttya Zentyal-järjestelmänvalvojatililläsi, joka on luotu järjestelmän asennuksen yhteydessä ja luo ensimmäinen komentosarja suosikkitekstieditorillasi. Annamme sille nimeksi "user-dir-creation".

nano user-dir-creation

5. Lisää alla oleva sisältö "user-dir-creation" -skriptiin.

#!/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. Tallenna komentosarja ja tee siitä suoritettava ja suorita se sitten pääkäyttäjän oikeuksin.

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

7. Avaa uudelleen selain ja osoita se samaan URL-osoitteeseen kuin yllä (katso kohta 3 ).

Hakemisto public_html luotiin ja html-tiedosto luotiin kaikille käyttäjille, joten nyt he kaikki omistavat henkilökohtaisen verkkosivun ( Tämä on vain yksinkertainen testisivu, mutta kuvittele mitä voit tehdä jollain PHP:llä -, MySQL- tai CGI-komentosarjat ).

8. Jos Zentyal 3.4 -palvelin on myös ensisijainen verkkotunnuksen ohjain, voimme määrittää kunkin käyttäjän verkkosivun avautumaan automaattisesti selaimessa, kun käyttäjät kirjautuvat sisään toimialueeseen liittyneiltä Windows-isänniltä.

Kirjautuminen Windows-järjestelmään, joka on liitetty verkkotunnukseen, ja luoda public_html.bat-niminen Windows-komentosarja käyttämällä Muistiolehteä seuraavalla sisällöllä.

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

Huomaa: Huomaa "~"-erikoismerkki ja %username%, joka on Windows-ympäristömuuttuja.

9. Avaa Zentyal Web Administration Tool (https://zentyal_IP) ja siirry kohtaan Domain -> Group Policy Objects -> Default Verkkotunnuskäytäntö -> GPO-editori.

10. Napsauta Muokkaa, vieritä alas kohtaan Käyttäjän määritykset –> Lisää uusi kirjautumisskripti, Selaa polkua, jossa komentosarja luotiin ja paina < b>LISÄÄ.

Onnittelut! Nyt kun seuraavan kerran kirjaudut verkkotunnukseen, oletusselaimesi avaa käyttäjätunnukseesi liittyvän henkilökohtaisen verkkosivun.

Vaihe 2: Suojaa salasanalla Web-hakemisto

Tämä osa vaatii kehittyneempiä määrityksiä Apache-moduulissa, jota ei voida saavuttaa Zentyal-verkkoliittymästä, vaan vain komentoriviltä ja muokkaamalla jotakin Zentyal Apache -moduulin mallia.

Jos yrität muokata Apache-kokoonpanoa suoraan, kuten tavallisesti tekisit Linux-palvelimella, kaikki tehdyt asetukset menetetään, koska Zentyal käyttää joitain mallilomakkeita, jotka kirjoittavat jokaisen palvelun määritystiedostot uudelleen uudelleenkäynnistyksen tai palvelun uudelleenkäynnistyksen jälkeen.

Verkkokansion suojaaminen Apache-todennusta käyttämällä ja muutosten tekeminen pysyviksi AllowOverride-direktiiviä on muutettava ja auth_basic-moduuli on ladattava ja otettava käyttöön Apache-verkkopalvelimessa. .

11. Ota käyttöön kaikki tarvittavat kokoonpanot kirjautumalla sisään komentorivin kautta käyttämällä Puttya Zentyal-palvelimella root-tilillä.

12. Ota "auth_basic" käyttöön antamalla seuraava komento ja käynnistä sitten zentyal-verkkopalvelu uudelleen.

a2enmod auth_basic
service zentyal webserver restart

13. Kun moduuli on ladattu, on aika muokata /usr/share/zentyal/stubs/webserver/-polussa olevaa Zentyal Apache Vhost -mallia ja asennusta " >AllowOverride".

Ensimmäinen varmuuskopio vhost.mas-tiedostosta.

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

Avaa sitten editori, siirry tiedoston alaosaan ja korvaa "Ei mitään" sanalla "Kaikki" Salli ohitus -ohjerivillä kuten kuvakaappauksessa. .

14. Kun olet muokannut, käynnistä Zentyal Webserver -moduuli uudelleen ottaaksesi käyttöön uudet muutokset.

service zentyal webserver restart

AllowOverride-käskyn päätavoite on muuttaa dynaamisesti Apache-määrityksiä muista tiedostoista, jotka poikkeavat Apache-juuressa käytetyistä tiedostoista (/etc/apache2/) polkukohtaisesti käyttämällä .htacess-tiedosto.

15. Nyt on aika luoda käyttäjiä, jotka voivat selata verkkosisältöhakemistoa salasanalla suojattuna. Ensin meidän on luotava aliverkkotunnuksen polun ulkopuolelle sijoitettu hakemisto, jossa .htpasswd-tiedostoa isännöidään ja suojataan.

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

16. Nyt on aika luoda .htpasswd-tiedosto ja lisätä käyttäjiä htpasswd-komennolla. Kun ensimmäinen käyttäjä on luotu, lisää "–c" (luo) -komentokytkin luodaksesi tiedoston ja lisää käyttäjä. Anna ja vahvista käyttäjän salasana.

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

17. Nyt .htpasswd-tiedosto luodaan ja salataan MD5-salgoritmilla, ja voit lisätä niin monta käyttäjää kuin tarvitaan verkkokansion sisällön käyttämiseen.

18. Oletetaan nyt, että haluat suojata http://www.mydomain.com URL-osoitteen muilta käyttäjiltä ja sitten niiltä, jotka on luotu htpasswd-tiedostoosi päästäksesi aliverkkotunnukseen. Ota tämä käyttöön luomalla .htaccess-tiedosto www.mydomain.com-järjestelmäpolulle ja lisäämällä seuraava sisältö.

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

Varmista myös, että .htacces-tiedosto on sanasuojattu.

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

Onnittelut! Olet nyt onnistuneesti suojannut salasanalla www.mydomain.com-aliverkkotunnuksen verkkosivustollasi, ja käyttäjiä pyydetään antamaan valtuustietonsa verkkosivustosi sisällön käyttämiseksi.

Jos haluat myös suojata muita palvelimellesi luotuja verkkotunnuksia tai aliverkkotunnuksia jo luoduilla tunnistetiedoilla, kopioi .htaccess-tiedosto aliverkkotunnuksesi Apache-polulle ja varmista, että www-data on lukuoikeus.

Apache Web Directory Password Protectin avulla Zentyal Weberver voidaan väärentää ylimääräisellä suojakerroksella, joka paljastaa verkkotunnuksillasi lähetetyt arkaluontoiset tiedot, mutta huomaa, että tämä menetelmä suojaa vain hakemistoja, ei tiedostoja ja salasanoja siirretä. Selaimella selväksi, joten yritä käyttää HTTPS-protokollaa suojataksesi käyttäjän tunnistetiedot siepatukselta.