Zum Inhalt springen

Seminar/Linux/SELinux: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(18 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Titel''' - Kurzbescheibung
'''Seminar/Linux/SELinux''' - SELinux


== Beschreibung ==  
== Beschreibung ==  
Zeile 15: Zeile 15:
=== Vorkenntnisse ===
=== Vorkenntnisse ===
; Notwendig
; Notwendig
* keine
* Linux Grundlagen
* Linux Administration


; Hilfreich
; Hilfreich
<!--
* [[Informationssicherheit]]
* [[Informationssicherheit]]
* [[IT-Sicherheit]]
* [[IT-Sicherheit]]
Zeile 24: Zeile 26:
* [[Qualitätsmanagement]]
* [[Qualitätsmanagement]]
* [[ISO 27001]]
* [[ISO 27001]]
-->


=== Dauer ===
=== Dauer ===
* mind. 24 Unterrichtseinheiten (je 60 min) + Prüfung
; 4 Tage
* 36 Unterrichtseinheiten (je 45min)


=== Seminarzeiten ===
=== Seminarzeiten ===
<!--
{{:Foxwiki:Vorlage/Artikel/Seminar/Seminarzeiten}}
{{:Foxwiki:Vorlage/Artikel/Seminar/Seminarzeiten}}
-->


== Inhalte ==
== Inhalte ==
 
{| class="wikitable gnu options big col1center col3center"
{| class="wikitable col1center col3center options"
! Kapitel !! Thema
!Beschreibung!! Gewichtung
|-
| 01 || [[Linux/SELinux/Grundlagen|Einführung]]
| || 1
|-
| 02 || [[Linux/SELinux/Dateien|Security Context auf Dateien und Verzeichnissen]]
| || 1
|-
| 03 || [[Linux/SELinux/Extended File Attributes|Extended File Attributes]]
| || 1
|-
| 04 || [[Linux/SELinux/Security Context|Security Context]]
| || 1
|-
| 05 || [[Linux/SELinux/File Context|File Context]]
| || 1
|-
| 06 || [[Linux/SELinux/Context Expressions|Context Expressions]]
| || 1
|-
| 07 || [[Linux/SELinux/Security Context von Datei|Security Context von Datei]]
| || 1
|-
| 08 || [[Linux/SELinux/Named File Transitions Rules|Named File Transitions Rules]]
| || 1
|-
| 09 || [[Linux/SELinux/Systemd und Temporäre Verzeichnisse|Systemd und Temporäre Verzeichnisse]]
| || 1
|-
| 10 || [[Linux/SELinux/strace context printing|strace context printing]]
| || 1
|-
| 11 || [[Linux/SELinux/Benutzer Login|Benutzer Login]]
| || 1
|-
| 12 || [[Linux/SELinux/Kategorien|Kategorien]]
| || 1
|-
| 13 || [[Linux/SELinux/Rollen|Rollen]]
| || 1
|-
| 14 || [[Linux/SELinux/Pluggable Authentication Modules|PAM]]
| || 1
|-
| 15 || [[Linux/SELinux/Prozess Context|Prozess Context]]
| || 1
|-
|-
! !! Themenfeld !! Beschreibung !! Gewichtung
| 16 || [[Linux/SELinux/Ansible|SELinux und Ansible]]
| || 1
|-
|-
| 01 || [[Informationssicherheit | Einführung]] || || 1
| 17 || [[Linux/SELinux/Salt|SELinux und Salt]]  
| || 1
|-
|-
| 18 || [[Linux/SELinux/Container|SELinux und Container]]
| || 1
|}
|}


 
<!--
== Prüfung ==
== Prüfung ==
[[IT-Grundschutz/Praktiker/Prüfung|Zertifikatsprüfung]] zum [[Seminar/Grundschutz/Praktiker|Grundschutz-Praktiker]]
[[IT-Grundschutz/Praktiker/Prüfung|Zertifikatsprüfung]] zum [[Seminar/Grundschutz/Praktiker|Grundschutz-Praktiker]]
Zeile 58: Zeile 114:
; Weitere Informationen
; Weitere Informationen
* [[...]]
* [[...]]
-->
<noinclude>
<noinclude>


== Anhang ==
== Anhang ==
=== Verwandte Seminare ===
=== Verwandte Seminare ===
{{Special:PrefixIndex/Seminar}}
; Sicherheit
{{Special:PrefixIndex/Seminar/Sicherheit}}
 
; Linux
{{Special:PrefixIndex/Seminar/Linux}}


=== Skript ===
=== Skript ===


=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/IT-Grundschutz/Praktiker}}


==== Weblinks ====
==== Weblinks ====
</noinclude>
= TMP =
== Inhalte ==
{| class="wikitable gnu options big col1center col3center"
! Kapitel !! Thema !! Gewichtung
|-
| 01 || [[Linux/SELinux/Grundlagen|Einführung]] || 1
|-
| 02 || [[Linux/SELinux/Dateien|Security Context auf Dateien und Verzeichnissen]] || 1
|-
| 03 || [[Linux/SELinux/Extended File Attributes|Extended File Attributes]] || 1
|-
| 04 || [[Linux/SELinux/Security Context|Security Context]] || 1
|-
| 05 || [[Linux/SELinux/File Context|File Context]] || 1
|-
| 06 || [[Linux/SELinux/Context Expressions|Context Expressions]] || 1
|-
| 07 || [[Linux/SELinux/Security Context von Datei|Security Context von Datei]] || 1
|-
| 08 || [[Linux/SELinux/Named File Transitions Rules|Named File Transitions Rules]] || 1
|-
| 09 || [[Linux/SELinux/Systemd und Temporäre Verzeichnisse|Systemd und Temporäre Verzeichnisse]] || 1
|-
| 10 || [[Linux/SELinux/strace context printing|strace context printing]] || 1
|-
| 11 || [[Linux/SELinux/Benutzer Login|Benutzer Login]] || 1
|-
| 12 || [[Linux/SELinux/Kategorien|Kategorien]] || 1
|-
| 13 || [[Linux/SELinux/Rollen|Rollen]] || 1
|-
| 14 || [[Linux/SELinux/Pluggable Authentication Modules|PAM]] || 1
|-
| 15 || [[Linux/SELinux/Prozess Context|Prozess Context]] || 1
|-
| 16 || [[Linux/SELinux/Ansible|SELinux und Ansible]] || 1
|-
| 17 || [[Linux/SELinux/Salt|SELinux und Salt]] || 1
|-
| 18 || [[Linux/SELinux/Container|SELinux und Container]] || 1
|}
== 1 - Grundlagen & Security Context ==
; Ziele
* Verstehen, wie SELinux funktioniert und wie Kontexte aufgebaut sind
* Aufbau von SELinux-Kontexten verstehen, lesen und interpretieren
; Inhalte
* Einführung in SELinux – Nutzen und typische Einsatzszenarien
* Security Context auf Dateien und Verzeichnissen
* Interpretation des SELinux Context Types
* Extended (File) Attributes (xattr) – Namespaces, Verwaltung mit getfattr/setfattr
* Syscall-Analyse mit strace (stat, fstat, getxattr, …)
* Standardverhalten bei mv und cp
* Einfluss von restorecond auf Labels
* SELinux Optionen bei mv, cp, mkdir, tar, rsync
; '''Verlauf'''
Grundlagen, Security Context und Dateikontexte
; 1. Grundlagen und Kontextmodell
* 01 - [[Linux/SELinux/Grundlagen|Einführung]]
:* Nutzen und typische Einsatzszenarien
:* Grundprinzipien von SELinux
* 02 - [[Linux/SELinux/Security Context|Security Context]]
:* Aufbau des Security Context
:* SELinux User, Role, Type und Level
:* Lesen und Interpretieren von Context-Komponenten
; 2. Dateien, Verzeichnisse und Kontextspeicherung
* 03 - [[Linux/SELinux/Dateien|Security Context auf Dateien und Verzeichnissen]]
:* Context auf Dateien, Verzeichnissen und Symlinks
:* Unterschiede bei Objektklassen
* 04 - [[Linux/SELinux/Extended File Attributes|Extended File Attributes]]
:* Speicherung von Labels in [[xattr]]
:* Namespaces und Werkzeuge
* 05 - [[Linux/SELinux/Security Context von Datei|Security Context von Datei]]
:* Kontext eines konkreten Objekts prüfen
:* Zusammenhang zwischen Objekt und Label
* 06 - [[Linux/SELinux/strace context printing|strace context printing]]
:* Relevante Syscalls
:* Sicht auf Context-Zugriffe im Laufzeitverhalten
== 2 Context und Policies ==
File Context Verwaltung & Security Context Policies
; Ziele
* Kontexte gezielt setzen, verwalten und reparieren
* File Contexts korrekt setzen, Policies anpassen und fehlerhafte Labels systematisch reparieren
; Inhalte
* Context setzen mit [[chcon]], [[semanage]], [[setfiles]], [[fixfiles]]
* File Context Regeln – Aufbau, Regex, Prioritätsregeln
* Context Expressions und matchpathcon
* Reparieren von falsch gesetzten Labels mit [[restorecon]] (inkl. SHA256 digests)
* Äquivalenzregeln definieren
* Named File Transition Rules
* Mount-Optionen für SELinux (context=, defcontext=, fscontext=, rootcontext=)
* Systemd und temporäre Verzeichnisse – Context via systemd-tmpfiles
* Lokale Änderungen exportieren/importieren mit [[semanage]]
; '''Verlauf'''
'''File Contexts, Regeln und Label-Management'''
; 1. File Context Regeln und Ausdrücke
* 07 - [[Linux/SELinux/File Context|File Context]]
:* Unterschied zwischen Label und File-Context-Regel
:* Standardzuweisung und persistente Regeln
* 08 - [[Linux/SELinux/Context Expressions|Context Expressions]]
:* Regex-basierte Regeln
:* Auswertung und Priorität
* 09 - [[Linux/SELinux/Named File Transitions Rules|Named File Transitions Rules]]
:* Benannte Übergangsregeln
:* Context-Vergabe bei der Objekterzeugung
; 2. Verwaltung, Reparatur und temporäre Verzeichnisse
* 10 - [[Linux/SELinux/Systemd und Temporäre Verzeichnisse|Systemd und Temporäre Verzeichnisse]]
:* Context-Vorgaben mit ''systemd-tmpfiles''
:* Temporäre Verzeichnisse und Laufzeitobjekte
:* Zusammenhang mit persistenter Label-Verwaltung
== 3 Benutzer, Rollen, Container und Automatisierung ==
; Ziele
* SELinux in realen Betriebsumgebungen einsetzen
; Inhalte
* SELinux User & Role Mapping im Detail
* Linux User - SELinux User Zuordnung
* Erstellen eigener SELinux User
* Arbeiten mit SELinux Roles ([[newrole]], [[sudo]], [[runcon]])
* Verwalten von MCS Categories ([[chcat]], [[setrans]], [[mcstransd]])
* Pluggable Authentication Modules (PAM): [[pam_selinux]], [[pam_sepermit]], [[pam_namespace]]
* Prozess Context, Domain Transitions, Memory Protection, NNP
* SELinux & Ansible – native Module, Custom Policy verteilen
* SELinux & Salt – native Module, Custom Policy verteilen
* SELinux & Container – Podman, MCS, Volumes, udica
* Eigene Container Policy mit udica erstellen
; '''Verlauf'''
'''Benutzer, Rollen, Laufzeitverhalten und Integration'''
; Benutzer, Rollen und Anmeldung
* 11 - [[Linux/SELinux/Benutzer Login|Benutzer Login]]
:* Login-Kontext
:* Zuordnung Linux User zu SELinux User
* 12 - [[Linux/SELinux/Kategorien|Kategorien]]
:* MCS-Kategorien
:* Bereichs- und Kategoriezuordnung
* 13 - [[Linux/SELinux/Rollen|Rollen]]
:* Rollenmodell
:* Rollenwechsel und Rechteabgrenzung
* 14 - [[Linux/SELinux/Pluggable Authentication Modules|PAM]]
:* [[pam_selinux]]
:* [[pam_sepermit]]
:* [[pam_namespace]]
; Prozesse, Automatisierung und Container
* 15 - [[Linux/SELinux/Prozess Context|Prozess Context]]
:* Prozess-Context und Domains
:* Domain Transitions
:* Laufzeitverhalten und Schutzmechanismen
* 16 - [[Linux/SELinux/Ansible|SELinux und Ansible]]
:* Native Module
:* Verteilen von SELinux-Konfiguration
* 17 - [[Linux/SELinux/Salt|SELinux und Salt]]
:* Native Module
:* Verteilen von SELinux-Konfiguration
* 18 - [[Linux/SELinux/Container|SELinux und Container]]
:* Podman, MCS und Volumes
:* Eigene Container-Policy mit ''udica''
{{DISPLAYTITLE:Seminar/SELinux}}


[[Kategorie:Seminar/Linux]]
[[Kategorie:Seminar/Linux]]
[[Kategorie:Seminar/Sicherheit]]
[[Kategorie:Seminar/Sicherheit]]
</noinclude>

Aktuelle Version vom 13. Juni 2026, 09:37 Uhr