Setzen der Datei-Berechtigungen

Also available in English, Espanol?, Français?, Russian?.



1. Unix-Dateirechte

Alle Berechtigungen für Dateien und Ordner werden entsprechend der aktuellen Webserver-Konfiguration gesetzt.


Es kann verschiedene Situationen geben, wenn der Webserver läuft:

  1. owner – mit dem gleichen Benutzernamen wie der Besitzer der Datei/des Verzeichnisses
  2. group – mit dem gleichen Gruppennamen wie Datei-/Verzeichnisbesitzer/Benutzergruppe
  3. others – als nobody
  4. als root

Berechtigungen Verzeichnis Datei Hinweise
1. Besitzer
lesen
0500 0400
schreiben
0700 0600
2. Gruppe
lesen
0550 0440
schreiben
0770 0660
3. others
lesen
0555 0444
schreiben
0777 0666 SICHERHEITSRISIKO

2. Package / Repository

Die Standardberechtigung sind:


Berechtigungen Verzeichnis Datei
default 0755 0644

3. Installation / Upgrade

Ändern Sie die Berechtigungen für die folgenden Verzeichnisse und Dateien so, dass sie beschreibbar sind

3.1. Verzeichnisse

  • _cache/config/
  • _cache/feed/
  • _cache/page/
  • _cache/query/
  • _cache/session/
  • _cache/template/
  • file/backup/
  • file/global/
  • file/perpage/
  • file/thumb/
  • xml/

Beispiel:
chmod 0755 _cache/config/ _cache/feed/ _cache/page/ _cache/query/ _cache/session/ _cache/template/ file/backup/ file/global/ file/perpage/ file/thumb/ xml/


3.2. Dateien

  • config/config.php
  • config/lock
  • config/lock_ap
  • sitemap.xml

Beispiel:
chmod 0660 config/lock config/lock_ap sitemap.xml


Reset nach Installation / Upgrade
chmod 640 config/config.php

3.3. Defaults


constant.php

const CHMOD_SAFE	= 0640;			// better to use 0600 in production
const CHMOD_FILE	= 0644;			// file creation mode
const CHMOD_DIR		= 0755;			// directory creation mode

4. Production / Server

Stelle sicher, dass die Berechtigungen so restriktiv wie möglich gesetzt wurden – die Konfigurationsdateien sollten nur für den Besitzer und den Webserver lesbar sein und für niemanden sonst.


Dateien benötigen chmod 400 wenn der Webserver als Dateieigentümer-Benutzername läuft oder 440 wenn der Webserver als Dateieigentümer-Benutzergruppe läuft:

  • config.php
  • constant.php

5. So werden Dateirechte eingerichtet


In den meisten Fällen läuft der Webserver auf Hosting-Servern als Benutzername des Dateieigentümers, so dass die erforderlichen chmod-Werte 644 für Dateien und 755 für Ordner sind, um sie sowohl für den Eigentümer als auch für den Webserver lesbar und schreibbar zu machen, und für die Gruppe und andere lesbar.


To make all files chmod 644 run in SSH console:


find /your_site_public_html -type f -exec chmod 644 {} \;

To make all directories chmod 755 run in SSH console::


find /your_site_public_html -type d -exec chmod 755 {} \;

6. Wechsel des Besitzers

 whoami

 id -gn

ls -ld /home/user/workspace/wackowiki-dev/

sudo chown -R user:group /home/user/workspace/wackowiki-dev/