Spørsmål og svar

Tilbake
Stikkord:  

Hvordan setter jeg riktige rettigheter på filer og kataloger?

Dersom du ikke vet hva filrettigheter er, så bør du lese litt om det først.


Generelt

Når du laster opp nye filer og kataloger til webhotellet ditt med FTP eller SSH, vil de normalt få riktige rettigheter. De kan både leses og endres/slettes av din bruker, mens webserveren og andre brukere kun får leserettigheter. Men konfigurasjonsfiler med passord o.l. bør ikke være lesbare for andre, og dette må du ordne selv.

En del PHP-programmer kommer med instruksjoner om å bruke kommandoen chmod 777 eller chmod 666 for å sette "riktige" rettigheter. Dette er i de fleste tilfeller feil.

Feil filrettigheter kan medføre at websider ikke fungerer ("Internal server error" eller andre feilmeldinger), og utgjør en sikkerhetsrisiko: andre kan ødelegge websidene dine.

Nedenfor følger nærmere beskrivelse av hva som er nødvendig og riktig for våre kunder.


PHP

Ingen PHP-filer skal være skrivbare for andre, selv om f.eks. Joomla- eller WordPress-instruksjonene påstår det.

PHP-filer trenger heller ikke være kjørbare ("executable"/"program"), og det er ikke nødvendig at de er lesbare for andre ("others"/"public"/"anyone"/"everyone")

Filer med hemmelige innstillinger, admin-passord, databasepassord, osv. bør ikke være lesbare for andre, siden informasjonen kan brukes til å modifisere websidene dine!

Les evt. også teknisk informasjon om PHP.


Teknisk om PHP

PHP på våre webservere kjører under uWSGI med register_globals=Off. PHP-programmene utføres derfor med ditt Unix-/FTP-brukernavns rettigheter, og ikke som en del av webserveren.

Er filene skrivbare for andre enn din Unix-bruker, så vil du få "Internal server error". I Unix shell ordner du dette med kommandoen chmod og-rwx filnavn.php (tallkoden for slike filer bør være 640 eller 600).

Konfigurasjonsfiler ("config.php", "configuration.php", osv.) som inneholder passord til database o.l. bør ikke være lesbare for andre, siden dette kan misbrukes til å modifisere dine data. I Unix shell ordner du dette med kommandoen chmod og-rwx configuration.php (tallkoden for slike filer er 640 eller 600).

I FTP, fjern leserettigheter for "others"/"andre".


CGI

Alle CGI-script må være kjørbare ("executable" på engelsk), dvs. ha x-bit satt. Via Unix shell gjør du dette med kommandoen chmod ug+x filnavn.cgi. FTP-programmer har tilsvarende benevnelser.

På våre webservere kjører CGI-scripts som din egen Unix-bruker, ikke brukeren www, så det er ikke nødvendig at filer og kataloger som brukes av CGI-script er skrivbare for andre enn din egen bruker.

Alle CGI-script må eies av din egen Unix-bruker, og må ikke være skrivbare for andre enn denne. De kan heller ikke ligge i kataloger som er skrivbare for andre enn deg selv. I Unix shell ordner du dette med kommandoen chmod o-rwx filnavn.cgi (tallkoden for slike filer bør være 750 eller 700).

Konfigurasjonsfiler ("config.cgi", "config.pl", "configuration.cgi", osv.) som inneholder passord til database o.l. bør ikke være lesbare for andre, siden dette kan misbrukes til å modifisere dine data. I Unix shell ordner du dette med kommandoen chmod og-rwx configuration.cgi (tallkoden for slike filer er 640 eller 600).

Tilsvarende funksjonalitet finnes for FTP, fjern leserettigheter for "others"/"andre".


Se også:

© 2024 Domeneshop AS · Om oss · Vilkår · Personvern