sd


Fichier Détails

Cartes-fiches 182
Langue Deutsch
Catégorie Informatique
Niveau Autres
Crée / Actualisé 25.04.2025 / 27.04.2025
Lien de web
https://card2brain.ch/cards/20250425_sad?max=40&offset=80
Intégrer
<iframe src="https://card2brain.ch/box/20250425_sad/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Welche Möglichkeiten für temporären Userwechsel gibt es?

"su BENUTZER" -> Wechsel (Passwort nötig).
"sudo -u BENUTZER KOMMANDO" -> Nur ein Kommando unter anderem Benutzer.

Wozu dient /etc/skel?

- Vorlagenverzeichnis für neu angelegte Home Verzeichnisse

 

Wo befinden sich die Home-Verzeichnisse von root und normalo?

root : /root
normalo: /home/normalo

Warum sind Passworte wichtig?

- Schützen Benutzerkonten vor unberechtigem Zugriff
- Sie sidn das erste Mittel der Authentifizierung

Wie werden und wurden die Passwörter gespeichert?

früher -> /etc/passwd -> lesbar für alle Benutzer (Hashed)

Heute -> /etc/shadow -> nur für root lesbar (Hased + salted)

Wie ist eine Zeile in /etc/shadow aufgebaut?

username -> Benutzername

$ID$salt$hash -> Verschlüsselter Passwort Hash
17453 -> Zeitpunkt der letzten Passwortänderung 

0 -> Mindestalter des Passworts (Tage)
99999 -> Maximalalter des Passworts (Tage)
7 -> Warnzeitraum vor Ablauf (Tage)

Was versteht man unter Salt?

- Eine zufällige Zeichenkette, die bei Hashen dazugemischt wird

- Ziel: Zwei gleiche Passwörter bekommen verschiedene Hashes
- Verhindert Ranbow-Table-Angriffe

Was passiert bei "passwd"?

- System fordert ein neues Passwort an
- Berechnet neuen Hash (inkl. Salt)

- Speicher den Hash sicher in /etc/shadow

Warum sind Berechtigungen wichtig?

- Schutz von Daten vor unberechtigtem Zugriff
- Dateisytem regelt: Wer eine Datei lesen darf, Wer sie bearbeiten darf, Wer sie ausführen darf

Welche Grundlegende Rechte gibt es in Linux?

"r" -> read -> Datei lesen oder Verzeichnisinhalt anzeigen.
"w" -> write -> Datei verändern oder Dateien im Verzeichnis erstellen/löschen.
"x" -> execute -> Datei ausführen oder in Verzeichnis wechseln.

Welche Nutzerklassen gibt es in Linux (Pro Datei oder Verzeichnis)?

- User (u) -> Eigentümer der Datei
- Group (g) -> Benutzer, die in der zugewiesenen Gruppe sind
- other (o) -> Alle anderen Benutzer

Rechte in Oktalform (Numerische Darstellung):

"r" -> 4
"w" -> 2
"x" -> 1
"-" -> 0

Insgesamt 7 für rwx


Beispiel:
"rwx" -> 7

"rw-" -> 6
"r-x" -> 5
"r--" -> 4
"--x" -> 1
"---" -> 0

Wie kann man mit chmod Rechte ändern?

chmod u+x datei.txt -> User darf ausführen
chmod g-w datei.txt -> Gruppe darf nicht mehr schreiben
chmod o=r datei.txt -> Andere dürfen nur lesen

 

oder Oktal -> chmod 751 datei.txt

Was sind die Standardrechte bei der Erstellung von Dateien und Verzeichnissen?

Datei -> 666 (rw-rw-rw-) 

Verzeichnis -> 777 (rwxrwxrwx)

Was kann man mit umask machen?

- Steuert, welche Standardrechte nicht gesetzt werden beim Erstellen neuer Dateien.

umask 027 ->
0 für Eigentümer - nichts wird weggenommen
2 für Gruppe - keine Schreibrechte mehr

7 für Andrere - gar keien Rechte

Welche Dateirechte gibt es noch nebem (rwx)?

SUID (Set User ID) -> Programem sollen mit den Rechten des Eigentümers laufen |  -rwsr-xr-x (s an Stelle des Eigentümers) 
SGID (Set Group ID) -> Neue Dateien sollen Gruppenzugehörigkeit behalten | drwxrwsr-x (s an Stelle der Gruppe)
Sticky Bit -> In öffentlichen Verzeichnissen nur eigene Dateien löschen dürfen | drwxrwxrwt (t am Ende)

Was sind wichtige Prinzipien des Datenschutzes?

Vertraulichkeit -> Nur Berechtigte haben Zugriff auf Daten
Integrität -> Daten dürfen nicht unbemerkt verändert werden (LOGS)
Verfügbarkeit -> Systeme und Daten müssen für berechtigte Benutzer verfügbar bleiben
Transparenz & Nachvollziehbarkeit -> Wer greift wann auf was zu? (Protokollierung)

 

Wie wird "Schutz der Daten" erreicht?

- Benutzer- /Gruppenrechte (rwx)
- Firewalls
- Verschlüsselung
- Backup-Strategien
- Erweiterte Rechteverwaltung (ACLs)
 

Datenschutz auf Linux-Systemen:

cool

Was sind ACLs?

- Access Control Lists ermöglichen feinere Berechtigungen als das normale (User-Group-Others)-System
- Mann kann zusätzlichen Benutzern oder Gruppen spezifische Rechte auf einzelne Dateien/Verzeichnisse zuweisen

Bsp: 
Normal nur 1 Besitzer + 1 Gruppe + andere Benutzer
Mit ACL: beliebig viele Benutzer und Gruppen mit spezifischen Zugriffsrechten

Was sind wichtige ACL-Kommandos?

"getfacl DATEI" -> Zeigt akteuelel ACLs einer Datei
"setfacl -m u:BENUTZER:rw DATEI" -> Setzt Lese-/Schreibrechte für Benutzer
"setfacl -m g:GRUPPE:r DATEI" -> Setzt Leserechte für Gruppe

"setfacl -x u:BENUTZER DATEI" -> Enfernt spezielle Rechte eines Benutzers
"setfacl -b DATEI" Entfernt alle ACL-Einträge 

Wichtige Details zu ACL:

- ACLs gelten zusätzlich zu den Standardrechten
- Die Maske "mask" begrenzt alle ACL-Einträge und Gruppenrechte
- Ohne ACL-Unterstützung im Dateisystem (ext4, xfs) geht ACL nicht!

- Zum Anzeigen/Setzen der ACL braucht man Root oder Dateibesitzrechte.

Default ACLs für neue Datein in einem Verzeichnis:

cool

Was ist die Aufgabe der ACL-Maske (mask) in einer ACL?

- Setzt eine Obergrenze für die effektiven Rechte, die ACL-Einträge wirklich erhalten dürfen.

Welche Zugriffkontrollmodelle in Linux gibt es?

DAC (Discretionary Access Control):
Zugriff basiert auf der Identität (Benutzer/Gruppe)
Eigentümer entscheidet, wer welche Rechte bekommt
Problem: User können Rechte versehentlich falsch setzen, Angreifer können durch Schwachstellen in Benutzerkontext eindringen
______

MAC (Mandatory Acces Control)
Erweiterung der Zugriffskontrolle
Zentrale Regeln vom Administrator vorgegeben
Benutzer können eigene Rechte nicht umgehen
Jede Datei/Prozess bekommt ein Sicherheitslabel

Unterschied DAC vs. MAC:

DAC -> Benutzer kontrollieren selbst die Rechte ihrer Dateien
MAC -> Administrator definiert zentrale Regeln - Benutzer können diese nicht ändern

Was ist ein Kernel?

- Herzstück des Betriebssystems

- Kommuniziert direkt mit der Hardware und fungiert als Schnittstelle zwischen Software und Hardware. Der Kernel abstrahiert die Hardware und ist zuständig für:

- Hardware-Zugriffe
- Prozesse (Scheduling)
- Dateisysteme
- Netzwerkkommunikation

 

Welche Kerneltypen gibt es?

- Monolithisch -> Alles läuft im Kernel (z.B. Linux)
- Mikrokernel -> Nur das Nötigste läuft im Kernel (z.B. Minix)
- Hybride -> Miischung aus beidem (z.B. NT-Kernel von Windows)

Linux die kernel Version prüfen:

uname -r -> Zeigt Kernel-Version
uname -a -> Zeigt komplette Systeminfo

Was versteht man unter Kernelmodule?

- Erweiterungen des Kernels (z.B. Dateisystemtreiber, Netzwerkmodule)

- Können dynamisch geladen /entladen werden
 

Befehle:

"lsmod" -> geladene Module anzeigen
"modinfo modulename" -> Infos über ein Modul
"modprobel modulname" -> Modul mit Abhängigkeiten laden
"rmmod modulename" -> Modul entladen
"depmod -a" Modu-Abhängigkeiten aktualisieren

Bootprozesse Überblick:

BIOS/UEFI -> Hardwareinitialisierung (POST-Test, Bootorder prüfen)
Bootloader -> lädt Kernel

Kernel -> Initialisiert Hardwaretreiber, startet Init-System
Init-System -> Startet alle Hintergrunddienste und Benutzerprozesse
 

BIOS vs. UEFI

Beides Startsysteme, die beim einschalten des PC's grundlegende Hardware initialisieren.

BIOS -> alte Firmware, begrenzt
UEFI -> moderner, schneller, besserer Support für grosse Festplatten und Netzboot (PXE). Secure Boot
 

Was versteht man unter Bootloader GRUB?

Grand Unified Bootloader
- Aufgaben: Kernel laden, initrd laden, Boot-Menü anzeigen (Multi-Boot möglich)
- Konfiguration: /etc/default/grub, sudo update-grub
 

Was ist Initramfs?

Werden vom Bootloader gestartet!

Initiales Dateisystem (RAM-basiert)
- Enthält wichtige Treiber (z.B. für RAID, LVM) -> nötig, bevor richtiges Root-Dateisystem gemountet werden kann. 

Init-Systeme:

SysVinit -> Alt, serielles Starten von Diensten
systemd -> Neu, parallel, Ereignisgesteuert, Standard

Was ist systemd? (Init-System)

- Startet und verwaltet alel Dienste (Units) ab Kernel-Start

- PID 1 = erster Prozess nach Kernel
- Verwaltung durch systemctl
- Targets (anstatt Runlevel)

Wichtige systemd-Kommandos:

"systemctl list-units" -> aktive Units anzeigen
"systemctl start dienst" -> startet Dienst
"systemctl stop dienst" -> stoppt Dienst
"systemctl restart dienst" -> starte Dienst neu
"systemctl enable dienst" -> Dienst beim Boot aktivieren
"systemctl disable dienst" -> Dienst deaktivieren
"systemctl status dienst" -> status von Dienst anzeigen
"systemctl list-timers" -> aktive Timer anzeigen
"systemctl get-default" -> anzeigen vom aktuellen Target

Targets in systemd (Vergelichbar mit Runleveln):

Vordefinierte Betriebszustände von Linux-System, die festgelegen, welche Dienste gestartet oder gestoppt sind.

shutdown.target -> Allew sauber herunterfahren

multi-user.target -> System ohne Grafikoberfläche
graphical.target -> System mit grafischer Oberfläche

rescue.target -> Rettungsmodus (Single-User-Modus)

emergency.target -> Nur minimale Shell, fast nichts gestartet

Log-Managemetn mit journalctl:

"journalctl" -> Alle Logs anzeigen
"journalctl -u dienst" -> Logs eines Dienstes anzeigen
"journalctl -f" -> Love-Logs (follow)
"journalctl -k" -> Nur Kernel-Logs

Was ist ein Prozess?

- Jeder laufende Task/Programm ist ein Prozess

Typen:

Parent -> Starte andere Prozesse
Child -> Wird von Parent gestartet
Daemon -> Hintergrundprozess
Zombie -> Beendeter Prozess, noch nicth bereinigt
Orphan -> Elternloser Prozess