Spørgsmål og svar

Tilbage
Søgeord:  

Hvordan indstiller jeg korrekte tilladelser til filer og mapper?

Hvis du ikke ved hvad filrettigheder er, bør du læse lidt om det først.


Generelt

Når du uploader nye filer og mapper til dit webhotel ved hjælp af FTP eller SSH, vil de normalt få de korrekte tilladelser. De kan både læses og ændres/slettes af din bruger, mens webserveren og andre brugere kun får læserettigheder. Men konfigurationsfiler med adgangskoder etc. bør ikke kunne læses af andre, og det skal du selv arrangere.

Nogle PHP-programmer kommer med instruktioner til at bruge kommandoen chmod 777 eller chmod 666 til at indstille "korrekte" tilladelser. Dette er i de fleste tilfælde forkert .

Forkerte filtilladelser kan få websider til ikke at fungere ("intern serverfejl" eller andre fejlmeddelelser) og udgøre en sikkerhedsrisiko: andre kan ødelægge dine websider.

Nedenfor er en detaljeret beskrivelse af, hvad der er nødvendigt og korrekt for vores kunder.


PHP

Ingen PHP-filer bør kunne skrives af andre, selvom f.eks. Joomla- eller WordPress-instruktionerne hævder det.

PHP-filer behøver heller ikke at være eksekverbare ("eksekverbare"/"program"), og de behøver heller ikke at kunne læses af andre ("andre"/"offentlige"/"enhver"/"alle")

Filer med hemmelige indstillinger, admin-adgangskoder, database-adgangskoder osv. bør ikke kunne læses af andre, da informationen kan bruges til at ændre dine websider!

Læs eventuelt også teknisk information om PHP .


Teknisk om PHP

PHP på vores webservere kører under uWSGI med register_globals=Off . PHP-programmerne udføres derfor med rettighederne til dit Unix/FTP-brugernavn, og ikke som en del af webserveren.

Hvis filerne kan skrives af en anden end din Unix-bruger, får du "Intern serverfejl". I Unix-skallen arrangerer du dette med kommandoen chmod og-rwx filnavn.php (den numeriske kode for sådanne filer skal være 640 eller 600).

Konfigurationsfiler ("config.php", "configuration.php", etc.) indeholdende adgangskoder til databaser osv. bør ikke kunne læses af andre, da disse kan misbruges til at ændre dine data. I Unix-skallen arrangerer du dette med kommandoen chmod og-rwx configuration.php (den numeriske kode for sådanne filer er 640 eller 600).

I FTP skal du fjerne læsetilladelser for "andre".


CGI

Alle CGI-scripts skal være eksekverbare ("eksekverbare" på engelsk), dvs. have x-bit sat. Via Unix-skallen gør du dette med kommandoen chmod ug+x filnavn.cgi . FTP-programmer har tilsvarende betegnelser.

På vores webservere kører CGI-scripts som din egen Unix-bruger, ikke www-brugeren, så det er ikke nødvendigt, at filer og mapper, der bruges af CGI-scripts, kan skrives af andre end din egen bruger.

Alle CGI-scripts skal ejes af din egen Unix-bruger og må ikke kunne skrives af andre end denne bruger. De kan heller ikke være i mapper, der kan skrives af andre end dig selv. I Unix-skallen arrangerer du dette med kommandoen chmod o-rwx filnavn.cgi (den numeriske kode for sådanne filer skal være 750 eller 700).

Konfigurationsfiler ("config.cgi", "config.pl", "configuration.cgi", etc.) indeholdende adgangskoder til databaser osv. bør ikke kunne læses af andre, da disse kan misbruges til at ændre dine data. I Unix-skallen arrangerer du dette med kommandoen chmod og-rwx configuration.cgi (den numeriske kode for sådanne filer er 640 eller 600).

Tilsvarende funktionalitet findes for FTP, fjern læserettigheder for "andre".


Se også:

© 2022 Domeneshop AS · Om os · Vilkår · Fortrolighedspolitik