Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| linux:share [2025/05/25 19:49] – swe | linux:share [2025/12/20 14:53] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 9: | Line 9: | ||
| In der Standardkonfiguration von Linux ist der Home-Ordner eines Benutzers nur für diesen Benutzer zugänglich. Wenn ein Ordner in einem Home-Verzeichnis liegt, können andere Gruppenmitglieder ihn **nicht** erreichen, solange ihnen der Zugriff auf den Home-Ordner selbst verweigert wird. | In der Standardkonfiguration von Linux ist der Home-Ordner eines Benutzers nur für diesen Benutzer zugänglich. Wenn ein Ordner in einem Home-Verzeichnis liegt, können andere Gruppenmitglieder ihn **nicht** erreichen, solange ihnen der Zugriff auf den Home-Ordner selbst verweigert wird. | ||
| - | ### Hierarchie | + | **Hierarchie** |
| Die Berechtigungen des Home-Ordners schränken den Zugriff auf darunterliegende Dateien und Verzeichnisse ein. Standardmäßig hat ein Home-Ordner Berechtigungen wie: | Die Berechtigungen des Home-Ordners schränken den Zugriff auf darunterliegende Dateien und Verzeichnisse ein. Standardmäßig hat ein Home-Ordner Berechtigungen wie: | ||
| ```bash | ```bash | ||
| Line 21: | Line 21: | ||
| --- | --- | ||
| - | ## Lösungen, um den Zugriff zu ermöglichen | + | ## Lösung: |
| - | ## Erstellen eines gemeinsamen Ordner | + | |
| - | ### Annahme: | + | **Annahme** |
| - Benutzer 1: **alice** | - Benutzer 1: **alice** | ||
| - Benutzer 2: **bob** | - Benutzer 2: **bob** | ||
| - | später | + | **Später kommen hinzu** |
| - Gemeinsame Gruppe: **projektgruppe** | - Gemeinsame Gruppe: **projektgruppe** | ||
| - Gemeinsames Verzeichnis: | - Gemeinsames Verzeichnis: | ||
| Line 34: | Line 33: | ||
| - | ### Schritt-für-Schritt Anleitung: | + | ## Schritt-für-Schritt Anleitung: |
| ### Benutzer anlegen | ### Benutzer anlegen | ||
| Line 64: | Line 63: | ||
| sudo usermod -aG projektgruppe bob | sudo usermod -aG projektgruppe bob | ||
| ``` | ``` | ||
| - | ### Erstmal falsch: | + | ### Erstmal falsch |
| **Falsch #1**: Homeordner von alice für alle freigeben | **Falsch #1**: Homeordner von alice für alle freigeben | ||
| Line 83: | Line 82: | ||
| ### Jetzt aber richtig | ### Jetzt aber richtig | ||
| - | **Gemeinsames Verzeichnis erstellen** | + | #### Gemeinsames Verzeichnis erstellen |
| Erstelle ein Verzeichnis, | Erstelle ein Verzeichnis, | ||
| Line 92: | Line 91: | ||
| sudo mkdir / | sudo mkdir / | ||
| ``` | ``` | ||
| - | andere gute, | + | andere gute Orte `/srv` und `/ |
| - | ``` | + | |
| - | /srv | + | |
| - | und dann / | + | |
| - | ``` | + | |
| --- | --- | ||
| - | **Besitzrechte des Verzeichnisses ändern** | + | #### Besitzrechte des Verzeichnisses ändern |
| Ändere den Besitzer des Verzeichnisses so, dass die Gruppe `projektgruppe` das Verzeichnis verwaltet: | Ändere den Besitzer des Verzeichnisses so, dass die Gruppe `projektgruppe` das Verzeichnis verwaltet: | ||
| Line 121: | Line 117: | ||
| --- | --- | ||
| - | **Überprüfen der Berechtigungen** | + | #### Überprüfen der Berechtigungen |
| Stelle sicher, dass die Berechtigungen korrekt gesetzt sind: | Stelle sicher, dass die Berechtigungen korrekt gesetzt sind: | ||
| Line 137: | Line 133: | ||
| --- | --- | ||
| - | **Testen des Zugriffs** | + | #### Testen des Zugriffs |
| Melde dich nun als Benutzer `alice` an und erstelle eine Datei im Verzeichnis `alicebob`: | Melde dich nun als Benutzer `alice` an und erstelle eine Datei im Verzeichnis `alicebob`: | ||
| Line 157: | Line 153: | ||
| --- | --- | ||
| - | ### Empfehlung | + | #### Empfehlung |
| - | - **Wenn möglich**: | + | Verschiebe gemeinsame Ordner an einen neutralen Ort, der nicht an persönliche Home-Verzeichnisse gebunden ist. |
| - | - **Falls notwendig**: | + | |
| - | ## setgid-Bit (Set Group ID) | + | --- |
| + | ### setgid-Bit (Set Group ID) | ||
| - | ```bash | + | **Problem: Standardgruppe neuer Dateien festzurren** |
| - | chmod g+s / | + | - **Ohne setgid-Bit**: |
| - | ``` | + | - **Wirkung auf Verzeichnisse**: |
| - | **Problem | + | |
| - | - **Wirkung auf Verzeichnisse**: | + | |
| - | enn das `setgid`-Bit auf einem Verzeichnis gesetzt wird, erhalten alle neuen Dateien und Unterverzeichnisse innerhalb dieses Verzeichnisses automatisch die Gruppe des Verzeichnisses, | + | |
| - **Wirkung auf ausführbare Dateien**: Wenn das `setgid`-Bit auf einer Datei gesetzt ist, wird diese Datei mit den **Gruppenrechten** des Besitzers ausgeführt, | - **Wirkung auf ausführbare Dateien**: Wenn das `setgid`-Bit auf einer Datei gesetzt ist, wird diese Datei mit den **Gruppenrechten** des Besitzers ausgeführt, | ||
| **Beispiel für ein Verzeichnis: | **Beispiel für ein Verzeichnis: | ||
| ```bash | ```bash | ||
| - | chmod g+s /shared-folder | + | chmod g+s /home/ |
| ``` | ``` | ||
| Wenn Benutzer `alice` eine Datei im Ordner erstellt, wird diese Datei der Gruppe des Ordners zugewiesen. | Wenn Benutzer `alice` eine Datei im Ordner erstellt, wird diese Datei der Gruppe des Ordners zugewiesen. | ||
| Line 188: | Line 181: | ||
| drwxrws--- 2 alice projektgruppe 4096 Nov 23 12:00 shared-folder | drwxrws--- 2 alice projektgruppe 4096 Nov 23 12:00 shared-folder | ||
| ``` | ``` | ||
| - | + | --- | |
| - | ## Sticky-Bit | + | ### Sticky-Bit |
| **Problem 3: Nur Besitzer soll Datei löschen und umbenennen dürfen** | **Problem 3: Nur Besitzer soll Datei löschen und umbenennen dürfen** | ||
| - | Das **Sticky Bit** hat eine andere Funktion und wird hauptsächlich in Verzeichnissen verwendet, um zu verhindern, dass Benutzer Dateien in einem Verzeic | + | Das **Sticky Bit** hat eine andere Funktion und wird hauptsächlich in Verzeichnissen verwendet, um zu verhindern, dass Benutzer Dateien in einem Verzeichnis |
| - | hnis löschen oder umbenennen, die **nicht** ihnen gehören. | + | |
| #### Verzeichnis mit Sticky Bit | #### Verzeichnis mit Sticky Bit | ||
| Line 212: | Line 204: | ||
| Das `t` am Ende der Berechtigungen zeigt an, dass das Sticky Bit gesetzt ist. | Das `t` am Ende der Berechtigungen zeigt an, dass das Sticky Bit gesetzt ist. | ||
| - | + | --- | |
| - | ## Unterschiede zwischen setgid und Sticky Bit | + | ### Unterschiede zwischen setgid und Sticky Bit |
| | Merkmal | | Merkmal | ||