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
- Zentyal telepítési útmutató
- 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.