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ää.