Apache

Apache koulutus / kurssit v.2008!

Kurssit saatavilla kautta Suomen. Tule, tutustu ja varaa oma koulutustapahtumasi jo tänään. Kurssit järjestää IT-koulutuksen asiantuntijasi, Koulutus- ja konsultointipalvelu KK Mediat

 

Kansioihin ja tiedostoihin liittyvät asetukset

Kiinteä osa palvelimen pääprosessin asetuksia ja tietoturvaa ovat erilaiset kansioihin ja tiedostoihin liittyvät oikeudet ja asetukset. Artikkelin tässä osassa käydään lävitse keskeisimpiä tähän liittyviä ominaisuuksia.

Käyttäjähakemistot

Hyvin läheisesti edellisessä luvussa esiteltyyn DocumentRoot ominaisuuteen liittyvät käyttäjän omat kansiot sekä kansioiden oikeudet. Ominaisuus UserDir määrää käyttäjän kotihakemiston, jos palvelin saa nk."~käyttäjätunnus" - pyynnön (esim. http://www.2kmediat.com/~yllapito/). UserDir-direktiivin avulla voidaan sallia kaikkien paikallisten käyttäjien luoda omat, yksilölliset kotisivunsa.

Mikäli piirre halutaan poistaa, suositellaan arvon piilottamista kommentoimalla. Tällöin myös ko. moduulin lataavan UserDir-moduulin voi kommentoida. Esim.

# UserDir "My Documents/My Website"
# LoadModule userdir_module modules/mod_userdir.so

Apache 2.2.x haarassa ominaisuus UserDir ja muut käyttäjähakemistoihin liittyvät ominaisuudet on siirretty konfigurointitiedostoon /conf/extras/httpd-userdir.conf.

Hakemistojen oikeuksien hallinta

Olennainen osa minkä tahansa verkkopalvelimen tietoturvasta koostuu hakemistojen ja tiedostojen oikeuksien hallinnasta. Apache mahdollistaa hakemistojen hallinnan lohkon <Directory>, ja tiedostojen hallinnan lohkon <Files> avulla. Hakemistojen ja tiedostojen oikeuksia määritellessä on tärkeää muistaa, että usein palvelimen odottaman käytös johtuu puutteellisista oikeuksista. Oletusarvoisesti kaikki mitä ei ole erikseen sallittu on kiellettyä.

Jokainen hakemiston oikeudet voidaan määritellä yksityiskohtaisesti <Directory>-lohkon avulla. Määritellyt ominaisuudet periytävät kaikille alakansioille ellei alakansiolle määritetä omia asetuksia. Apachen oletuskonfiguraatio määrittää kaikille kansioille erittäin rajoittavat oikeudet:

<Directory />
     Options FollowSymLinks
     AllowOverride None
     Order deny,allow
     Deny from all
     Satisfy all 
</Directory> 

Jota seuraa julkaisukansion oikeuksien määrittely :

<Directory "C:/ApacheWeb">
  Options Indexes FollowSymLinks IncludesNoExec
  AllowOverride None
  Order allow,deny
  Allow from 127.0.0.1
  Deny from all
</Directory>

Options direktiivin avulla määritellään mitkä piirteet ovat käytettävissä ko. kansiossa. Mahdolliset arvot ovat:

AllowOverRide ominaisuus määrittelee nk. .htaccess-kontrollitiedostojen käyttämisen kyseisessä kansiossa (ja mahdollisissa alikansioissa). AllowOverRide-direktiivin mahdolliset arvot ovat:

AllowOverRide ominaisuus suositellaan jätettävän pääpalvelun julkaisukansiotasolla arvoon none, ja hyödynnettävän sitä virtuaalipalveluiden (sivustojen) tasolla.

Oletusarvoisesti Apache asentaa mod_apache-moduulin, joka säätelee asiakkaan pääsyä palvelimen resursseihin. Rajoittavia tekijöitä voivat olla mm. IP-osoite, DNS tai muu clientin yksilöllinen piirre. Salliminen ja kieltäminen tapahtuu hyödyntämällä direktiivejä Order, Allow ja Deny.

Order ominaisuus määrää komentojen Allow ja Deny suoritusjärjestyksen. Etenkin jos ominaisuuden Deny arvona on all, on tärkeää että ominaisuuden arvo on järjestyksessä "allow, deny". Tällöin Apache kieltää kaiken sisääntulevan liikenteen, ja tekee siihen tarvittavat aukot. Jos säännön arvo olisi toisinpäin, sallisi Apache kaiken sisääntulevan liikenteen ja sen jälkeen kieltäisi sen. Kehityskäyttöä ajatellen vain paikallisen liikenteen salliva sääntö on erittäin hyvä:

Order allow,deny
Allow from 127.0.0.1
Deny from all

Tiedostojen oikeuksien hallinta

<Files>-lohkoa voidaan käyttää samaan tapaan kuin <Directory>-lohkoa tosin vaikutukset ovat rajoittuneita tiedostoihin. Oletusarvoisesti Apachen konfiguraatio suojaa kaikki .ht-alkuiset tiedostot (esim. konfigurointiteidoston .htaccess ja salasanatiedoston .htpasswd):

<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

Menetelmää voi hyödyntää hyvinkin pienillä muutoksilla estämään esim.. MP3, EXE ym. "haitallisten" tiedostojen lataamisen pois palvelimelta.

Ominaisuus DirectoryIndex määrittää hakemiston oletustiedoston, joka näytetään jos käyttäjä pyytää resurssia hakemiston nimellä (esim. http://www.2kmediat.com/apache/). Perinteisesti oletustiedoston nimenä on joko index.tiedostopääte tai default.tiedostopääte.

<IfModule dir_module>
     DirectoryIndex index.html index.php index.php5 index.cgi 
</IfModule>

Ominaisuus AccessFileName määrittelee kansiotasolla käytettävän kontrollitiedoston nimen. Perinteisesti Apachessa tämä on nimeltään .htaccess:

AccessFileName .htaccess

Apache 2.2.x sarjassa ominaisuus AccessFileName määritellään konfiguraatiotiedostossa /conf/extras/httpd-default.conf.

Apache 2.2.x sarjassa huomattava osa nk. indeksinäkymään liittyvistä ominaisuuksista (esim. IndexIgnore) on siirretty konfiguraatiotiedostoon /conf/extras/httpd-autoindex.conf

Tutustu artikkelin muihin osiin:
»»» Apache-opas »»» Apachen kansiot ja tiedostot
»»» Apache-opas »»» Tiedostojen httpd.conf ja .htaccess esittely
»»» Apache-opas »»» Apachen yleiset ominaisuudet
»»» Apache-opas »»» Palvelimen emoprosessin ominaisuudet
»»» Apache-opas »»» Kansioihin ja tiedostoihin liittyvät asetukset
»»» Apache-opas »»» Lokitiedostot ja niiden hallinta
»»» Apache-opas »»» Aliakset
»»» Apache-opas »»» CGI, SSI ja PHP-tuen käyttöönottaminen
»»» Apache-opas »»» Tuki monikielisyydelle
»»» Apache-opas »»» Mukautetut virheilmoitukset
»»» Apache-opas »»» Palvelimen tietojen katseleminen selaimen avulla
»»» Apache-opas »»» Virtuaalipalvelut
»»» Apache-opas »»» Httpd.conf tiedoston esimerkki

Tallenna tämä sivu kirjanmerkkeihin!

 

2kmediat.com, ©2000-2008 Koulutus- ja konsultointipalvelu KK Mediat.
Tekijänoikeuksia koskeva tiedonanto | Tietosuojalausunto | Sivukartta