Festlegen von Schreibberechtigungen für /var/www auf einem lokalen Ubuntu-Desktop-Webserver

Festlegen von Schreibberechtigungen für /var/www auf einem lokalen Ubuntu-Desktop-Webserver

Ich kämpfe jetzt schon seit drei Tagen wie verrückt und weiß nicht, was ich falsch gemacht habe ...

EDIT 3: Ich glaube, meine Frage ist spezifischer als ich dachte, deshalb habe ich hier einen neuen Thread erstellt:https://askubuntu.com/questions/631303/neue Dateien und Ordner als Eigentümer erstellen - www-data-statt-superuser-admin

Hier ist mein Setup:

  • Ein Computer mit installiertem Ubuntu Desktop und LAMP. Beachten Sie, dass ich keine statische IP habe und ihr EINZIGER Zweck darin besteht, gemeinsam mit meinem Team lokal Websites zu erstellen, da die Verbindungen auf den Philippinen ziemlich langsam sind. Daher (wenn ich mich nicht irre) macht es mir nichts aus, alles auf 777 einzustellen, wenn das das Problem lösen kann, aber ich würde gerne lernen, wie man es richtig macht, um es später nachschlagen zu können.

  • Ich habe 5 „Benutzer“ erstellt, alle in der Gruppe „www-data“ (und einer neuen Gruppe „www-pub“, da ich nach neuen Wegen suchte … ich habe beide überprüft), die über Samba Share eine Verbindung zum Ordner /www/var herstellen.

Ich habe bisher alles versucht, ohne Erfolg:

  • chmod und chown mit dem Find-Befehl unter Verwendung von -R für rekursiv.
  • Ändern der Umask auf 0002

ABER alle meine neuen Verzeichnisse und Dateien sind immer noch nicht beschreibbar, es sei denn, ich führe die chmod/chown-Befehlszeilen, die ich in verschiedenen Threads gefunden habe, noch einmal aus.

Ich bin ein absoluter Neuling in Sachen Ubuntu und Server/Befehlszeilen und so, aber ich lerne ziemlich schnell.

Fragen:

  • Kann ich eine einfache chmod 777-Regel verwenden (und wie geht das genau), da sie für die Produktion gedacht ist, aber keinen Zugriff auf die Welt ermöglicht?

  • Wie läuft die Vorgehensweise hierfür Schritt für Schritt ab?

  • Kann es einfach etwas anderes sein? Apache-Konfiguration? Sollte ständig darauf verwiesen werden?

Ich bin verloren !

Dank im Voraus

BEARBEITEN: Dachte, das könnte helfen:

ls -l /var/www
    total 4
    drwxrwsr-x 8 www-data www-data 4096 Jun  2 17:56 html
    -rw-rw-r-- 1 www-data www-data    0 May 27 01:40 Untitled Document~

ls -l /var
    total 52
    drwxr-xr-x  2 root     root     4096 Jun  2 10:29 backups
    drwxr-xr-x 21 root     root     4096 May 28 12:49 cache
    drwxrwsrwt  2 root     whoopsie 4096 May 28 11:56 crash
    drwxr-xr-x 71 root     root     4096 May 27 11:23 lib
    drwxrwsr-x  2 root     staff    4096 Apr 18 05:34 local
    lrwxrwxrwx  1 root     root        9 May 11 23:05 lock -> /run/lock
    drwxrwxr-x 16 root     syslog   4096 Jun  2 17:53 log
    drwxrwsr-x  2 root     mail     4096 Apr 22 20:13 mail
    drwxrwsrwt  2 root     whoopsie 4096 Apr 22 20:19 metrics
    drwxr-xr-x  2 root     root     4096 Apr 22 20:13 opt
    lrwxrwxrwx  1 root     root        4 May 11 23:05 run -> /run
    drwxr-xr-x  9 root     root     4096 May 26 18:46 spool
    drwxrwxrwt 12 root     root     4096 Jun  2 17:59 tmp
    drwx------  2 root     bin      4096 Jun  2 10:21 webmin
    drwxrwsr-x  4 www-data www-data 4096 May 29 15:37 www 

BEARBEITEN 2:

Mir ist etwas Merkwürdiges aufgefallen, als ich ls -l in dem Ordner ausgeführt habe, in dem sich meine Websites befinden (/var/www/html). Vielleicht gibt das weitere Hinweise? Die heute erstellten neuen Websites gehören nicht www-data, sondern dem Hauptadministrator des Servers („Boris“).

ls -l /var/www/html
drwxrwsr-x 2 boris    www-data  4096 May 29 15:38 Agama
drwxrwsr-x 6 www-data www-data  4096 May 27 18:21 calima
drwxrwsr-x 6 www-data www-data  4096 May 27 23:19 calima2
drwxrwsr-x 6 boris    www-data  4096 Jun  2 17:21 cheche
drwxrwsr-x 9 boris    www-data  4096 Jun  2 18:17 Cheche1
-rw-rw-r-- 1 www-data www-data 11321 May 26 18:19 index.html
-rw-rw-r-- 1 www-data www-data    20 May 27 01:41 index.php
drwxr-sr-x 2 boris    www-data  4096 Jun  2 17:56 Test

Antwort1

Ich würde einen symbolischen Link zu einem anderen Verzeichnis verwenden:

ln -s <target> <link>

EDIT: Um genauer zu sein: Sie könnten so etwas tun:

ln -s /var/www /path/to/link

Dadurch wird das System geschützt, da Ihr Stammverzeichnis weiterhin nur lesbar ist (als Benutzer). Ein Symlink-Verzeichnis irgendwo in Ihrem Home-Pfad ist die sicherere Möglichkeit, an Ihrem Projekt herumzubasteln. Für ein Produktionssystem würde ich es allerdings nicht verwenden.

verwandte Informationen