12.07.2015 Views

Untitled - Vitajte na stránkach www.einsty.hostujem.sk

Untitled - Vitajte na stránkach www.einsty.hostujem.sk

Untitled - Vitajte na stránkach www.einsty.hostujem.sk

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

S O F T W A R ELinuxWareAPACHE – autorizácia používate¾ovV predchádzajúcich èíslach PC REVUE bežal seriál o WWWserveri Apache (autorom bol Peter Palúch), kde bola rozobranájeho základná konfigurácia. V èísle 7/2001 som písalo konfigurácii Apache pre viac domén. Teraz <strong>na</strong>dväzujem<strong>na</strong> túto tému s ïalšou èas ou, kde opíšeme, ako obmedzovaprístup používate¾ov k jednotlivým adresárom <strong>na</strong>základe používate¾<strong>sk</strong>ého me<strong>na</strong> a hesla.Na zaèiatok predpokladajme, že všetky dokumentyukladáme do /var/<strong>www</strong>/html (tento adresár je v <strong>sk</strong>orokaždej distribúcii iný, ja mám <strong>na</strong>inštalovaný RH 7.1, ale <strong>na</strong>starých RedHat to bol <strong>na</strong>príklad /home/httpd). Tu si vytvorímepodadresár tajne, kde si uložíme nejaké súbory, kuktorým chceme povoli prístup len niektorým používate¾om,ak sa preukážu správnym menom a heslom. Terazsa presunieme do konfiguraèného súboru httpd.conf, kdezapíšeme <strong>na</strong>sledujúce riadky:Options Indexes IncludesAllowOverride AuthConfigorder allow,denyallow from allDirektívou AllowOverride AuthConfig si zaistíme, že v konfiguraènomsúbore .htaccess (meno sa <strong>sk</strong>utoène zaèí<strong>na</strong>bodkou), ktorý vytvoríme v <strong>na</strong>šom adresári tajne, budememôc obmedzova prístup. Keby sme nepoužili súbor.htaccess, môžeme postup uvedený ïalej aplikova aj priamov súbore httpd.conf. Má to však tú nevýhodu, že prikaždej zmene httpd.conf sa musí reštartova celý Apache,kým pri zmene .htaccess sa táto zme<strong>na</strong> prejaví hneï.Obsah .htaccess bude <strong>na</strong>sledujúci:require user miroAuthType BasicAuthName TajneAuthUserFile /var/<strong>www</strong>/usersAuthGroupFile /var/<strong>www</strong>/groupsDirektíva require môže ma dve hodnoty: user a group.Hodnota user povolí prístup len uvedeným používate¾om(v <strong>na</strong>šom prípade používate¾ovi miro, keby ste ich chceliuvies viac, oddelíte ich medzerou). Ešte poz<strong>na</strong>menám, žekeby niekto aj vedel meno a heslo, ale nebol by uvedenýv require, systém ho ïalej nepustí. Ak máme ve¾a používate¾ov,vytvoríme <strong>sk</strong>upiny, kde týchto používate¾ovzaradíme a použijeme hodnotu group spolu s názvompríslušnej <strong>sk</strong>upiny.Direktíva AuthType urèuje typ autorizácie, môže byBasic alebo Digest, my použijeme prvú. Typ Digest po<strong>sk</strong>ytujetrochu širšie možnosti (<strong>na</strong>pr. èas, za ktorý autorizáciastratí platnos ), ale tu sa tomu nebudeme venova .Direktíva AuthName <strong>na</strong>stavuje meno autorizaènejoblasti (ak sa <strong>sk</strong>ladá z viacerých slov, použite apostrofy).Autorizaèná oblas je jeden alebo viac adresárov s rov<strong>na</strong>kýmmenom, kde platí <strong>na</strong>še zadané používate¾<strong>sk</strong>é menoa heslo. Ako som spomí<strong>na</strong>l, browser si pamätá toto menoa heslo a posiela ho pri každej požiadavke klienta <strong>na</strong> server.Ak vstúpime do inej autorizaènej oblasti (zmení saautorizaèná oblas ), budeme musie zada znova používate¾<strong>sk</strong>émeno a heslo (tu poz<strong>na</strong>menám, že v Netscape, ajkeï sa zmenilo meno tejto oblasti, browser automaticky<strong>sk</strong>úsil staré používate¾<strong>sk</strong>é meno a heslo, hoci by si malpýta nové a až potom posla požiadavku <strong>na</strong> server).Direktíva AuthUserFile <strong>na</strong>stavuje meno súboru, kdebudú uložené používate¾<strong>sk</strong>é mená a heslá.A <strong>na</strong>koniec direktíva AuthGroupFile <strong>na</strong>stavuje, ktorípoužívatelia budú patri do ktorej <strong>sk</strong>upiny (toto si vysvetlímene<strong>sk</strong>ôr <strong>na</strong> príkladoch).Vytvorme si teraz súbor s heslami pomocou príkazuhtpasswd:htpasswd –c /var/<strong>www</strong>/users mirohtpasswd /var/<strong>www</strong>/users adamhtpasswd /var/<strong>www</strong>/users enemyParameter -c zaistí vytvorenie súboru /var/<strong>www</strong>/users, akpredtým neexistoval. Ïalej vytvoríme súbor /var/<strong>www</strong>/groups v tomto tvare:zamest<strong>na</strong>nci: miro adamKonfiguráciu by sme mali za sebou, reštartujme Apache,aby sa uplatnili zmeny v httpd.conf. Keï teraz <strong>na</strong>smerujemebrowser <strong>na</strong> http://<strong>www</strong>.server.<strong>sk</strong>/tajne, objaví sa hlásenie,že máme zada meno a heslo. Takže zadajme meno„miro“ a heslo také, aké ste si vymysleli pri tvorbe/var/<strong>www</strong>/users. Ak ste správne postupovali, mal by savám zobrazi obsah adresára. Zakaždým, keï budetechcie otestova nové <strong>na</strong>stavenie, musíte nielen urobizmeny v .htaccess, ale aj ukonèi a spusti browser, leboväèši<strong>na</strong> browserov si ukladá do pamäte meno a heslo, abypoužívate¾ nebol stále ob ažovaný požiadavkami <strong>na</strong> tietoúdaje. Teraz vy<strong>sk</strong>úšajte zada meno „adam“ a jeho heslo.Ale èo to?! Server nám prístup nepovolil, lebo direktívourequire v súbore .htaccess sme povedali, že prístup má lenmiro, ale adam nie. Takže require zmeòte takto:require user miro adamTeraz postupne vy<strong>sk</strong>úšajte prístup pre mira a adama(zakaždým ukonèite a spustite browser, lebo teraz chcemepouži iné používate¾<strong>sk</strong>é meno a heslo), ale keï tentorazzadáte používate¾a „enemy“, prístup bude, pochopite¾ne,zamietnutý. Ïalej vy<strong>sk</strong>úšajte zmeni require takto:require group zamest<strong>na</strong>nciTýmto si u¾ahèíme prácu, lebo nemusíme prácne vypisovapoužívate¾ov, ale staèí zada meno <strong>sk</strong>upiny, do ktorej patria.Už sme uviedli súbor /var/<strong>www</strong>/groups, ktorý do tejto<strong>sk</strong>upiny zaradil používate¾ov „miro“ a „adam“, alepoužívate¾ „enemy“ tam nepatrí, takže prístup mu budezamietnutý. Ešte poz<strong>na</strong>menám, že ak použijete <strong>na</strong>sledujúciriadokrequire valid-usernemusíte vymenováva používate¾ov ani <strong>sk</strong>upiny, prístupbude ma každý, kto sa preukáže platným menom a heslom.Vy<strong>sk</strong>úšajte si trochu zaexperimentova a urèite vám topôjde. Ešte jed<strong>na</strong> poznámka: súbory /var/<strong>www</strong>/usersa5/var/<strong>www</strong>/groups by mali by umiestnené tak, aby sak nim nedalo normálne pristupova èi už cez web, alebocez príkazový riadok. Keby ste ich umiestnili <strong>na</strong>pr. do adresára/var/<strong>www</strong>/html/tajne, používatelia by k nim mali prístupcez browser a ¾ahko by ste mohli takto server ohrozi. Keby ste mali akéko¾vek otázky alebo námety, pošlitemi ich <strong>na</strong> dulik@rocketmail.com, rád vám <strong>na</strong> ne odpoviem,prípadne poradím.Miroslav Ïulík ml.88 PC REVUE 10/2001

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!