OpenBSD Grundlagen

OpenBSD Grundlagen vermitteln technisches Verständnis für ein sicherheitsorientiertes Betriebssystem. Von Installation über Systemverwaltung bis zu pf-Firewall und pledge/unveil – praxisnah erklärt für erfahrene Linux-Nutzer und sicherheitsbewusste Administratoren.

OpenBSD verstehen - nicht nur installieren

OpenBSD aktiviert nach Installation nur SSH und cron - alle anderen Services bleiben deaktiviert. Das System startet in 12 Sekunden auf durchschnittlicher Hardware mit minimalem Speicherverbrauch. Die Kernel-Konfiguration enthält keine experimentellen Features oder ungetesteten Code - jede Zeile durchläuft manuelle Code-Audits.

Diese Artikelserie erklärt die Eigenheiten von OpenBSD für Linux-erfahrene Nutzer, die von anderen Systemen kommen oder tieferes Systemverständnis entwickeln möchten. Die Grundlagen unterscheiden sich fundamental von Linux: pkg_add statt apt, pf statt iptables, rcctl statt systemd, unveil/pledge statt SELinux.

Was macht OpenBSD besonders?

Secure by Default bedeutet minimale Angriffsfläche durch bewusste Reduktion. Der Kernel läuft ohne loadbare Module - alle Treiber kompilieren direkt ins System. W^X (Write XOR Execute) verhindert Code-Injection durch strikte Speicher-Protection. Privilege Separation trennt Dienste in isolierte Prozesse mit minimalen Rechten.

Das Base-System enthält alles für Server-Betrieb: httpd, smtpd, relayd, ntpd. Keine externe Repository-Dependencies für Kern-Services. Updates erfolgen über syspatch für Security-Fixes, sysupgrade für Release-Wechsel. Das Ports-System kompiliert Software aus verifizierten Quellen - signierte Binär-Pakete als Alternative.

OpenBSD veröffentlicht halbjährlich neue Releases mit jeweils einem Jahr Support. Die Entwickler folgen keinen Trends - Features entstehen nur bei technischer Notwendigkeit. RAID-Implementierung (softraid) existiert seit Jahren stabil, während Linux zwischen mdadm, LVM-RAID und btrfs-RAID wechselt.

Der systematische Aufbau

Installation läuft über Textdialog mit klaren Fragen: Hostname, Netzwerk, Partitionierung, Sets. Der Installer basiert auf Shell-Skripten - jeder Schritt bleibt nachvollziehbar und modifizierbar. Automatische Partitionierung erstellt sinnvolle Defaults: separate /tmp, /var, /usr, /home mit Softdep und NoExec wo sinnvoll.

Paketverwaltung unterscheidet Base-System und Packages. pkg_add installiert signierte Pakete, pkg_info zeigt Abhängigkeiten, pkg_delete entfernt sauber. Das Ports-System kompiliert aus Quellen mit optimierten CFLAGS. Signaturen verifizieren jeden Download gegen öffentliche Schlüssel aus dem Base-System.

pf-Firewall arbeitet zustandsorientiert mit klarer Syntax: pass/block, in/out, quick, on interface. Tables speichern dynamische IP-Listen, Anchors ermöglichen modulare Regelwerke. NAT und Load-Balancing integrieren direkt ins Firewall-Regelwerk ohne separate Tools.

Für wen ist diese Serie?

Die Artikel richten sich an technisch versierte Nutzer mit Linux-Erfahrung:

Linux-Migranten, die OpenBSD’s Sicherheitsarchitektur verstehen möchten. Warum funktioniert Speicher-Protection anders? Weshalb fehlen Container-Technologien? Wie ersetzt vmm(8) KVM-Virtualisierung?

Sicherheitsbewusste Administratoren, die minimale Angriffsflächen aufbauen wollen. Welche Dienste aktiviert OpenBSD standardmäßig? Wie funktioniert privilege separation in der Praxis? Was unterscheidet pledge/unveil von anderen Sandbox-Mechanismen?

Systemd-Kritiker, die alternative Init-Systeme verstehen möchten. Wie verwaltet rcctl Dienste ohne komplexe Unit-Files? Weshalb startet OpenBSD schneller als systemd-Systeme? Wie funktionieren Dependencies ohne declarative Targets?

Netzwerk-Spezialisten, die pf-Konzepte lernen wollen. Packet Filter arbeitet anders als Netfilter - aber zugrundeliegende Prinzipien bleiben identisch. Zustandsbasierte Filterung, NAT, Load-Balancing mit klarer Syntax.

Die 11 Artikel im Überblick

System-Grundlagen

OpenBSD Einleitung: Sicherheit beginnt im Design

OpenBSD Einleitung: Sicherheit beginnt im Design

Designprinzipien, Secure by Default, Code-Audits, OpenBSD-Philosophie und fundamentale Unterschiede zu Linux-Systemen.
Installation und erste Schritte: System einrichten

Installation und erste Schritte: System einrichten

Download, Signaturprüfung, Installationsdialog, Partitionierung, Sets-Auswahl, rc.conf-Konfiguration für ersten System-Start.

Konfiguration und Verwaltung

Systemkonfiguration: Netzwerk, Zeit, Berechtigungen

Systemkonfiguration: Netzwerk, Zeit, Berechtigungen

Netzwerk-Setup mit hostname.if, Zeitzone, doas-Konfiguration, sysctl-Tuning, Filesystem-Struktur und lokale Anpassungen.
Paketverwaltung: pkg_add, Updates, Ports

Paketverwaltung: pkg_add, Updates, Ports

pkg_add/pkg_delete/pkg_info, Signaturverifikation, Ports-System, Quellcode-Builds, Package-Flavors und Update-Strategien.

Sicherheit und Netzwerk

Sicherheitsarchitektur: pledge, unveil, W^X

Sicherheitsarchitektur: pledge, unveil, W^X

Privilege Separation, Securelevels, W^X-Protection, pledge/unveil-Syscalls, Randomisierung, Kryptographie-Stack und Kernel-Härtung.
Netzwerk und Routing: Interfaces, IPv6, dhcpd

Netzwerk und Routing: Interfaces, IPv6, dhcpd

Interface-Konfiguration, Bridges, VLANs, Routing-Daemon, dhcpd-Setup, NTP-Integration, IPv6-Konfiguration und Troubleshooting.
Firewall und pf: Paket-Filterung mit Packet Filter

Firewall und pf: Paket-Filterung mit Packet Filter

pf.conf-Syntax, Tables, Anchors, NAT-Konfiguration, Load-Balancing, Redundanz, Policy-Design, Logging und Performance-Monitoring.

Dienste und Betrieb

Dienste und Daemons: httpd, smtpd, relayd

Dienste und Daemons: httpd, smtpd, relayd

Base-System-Dienste: httpd-Webserver, smtpd-Mailserver, relayd-Proxy, ntpd-Zeitsynchronisation, syslogd-Logging und Service-Hardening.
Benutzer und Automation: Verwaltung, cron, rc-Skripte

Benutzer und Automation: Verwaltung, cron, rc-Skripte

Benutzerverwaltung, Gruppen, Login-Klassen, chroot-Isolation, doas vs sudo, rcctl-Dienstverwaltung, cron-Jobs, Automatisierungs-Strategien.

Virtualisierung und Wartung

Virtualisierung mit vmm: Native Hypervisor-Lösung

Virtualisierung mit vmm: Native Hypervisor-Lösung

vmm(4)-Hypervisor, vmd(8)-Daemon, vmctl-Management, VM-Netzwerke, Storage-Optionen, Unterschiede zu KVM/Docker und Performance.
Backups und Wartung: dump, syspatch, Monitoring

Backups und Wartung: dump, syspatch, Monitoring

dump/restore-Backups, tar/rsync-Alternativen, Snapshots, Integritätsprüfung, syspatch-Updates, sysupgrade-Releases, System-Monitoring.

Technischer Fokus und Abgrenzung

Die Serie konzentriert sich auf OpenBSD-spezifische Systemverwaltung. Diese Grundlagen unterscheiden sich fundamental von Linux-Distributionen.

Behandelte Kernthemen:

  • OpenBSD Base-System und Philosophie
  • pkg_add-Paketverwaltung vs. Linux-Package-Manager
  • pf-Firewall vs. iptables/nftables
  • rcctl-Dienstverwaltung vs. systemd
  • pledge/unveil vs. SELinux/AppArmor
  • vmm-Virtualisierung vs. KVM/Docker

Verwandte Grundlagen-Serien:

OpenBSD-Grundlagen bilden das Fundament für spezialisierte Themen:

  • OpenBSD als Desktop: X-System, Fenstermanager, Office-Tools (separate Serie)
  • Netzwerk-Grundlagen: TCP/IP-Konzepte, die für alle Systeme gelten (online)
  • Backup-Strategien: Übergreifende Backup-Konzepte (online)

Andere Betriebssystem-Grundlagen:

  • Debian: APT-System, systemd, Stable-Release-Modell (in Überarbeitung)
  • Arch: pacman, Rolling-Release, PKGBUILD-System (geplant)

Typische OpenBSD-Setups

Die OpenBSD-Grundlagen ermöglichen systematische Server-Konfiguration. Ein typisches Setup verwendet:

  • Base-System-Dienste: httpd für Webserver, smtpd für Mail, relayd als Reverse Proxy
  • pf-Firewall: Zustandsbasierte Filterung, NAT für private Netzwerke, Load-Balancing
  • Minimale Packages: PostgreSQL, Redis nur bei Bedarf - Base-System deckt Standard-Anforderungen
  • vmm-Virtualisierung: Isolierte VMs für verschiedene Services oder Test-Umgebungen

OpenBSD-httpd läuft nativ mit FastCGI-Support für PHP/Python-Anwendungen. smtpd verarbeitet E-Mail ohne komplexe Postfix-Konfiguration. relayd terminiert SSL und leitet Requests an Backend-Services weiter - alles aus dem Base-System ohne externe Dependencies.

Aufbau-Kontinuität und Referenz-Funktion

Jeder Artikel baut systematisch auf vorherigen auf, funktioniert aber auch als eigenständige Referenz. Spätere Service-Installationen verweisen gezielt auf relevante Grundlagen:

“Die Paketverwaltung aus Artikel 4 zeigt pkg_add-Besonderheiten für PostgreSQL-Installation.”

“Firewall-Konzepte aus Artikel 7 erklären pf-Regeln für Service-Isolation.”

“Dienste-Management aus Artikel 8 demonstriert rcctl-Integration für eigene Services.”

Diese Struktur vermeidet Redundanz zwischen Grundlagen und Service-spezifischen Anleitungen. Die OpenBSD-Konzepte bilden eine solide Basis für eigenständige Problemlösung.

Deutsche Marktlücke

Im deutschsprachigen Raum existieren praktisch keine aktuellen OpenBSD-Ressourcen. Englische Dokumentation (man-Pages, FAQ) bleibt für viele Handwerksbetriebe und kleine Unternehmen eine Barriere. Diese Artikelserie schließt diese Lücke mit technisch fundierten, praxisorientierten Erklärungen auf Deutsch.