────────────────────────────────────────────
📁 File Permissions & Advanced Flags
────────────────────────────────────────────
🔤 Standaardbestandspermissies
────────────────────────────────────────────
Lees (r) = 4
Schrijf (w) = 2
Uitvoeren (x) = 1
Toegepast op: eigenaar / groep / anderen
Instellen via: chmod, umask
Commando Doel
chmod : Wijzig rechten (symbolisch of numeriek).
chown : Verander eigenaar van bestand of directory.
chgrp : Verander groepslidmaatschap van een bestand.
umask : Standaardpermissies bij aanmaken bestanden/directories.
────────────────────────────────────────────
🧩 Speciale bits
────────────────────────────────────────────
Bit Functie
SUID : Programma draait met rechten van eigenaar (meestal root). Bijv. /usr/bin/passwd.
SGID : Bestanden krijgen standaard groep van directory; voor scripts draait met groepsrechten.
Sticky bit : Alleen eigenaar of root mag bestand verwijderen uit de directory (vaak op /tmp).
────────────────────────────────────────────
🛠️ ACL (Access Control Lists)
────────────────────────────────────────────
Commando Functie
getfacl : Bekijk uitgebreide rechten (ACL).
setfacl : Stel rechten in per gebruiker/groep.
Voorbeeld: setfacl -m u:john:rw file.txt
────────────────────────────────────────────
🧱 SELinux (Security-Enhanced Linux)
────────────────────────────────────────────
🧾 Toestandsniveaus
Staat Beschrijving
Enforcing : Beleidsregels worden toegepast.
Permissive : Regels worden gelogd maar niet afgedwongen.
Disabled : SELinux staat uit.
Commando Beschrijving
getenforce : Toont huidige SELinux-modus.
setenforce 1 : Zet enforcing aan.
setenforce 0 : Zet permissive aan.
────────────────────────────────────────────
🔖 Labels en contexten
────────────────────────────────────────────
Tool / Bestand Functie
ls -Z : Toon SELinux-context.
chcon : Wijzig context tijdelijk (niet persistent).
restorecon : Herstel standaardcontext (via policy).
semanage fcontext : Pas permanente context aan.
semanage boolean : Configureer flexibele opties (bijv. httpd_can_network_connect).
setsebool, getsebool : Beheer system booleans.
────────────────────────────────────────────
🏷️ Autorelabel
────────────────────────────────────────────
Wordt gebruikt om alle bestanden opnieuw te labelen bij contextwijziging.
Trigger via: touch /.autorelabel + reboot.
────────────────────────────────────────────
🔐 Policy types
────────────────────────────────────────────
Type Uitleg
Targeted : Alleen specifieke services worden beschermd.
Minimum : Beperkt, alleen essentieel.
────────────────────────────────────────────
🛡️ AppArmor
────────────────────────────────────────────
Kenmerken Uitleg
AppArmor : Profielgebaseerde securitymodule (Ubuntu/ SUSE).
Toepast op Binaire bestanden, op pad gebaseerde bescherming.
Profielen staan in /etc/apparmor.d/
────────────────────────────────────────────
🧰 Overige commando’s
────────────────────────────────────────────
Commando Doel
chattr : Wijzig bestandattributen (bijv. i = immutable).
lsattr : Toon bestandattributen.
audit2allow : Genereert SELinux-beleid op basis van logs (voor troubleshooting).
────────────────────────────────────────────
✅ Samenvatting per domein
────────────────────────────────────────────
Domein Tools / Concepten
Bestandsrechten : chmod, chown, umask, chgrp
ACL’s : getfacl, setfacl
Speciale bits : SUID, SGID, Sticky
SELinux : getenforce, setenforce, chcon, restorecon, semanage
AppArmor : Profielen in /etc/apparmor.d/
System hardening : chattr, lsattr, audit2allow