Weboldal keresés

UserDir és Password Protect webkönyvtárak engedélyezése a Zentyal webszerveren – 10. rész


Többfelhasználós környezetben, mint például a Zentyal PDC Active Directory, egy webszerver nagy segítséget jelenthet, ha minden felhasználó számára lehetővé kívánja tenni a személyes weboldalát, amelyet saját otthonukban tárolhatnak.

A Zentyal 3.4 Webszerver modulja beállítható úgy, hogy aktiválja a felhasználók nyilvános HTML-jét és néhány Linux BASH szkript segítségével hogy dinamikusan generáljon bizonyos tartalmat a weboldalhoz, és továbbítsa a felhasználóknak a domainbe való bejelentkezéskor szükséges információkat.

Ezenkívül az Apache egy másik, a biztonsággal átadott tartalomhoz kapcsolódó funkcióval is rendelkezik, amely a webkönyvtár jelszavas védelme az egyik legegyszerűbb formában, pusztán a használatával. .htaccess fájlokat, és létrehozza az erőforrásokhoz való hozzáféréshez szükséges felhasználók listáját, és még a webes tartalmakat is megvédi a keresőmotorok feltérképező robotjaitól.

Követelmények

  1. Zentyal telepítési útmutató
  2. Telepítse a Web Services (Apache) szolgáltatást a Zentyal Serverre

1. lépés: Engedélyezze a felhasználói nyilvános HTML-t

1. Jelentkezzen be Zentyal PDC Web Admin Tool eszközébe a https://zentyal_ip használatával.

2. Lépjen a Webszerver modul elemre -> jelölje be a Pider user public_html engedélyezése lehetőséget, nyomja meg a Módosítás gombot, majd a Mentés módosításokat .

3. Nyisson meg egy böngészőt, és írja be az URL-be a következőt: http://mydomain.com/~your_username.

Amint láthatja, az Apache-nak nincs engedélye a felhasználói címtáronkénti vagy indexfelhasználói otthonhoz való hozzáféréshez. Ennek a viselkedésnek a kijavításához a www-data számára végrehajtási engedélyeket kell biztosítanunk a /home/$USER könyvtárban, és létre kell hoznunk egy public_html mappát a felhasználói elérési út alatt.

A dolgok egyszerűsítése érdekében egy Linux Bash szkriptet fogunk írni, amely létrehozza a public_html könyvtárat, és lehetővé teszi a megfelelő jogosultságokat minden rendszerfelhasználó számára, automatikusan létrehozza a html weboldalakat minden számára. felhasználók érvényes kezdőkönyvtárral és egy másik szkripttel, ezúttal egy Windows Bach szkripttel, amely összekapcsolja azt az alapértelmezett tartományi csoportházirend-objektumhoz, így minden felhasználónak megjelenik a személyes weboldala, miután bejelentkezett a következő domain hitelesítő adataival. b>Windows rendszerek csatlakoztak a tartományhoz.

4. A feladat elvégzéséhez jelentkezzen be a Zentyal szerverre a Putty segítségével a rendszertelepítéskor létrehozott Zentyal rendszergazdai fiókjával, és hozza létre az első szkriptet kedvenc szövegszerkesztőjével. A „felhasználói könyvtár létrehozása” nevet kapjuk.

nano user-dir-creation

5. Adja hozzá az alábbi tartalmat a „user-dir-creation” szkripthez.

#!/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. Mentse el a szkriptet és tegye végrehajthatóvá, majd futtassa root jogosultságokkal.

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

7. Nyisson meg újra egy böngészőt, és mutasson rá ugyanarra az URL-re, mint fent (lásd a 3. pontot).

Létrehozták a public_html könyvtárat, és létrehoztak egy html fájlt minden felhasználó számára, így most mindegyiküknek van egy személyre szabott weboldala ( Ez csak egy egyszerű tesztoldal, de képzeld el, mit tehetsz néhány PHP-vel , MySQL vagy CGI szkriptek ).

8. Ha a Zentyal 3.4 Server egyben Elsődleges tartományvezérlő is, akkor felhasználónként beállíthatjuk, hogy a weboldal automatikusan megnyíljon a böngészőben, amikor a felhasználók bejelentkeznek a tartományba csatlakozott Windows gazdagépről.

A tartományhoz csatlakozott Windows rendszerbe való bejelentkezéshez, és a következő tartalommal rendelkező Jegyzettömb segítségével hozzon létre egy „public_html.bat” nevű Windows kötegelt szkriptet.

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

Megjegyzés: Vegye figyelembe a „~” speciális karaktert és a %username%-t, amely egy Windows környezeti változó.

9. Nyissa meg a Zentyal Web Adminisztrációs eszközt (https://zentyal_IP), és lépjen a Domain -> Group Policy Objects -> Default Domainházirend -> GPO-szerkesztő.

10. Kattintson a Szerkesztés lehetőségre, görgessen le a Felhasználói konfiguráció –> Új bejelentkezési szkript hozzáadása részhez, tallózzon a szkript létrehozásának elérési útján, és nyomja meg a < b>HOZZÁADÁS.

Gratulálunk! Most, amikor legközelebb bejelentkezik a domainbe, alapértelmezett böngészője megnyílik egy, a felhasználónevéhez kapcsolódó, személyre szabott weboldal.

2. lépés: Jelszavas védelme webcímtár

Ez a rész fejlettebb konfigurálást igényel az Apache modulon, ami nem érhető el a Zentyal webes felületről, hanem csak parancssorból és néhány Zentyal Apache modul sablon módosításával.

Ha megpróbálja közvetlenül módosítani az Apache konfigurációt, mint általában egy Linux szerveren, az összes konfiguráció elveszik, mert a Zentyal olyan sablonokat használ, amelyek újraindítás vagy szolgáltatás újraindítása után átírják az egyes szolgáltatáskonfigurációs fájlokat.

Egy webmappa Apache hitelesítéssel történő tényleges védelméhez és a változtatások véglegessé tételéhez módosítani kell az „AllowOverride” direktívát, és be kell tölteni és engedélyezni kell az „auth_basic” modult az Apache webszerveren. .

11. Az összes szükséges konfiguráció engedélyezéséhez először jelentkezzen be a parancssoron keresztül a Putty használatával a Zentyal szerveren root fiókkal.

12. Engedélyezze az „auth_basic” parancsot a következő parancs kiadásával, majd indítsa újra a zentyal webszolgáltatást.

a2enmod auth_basic
service zentyal webserver restart

13. A modul betöltése után ideje módosítani a „/usr/share/zentyal/stubs/webserver/” útvonalon található Zentyal Apache Vhost sablont és a „ beállítást >AllowOverride“.

Az első vhost.mas fájl biztonsági mentése.

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

Ezután nyisson meg egy szerkesztőt, navigáljon a fájl aljára, és cserélje ki a „Nincs” szöveget „Mind”-re az „Felülbírálás engedélyezése” direktíva sorban, mint a képernyőképen. .

14. Miután végzett a szerkesztéssel, indítsa újra a Zentyal Webserver modult az új módosítások alkalmazásához.

service zentyal webserver restart

Az AllowOverride direktíva fő célja az Apache konfigurációinak dinamikus megváltoztatása az Apache gyökérben használtaktól eltérő fájlokból (/etc/apache2/), útvonalonkénti alapon. .htacess fájl.

15. Most itt az ideje létrehozni néhány felhasználót, akik jelszóval védett webtartalom-katalógusban böngészhetnek. Először létre kell hoznunk egy aldomain elérési útvonalán kívül elhelyezett könyvtárat, ahol a .htpasswd fájl tárolva lesz és védve lesz.

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

16. Most itt az ideje létrehozni a .htpasswd fájlt, és hozzáadni néhány felhasználót a htpasswd paranccsal. Az első felhasználó létrehozásakor adja hozzá a „–c ” (létrehozás) parancskapcsolót a fájl létrehozásához és a felhasználó hozzáadásához, majd adja meg és erősítse meg a felhasználói jelszót.

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

17. Most a .htpasswd fájl létrejön és titkosítva van az MD5 salt algoritmussal, és tetszőleges számú felhasználót adhat hozzá a webmappa tartalmának eléréséhez.

18. Most tegyük fel, hogy meg akarja védeni a http://www.mydomain.com URL-t a többi felhasználótól, majd a htpasswd fájlban létrehozott felhasználóktól az aldomain eléréséhez. A viselkedés engedélyezéséhez hozzon létre egy .htaccess fájlt a www.mydomain.com rendszerútvonalon, és adja hozzá a következő tartalmat.

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

Győződjön meg arról is, hogy a .htacces fájl szó olvasható-e.

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

Gratulálunk! Sikeresen jelszóval védett a www.mydomain.com aldomaint webhelyén, és a felhasználóknak meg kell adniuk hitelesítési adataikat a webhely tartalmához való hozzáféréshez.

Ha a szerverén létrehozott más domaineket vagy aldomaineket is meg akar védeni a már létrehozott hitelesítő adatokkal, egyszerűen másolja ki a .htaccess fájlt az aldomain Apache elérési útjára, és ellenőrizze, hogy a www-data > olvasási jogosultsággal rendelkezik.

Az Apache Web Directory Password Protect segítségével a Zentyal Weberver további biztonsági réteggel hamisítható, hogy felfedje a domainjein közzétett érzékeny információkat, de vegye figyelembe, hogy ez a módszer csak a könyvtárakat védi, a fájlok és jelszavak továbbítása nem történik meg. böngésző által egyértelmű, ezért próbálja meg a HTTPS protokollt használni a felhasználói hitelesítő adatok védelmére az elfogás miatt.