Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
linux:share [2025/05/25 19:40] swelinux: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
-## 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: **/home/alicebob** - Gemeinsames Verzeichnis: **/home/alicebob**
Line 34: Line 33:
  
  
-### Schritt-für-Schritt Anleitung:+## Schritt-für-Schritt Anleitung:
  
-### 1. **Benutzer anlegen**+### Benutzer anlegen
  
-Zuerst legen wir die beiden Benutzer `alice` und `bob` an:+Zuerst legen wir die beiden Benutzer `alice` und `bob` an und vergeben auch die Passwörter
  
 ```bash ```bash
 sudo useradd -m -s /bin/bash alice sudo useradd -m -s /bin/bash alice
 sudo useradd -m -s /bin/bash  bob sudo useradd -m -s /bin/bash  bob
-``` 
  
-### 2. **Benutzern Passwörter zuweisen** 
- 
-Nun vergeben wir Passwörter für beide Benutzer: 
- 
-```bash 
 sudo passwd alice sudo passwd alice
 sudo passwd bob sudo passwd bob
 ``` ```
  
-Du wirst jeweils nach einem Passwort gefragt. 
  
 --- ---
  
-### 3. **Gemeinsame Gruppe erstellen**+### Gemeinsame Gruppe erstellen
  
-Nun erstellen wir die gemeinsame Gruppe `projektgruppe`:+Nun erstellen wir die gemeinsame Gruppe `projektgruppe` und fügen `alice` und `bob` dieser Gruppe hinzu
  
 ```bash ```bash
 sudo groupadd projektgruppe sudo groupadd projektgruppe
 ``` ```
- +Benutzer zur gemeinsamen Gruppe hinzufügen
---- +
- +
-### 4. **Benutzer zur gemeinsamen Gruppe hinzufügen** +
- +
-Nun fügen wir `alice` und `bob` zur Gruppe `projektgruppe` hinzu:+
  
 ```bash ```bash
Line 76: Line 63:
 sudo usermod -aG projektgruppe bob sudo usermod -aG projektgruppe bob
 ``` ```
-### Erstmal falsch:+### Erstmal falsch
  
-**1.) Falsch 1: Homeordner von alice für alle freigeben**+**Falsch #1**: Homeordner von alice für alle freigeben 
 +```bash 
 +chmod 755 /home/alice 
 +``` 
 +Eine richtig doofe Idee! **Don't do this**. Zwar kommen wir jetzt auf den Home-Ordner von `alice`. Allerding gilt das nun auch für jeden.
  
-    chmod 755 /home/alice 
  
-- Loesung: Gemeinsame Gruppe +**Falsch #2**Gemeinsame Gruppe - Ordner im Homeordner von alice erstellen und Gruppe ändern 
- +```bash 
-**2.) Falsch 2: Ordner im Homeordner von alice erstellen und Gruppe ändern** +chmod 770 /home/alice/alicebob  
-     +```
-    chmod 770 /home/alice/alicebob +
  
 - Pfad kann nicht beschritten werden - Pfad kann nicht beschritten werden
 - Pfad muss vollumfänglich begehbar sein - Pfad muss vollumfänglich begehbar sein
  
-### 5. **Gemeinsames Verzeichnis erstellen**+### Jetzt aber richtig 
 + 
 +#### Gemeinsames Verzeichnis erstellen
  
 Erstelle ein Verzeichnis, auf das beide Benutzer zugreifen können, z.B. `alicebob` im Home-Verzeichnis: Erstelle ein Verzeichnis, auf das beide Benutzer zugreifen können, z.B. `alicebob` im Home-Verzeichnis:
Line 100: Line 91:
 sudo mkdir /home/alicebob sudo mkdir /home/alicebob
 ``` ```
-andere gute,bessere Orte +andere gute Orte `/srvund `/srv/alicebob` 
-``` +
-/srv +
-und dann /srv/alicebob +
-```+
  
 --- ---
  
-### 6. **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 129: Line 117:
 --- ---
  
-### 7. **Ü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 145: Line 133:
 --- ---
  
-### 8. **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 165: Line 153:
 --- ---
  
-### Empfehlung +#### Empfehlung 
-- **Wenn möglich**: Verschiebe gemeinsame Ordner an einen neutralen Ort, der nicht an persönliche Home-Verzeichnisse gebunden ist+Verschiebe gemeinsame Ordner an einen neutralen Ort, der nicht an persönliche Home-Verzeichnisse gebunden ist.
-- **Falls notwendig**: Passe die Berechtigungen des Home-Ordners an, aber sei vorsichtig, um nicht unbeabsichtigt sensible Daten freizugeben.+
  
-## setgid-Bit (Set Group ID)+--- 
 +### setgid-Bit (Set Group ID)
  
-```bash +**Problem: Standardgruppe neuer Dateien festzurren** 
-chmod g+s /shared-folder +- **Ohne setgid-Bit**: Neue Dateien gehören der Primärgruppe des Erstellers 
-``` +- **Wirkung auf Verzeichnisse**: Wenn das `setgid`-Bit auf einem Verzeichnis gesetzt wird, erhalten alle neuen Dateien und Unterverzeichnisse innerhalb dieses Verzeichnisses automatisch die Gruppe des Verzeichnisses, nicht die primäre Gruppe des Benutzers, der sie erstellt.
-**Problem 2: Standardgruppe neuer Dateien festzurren**   +
-- **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, nicht die primäre Gruppe des Benutzers, der sie erstellt.+
 - **Wirkung auf ausführbare Dateien**: Wenn das `setgid`-Bit auf einer Datei gesetzt ist, wird diese Datei mit den **Gruppenrechten** des Besitzers ausgeführt, anstatt mit den Gruppenrechten des Benutzers, der die Datei ausfü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, anstatt mit den Gruppenrechten des Benutzers, der die Datei ausführt.
  
 **Beispiel für ein Verzeichnis:** **Beispiel für ein Verzeichnis:**
 ```bash ```bash
-chmod g+s /shared-folder+chmod g+s /home/alicebob
 ``` ```
 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 196: 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 löschen oder umbenennen, die **nicht** ihnen gehören.
-hnis löschen oder umbenennen, die **nicht** ihnen gehören.+
  
 #### Verzeichnis mit Sticky Bit #### Verzeichnis mit Sticky Bit
Line 220: 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                | `setgid`-Bit                                    | Sticky Bit                                     | | Merkmal                | `setgid`-Bit                                    | Sticky Bit                                     |