Kapsin logo

Kapsi Internet-käyttäjät ry

Käyttöoikeudet

Unix-järjestelmissä tiedostojen käyttöoikeuksia kuvataan usein numerosarjalla, esimerkiksi 0755. Kolme viimeistä numeroa kertovat järjestyksessä tiedoston omistajan, samaan ryhmään kuuluvien ja muiden käyttäjien oikeudet. Ensimmäinen numero liittyy erilaisiin lisäominaisuuksiin, eikä sitä yleensä tarvita.

Kukin numero muodostuu suoritusoikeudesta (arvo 1), kirjoitusoikeudesta (arvo 2) ja lukuoikeudesta (arvo 4). Oikeuksien painotusarvot lasketaan yhteen, esimerkiksi luku- ja suoritusoikeus on numero 5.

Käyttöoikeuksien hallinta

Tiedoston käyttöoikeudet voi tarkistaa ssh-yhteyden kautta:

kayttaja@lakka:~$ ls -l
-rwxr-xr-x 1 kayttaja users 3572 2006-12-09 16:10 index.cgi

Listauksessa käyttöoikeudet näkyvät hieman selkeämmin kirjainsarjana, tässä jälleen käyttöoikeus 755, eli omistajalla kaikki oikeudet ja muille luku- ja suoritusoikeus.

Käyttöoikeudet voi asettaa joko sftp-ohjelmalla tai chmod-komennolla:

kayttaja@lakka:~$ chmod 700 index.cgi
kayttaja@lakka:~$ ls -l
-rwx------ 1 kayttaja users 3572 2006-12-09 16:10 index.cgi

Käyttöoikeuksien merkitys

Tiedostojen luku- ja kirjoitusoikeudet on helppo ymmärtää. Suoritusoikeus tarkoittaa tiedoston olevan ajettava ohjelma tai skripti. Hakemistoilla suoritusoikeus mahdollistaa tiedostojen lukemisen kansiosta niiden nimellä ja lukuoikeus kansion sisällön listaamisen. Kirjoitusoikeus mahdollistaa uusien tiedostojen luomisen hakemistoon.

Kapsilla on käytössä palvelimen asetus, joka estää käyttäjiä lukemasta toistensa tiedostoja käyttöoikeuksista rippumatta. Sen sijaan www-palvelimeen vaikuttaa käyttöoikeuksien viimeinen ryhmä, muut käyttäjät.

PHP-ohjelmat ajetaan oletuksena CGI-ohjelman tapaan, joten niille täytyy asettaa suoritusoikeus. Käyttöoikeuden muuttaminen on kuitenkin tarpeen vain tiedostoille, jotka haetaan suoraan www-selaimen kautta. Monissa ohjelmissa on yksittäinen index.php, jonka kautta muut tiedostot ladataan.

Sopivia oikeuksia www-sivuja varten:

  • 700 - CGI-skripti tai selaimesta avattava PHP-skripti
  • 644 - Tavallinen tiedosto
  • 755 - Hakemisto, jonka sisällön www-palvelin näyttää tiedostolistauksena
  • 711 - Hakemisto, jonka sisältöä www-palvelin ei listaa, mutta josta tiedostot voi avata jos niiden nimen tietää
  • 700 - Hakemisto, jonka sisältämät tiedostot eivätkä alihakemistot näy www-selaimen kautta

Käyttöoikeutta 777 ei yleensä ole syytä käyttää. Sitä ehdotetaan usein safemoden vuoksi ohjelmien ohjeissa, mutta Kapsilla safemode ei ole käytössä. Lisäksi php ei toimi, mikäli skriptillä tai hakemistolla on oikeudet 777, sillä suexec ei tietoturvasyistä suorita tällaisia ohjelmia.