SIKS – Vježba 2 – kontrola pristupa na poslužiteljima

SIKS / Predavanja / Vježbe

Kontrola pristupa na poslužiteljima pomoću .htaccess datoteke

Datoteka .htaccess je konfiguracijska datoteka koja se koristi u Apache web poslužiteljima za konfiguriranje i upravljanje web lokacijama. 

Ova datoteka se koristi za definiranje pravila za upravljanje pristupom web stranicama, promjene izgleda i ponašanja web stranica, i mnoge druge postavke koje se odnose na web lokaciju.

U .htaccess datoteci mogu se definirati različita pravila poput:

  • Upravljanje pristupom web stranicama na temelju IP adresa, korisničkih imena i lozinki
  • Preusmjeravanje korisnika na druge web stranice ili stranice unutar iste web stranice
  • Konfiguracija postavki za kompresiju i caching datoteka
  • Definiranje pravila za prikazivanje pogrešaka, poput 404 pogreške stranice

Da bi se koristila .htaccess datoteka, Apache server mora biti konfiguriran za omogućavanje korištenja ovih datoteka. 

Ako je konfiguracija ispravna, .htaccess datoteka se automatski učitava kada se pristupa web stranici, te se primjenjuju sva pravila i postavke definirane u datoteci.

Zadatak

Napravimo index.html datoteku i postavimo je u htdocs (var/www/html/primjer.com) folder

Za ovaj zadatak možemo koristiti i XAMPP

Napravimo .htpasswd datoteku za korisnika1 i napravimo pristup 664 – datoteka mora biti u /var/www/ folderu

sudo htpasswd -c /var/www/.htpasswd korisnik1 

sudo chmod 644 .htpasswd 

Izlistamo sadržaj .htpasswd datoteke (lozinka je u kriptiranom obliku)

cat .htpasswd

Napravimo .htacces datoteku pomoću nano editora

nano .htaccess 

i umetnemo sadržaj: 

#Protect Directory
AuthName "Dialog prompt"
AuthType Basic
AuthUserFile /var/www/.htpasswd
Require valid-user

Primjer – kontrola pristupa samo za jednu datoteku:

#Protect single file
<Files datoteka.txt>
AuthName "Dialog prompt"
AuthType Basic
AuthUserFile /var/www/.htpasswd
Require valid-user
</Files>

Primjer – zabrana izlistavanja sadržaja foldera:

Options -Indexes

Primjer – ACL zabrana pristupa prema IP adresi

<Directory /var/www/html/primjer.com/datoteka>
    Order Deny,Allow
    Deny from all
    Allow from 192.168.254.1
</Directory>
ACL na Cisco poslužitelju