von der Momentaufnahme zum laufenden Prozess
Compliance Automatisierung mit OpenSCAP verwandelt manuelle, fehleranfällige Checklisten in wiederholbare Scans gegen anerkannte SCAP-Profile. Wer den SCAP Security Guide richtig einsetzt, automatische Remediation-Skripte nutzt und den Prozess über Ansible und oscapd fortlaufend betreibt, macht Compliance zu einem beobachtbaren Betriebszustand statt zur einmaligen Vorbereitung auf ein Audit.
Inhaltsverzeichnis
- 1. Was OpenSCAP und der SCAP Standard sind
- 2. SCAP Security Guide installieren und Profile auswählen
- 3. Den ersten Scan mit oscap durchführen
- 4. Remediation Skripte automatisch generieren und anwenden
- 5. Ergebnisse als HTML und XML Reports auswerten
- 6. OpenSCAP in Ansible Pipelines integrieren
- 7. Continuous Compliance mit oscapd und Scheduling
- 8. Eigene Profile und Tailoring anpassen
- 9. OpenSCAP im Vergleich zu anderen Compliance Tools
- 10. Zusammenfassung
- 11. FAQ
1. Was OpenSCAP und der SCAP Standard sind
OpenSCAP ist die Referenzimplementierung des Security Content Automation Protocol, kurz SCAP, einer Sammlung von Standards des amerikanischen National Institute of Standards and Technology zur maschinenlesbaren Beschreibung von Sicherheitsanforderungen. Compliance Automatisierung mit OpenSCAP bedeutet konkret, dass ein Server nicht mehr manuell gegen eine PDF-Checkliste geprüft wird, sondern automatisiert gegen ein XML-basiertes Profil, das exakt definiert, welcher Zustand als konform gilt.
Der zentrale Baustein für Compliance Automatisierung ist der SCAP Security Guide, kurz SSG, ein von Red Hat und der Community gepflegtes Projekt, das fertige Profile für CIS Benchmark, PCI-DSS, DISA STIG und weitere Standards mitbringt, jeweils für die gängigen Distributionen. Statt jede Kontrolle manuell in ein eigenes Skript zu übersetzen, nutzt man ein bereits durch die Community getestetes und aktuell gehaltenes Profil.
Der Vorteil gegenüber rein manueller Prüfung liegt in der Wiederholbarkeit und Nachvollziehbarkeit. Ein OpenSCAP Scan liefert dieselbe Bewertung, unabhängig davon, wer ihn ausführt, und mit vollständiger Nachverfolgbarkeit, welche Regel geprüft wurde und mit welchem Ergebnis. Diese Eigenschaft macht Compliance Automatisierung mit OpenSCAP zur Grundlage jedes Audits, das über eine reine Momentaufnahme hinausgehen soll.
2. SCAP Security Guide installieren und Profile auswählen
Die Installation für Compliance Automatisierung mit OpenSCAP besteht aus zwei Paketen: dem Scanner selbst und dem Inhaltspaket mit den eigentlichen Profilen. Nach der Installation liegen die SCAP-Datenströme als XML-Dateien im System, aus denen sich einzelne Profile über ihre eindeutige ID auswählen lassen, etwa das CIS Level 1 Server Profil oder ein PCI-DSS spezifisches Profil.
Wichtig bei der Profilauswahl für Compliance Automatisierung ist, das Profil exakt zur eingesetzten Distributionsversion passend zu wählen. Ein SSG-Datenstrom für Debian 12 enthält andere Regeln und Pfade als einer für Ubuntu 24.04, selbst wenn beide Distributionen ähnlich aufgebaut sind. Ein falsch gewähltes Profil führt zu irreführenden Fehlschlägen bei Regeln, die auf dem tatsächlichen System gar nicht zutreffen.
#!/usr/bin/env bash
# Install OpenSCAP and SCAP Security Guide, list available profiles
set -euo pipefail
# Debian/Ubuntu
apt-get update
apt-get install -y openscap-scanner ssg-debian
# RHEL/Rocky Linux
# dnf install -y openscap-scanner scap-security-guide
# List all profiles available in the datastream for this distribution
oscap info /usr/share/xml/scap/ssg/content/ssg-debian12-ds.xml | grep -A1 "Profile"
3. Den ersten Scan mit oscap durchführen
Der erste Scan für Compliance Automatisierung sollte immer im reinen Bewertungsmodus laufen, ohne automatische Korrektur. Der Befehl oscap xccdf eval mit den Parametern --results und --report erzeugt eine maschinenlesbare XML-Datei und einen für Menschen lesbaren HTML-Report, der jede geprüfte Regel mit Status Pass, Fail, Not Applicable oder Error auflistet.
Ein oft übersehener Aspekt der Compliance Automatisierung mit OpenSCAP ist die Interpretation von "Error"-Status. Anders als "Fail" bedeutet "Error", dass die Regel technisch nicht ausgewertet werden konnte, etwa weil ein benötigtes Kommando fehlt oder ein Pfad nicht existiert. Diese Fälle brauchen manuelle Nachprüfung, da sie weder als konform noch als nicht konform automatisch eingeordnet werden können.
#!/usr/bin/env bash
# Read-only compliance assessment against CIS Level 1 Server profile
set -euo pipefail
oscap xccdf eval \
--profile xccdf_org.ssgproject.content_profile_cis_level1_server \
--results /var/compliance/scap-results-$(date +%Y%m%d).xml \
--report /var/compliance/scap-report-$(date +%Y%m%d).html \
/usr/share/xml/scap/ssg/content/ssg-debian12-ds.xml
echo "Scan complete, exit code reflects overall compliance status"
echo "0 = all rules passed, 2 = at least one rule failed"
4. Remediation Skripte automatisch generieren und anwenden
Der Kernvorteil von Compliance Automatisierung mit OpenSCAP gegenüber reiner manueller Bewertung ist die Fähigkeit, aus jedem fehlgeschlagenen Regelsatz ein direkt ausführbares Remediation-Skript zu generieren. Der Befehl oscap xccdf generate fix erzeugt wahlweise ein Bash-Skript oder ein Ansible-Playbook, das exakt die fehlgeschlagenen Kontrollen adressiert, ohne bereits konforme Einstellungen erneut anzufassen.
Trotz dieser Automatisierung gilt für Compliance Automatisierung dieselbe Vorsicht wie bei jeder Härtungsmaßnahme: generierte Remediation-Skripte gehören zuerst in eine Staging-Umgebung, nicht direkt auf ein Produktivsystem. Manche Remediation-Regeln, etwa das Deaktivieren bestimmter Kernel-Module, können Funktionalität beeinträchtigen, die im spezifischen Einsatzkontext tatsächlich benötigt wird.
#!/usr/bin/env bash
# Generate an Ansible remediation playbook from failed rules, review before applying
set -euo pipefail
RESULTS="/var/compliance/scap-results-$(date +%Y%m%d).xml"
# Generate Ansible playbook fixing only the failed controls
oscap xccdf generate fix \
--profile xccdf_org.ssgproject.content_profile_cis_level1_server \
--fix-type ansible \
--output remediation-playbook.yml \
"$RESULTS"
echo "Review remediation-playbook.yml before applying to any host"
echo "Recommended workflow: test in staging, then:"
echo "ansible-playbook remediation-playbook.yml -i inventory --limit staging --check"
5. Ergebnisse als HTML und XML Reports auswerten
Für Compliance Automatisierung sind zwei Ausgabeformate relevant, mit unterschiedlichem Zweck. Der HTML-Report ist für Menschen gedacht, mit farblich markierten Ergebnissen, Kontrollbeschreibung und Remediation-Hinweis pro Regel, ideal für ein manuelles Review-Meeting oder eine Auditor-Vorlage. Die XML-Ergebnisdatei ist für die Weiterverarbeitung durch Werkzeuge gedacht, etwa um einen Trend über die Zeit in ein zentrales Dashboard zu übertragen.
Ein wichtiger Kennwert bei der Auswertung ist die Scoring-Prozentzahl, die OpenSCAP aus dem Verhältnis von Pass zu Fail berechnet. Diese Zahl allein ist aber nur eine grobe Orientierung für Compliance Automatisierung. Entscheidender ist die Liste der konkret fehlgeschlagenen Kontrollen mit ihrer jeweiligen Kritikalität, weil ein einzelnes hochkritisches Fail schwerer wiegt als zehn niedrigpriore Fails zusammen.
6. OpenSCAP in Ansible Pipelines integrieren
Nachhaltige Compliance Automatisierung integriert den OpenSCAP Scan als festen Schritt in die Deployment-Pipeline, nicht als isolierte, manuell angestoßene Aktion. Nach jedem Ansible-Playbook-Lauf, der Systemkonfiguration ändert, sollte automatisch ein Scan folgen, der prüft, ob die Änderung versehentlich eine Kontrolle aus dem gewählten Profil verletzt hat.
# ansible/playbooks/deploy-with-compliance-gate.yml
# Configuration deployment followed by an automated OpenSCAP compliance gate
- name: Apply application configuration changes
hosts: webservers
roles:
- php_fpm_config
- nginx_vhost_config
- name: Run OpenSCAP compliance check after configuration changes
hosts: webservers
tasks:
- name: Execute compliance scan
command: >
oscap xccdf eval
--profile xccdf_org.ssgproject.content_profile_cis_level1_server
--results /var/compliance/scap-results-{{ ansible_date_time.date }}.xml
/usr/share/xml/scap/ssg/content/ssg-debian12-ds.xml
register: scan_result
failed_when: scan_result.rc == 1
- name: Fail pipeline if compliance evaluation errored
fail:
msg: "OpenSCAP evaluation encountered an error, review before proceeding"
when: scan_result.rc == 1
7. Continuous Compliance mit oscapd und Scheduling
Für vollautomatisierte, wiederkehrende Compliance Automatisierung ohne externe Pipeline bietet sich oscapd an, ein Daemon, der geplante Scans direkt auf dem Zielsystem ausführt und die Ergebnisse zentral über eine definierte Schnittstelle bereitstellt. Alternativ genügt für kleinere Umgebungen ein systemd Timer, der regelmäßig oscap xccdf eval ausführt und die Ergebnisse an ein zentrales Log- oder Monitoring-System weiterleitet.
Entscheidend für echte Compliance Automatisierung ist, dass die Ergebnisse nicht nur erzeugt, sondern auch aktiv überwacht werden. Eine sinnvolle Eskalationsregel ist, bei neu aufgetretenen Fails, die im vorherigen Scan noch nicht vorhanden waren, sofort eine Benachrichtigung auszulösen, statt auf die nächste geplante manuelle Durchsicht zu warten.
8. Eigene Profile und Tailoring anpassen
Standard-Profile aus dem SCAP Security Guide passen selten zu hundert Prozent auf jede reale Umgebung. Für Compliance Automatisierung, die auch organisationsspezifische Ausnahmen berücksichtigen muss, bietet OpenSCAP das Konzept des Tailoring: Eine separate XML-Datei referenziert das Basisprofil und überschreibt einzelne Regeln, etwa um eine bestimmte Kontrolle als nicht anwendbar zu markieren, mit dokumentierter Begründung im Tailoring-File selbst.
{
"tailoring_metadata": {
"base_profile": "xccdf_org.ssgproject.content_profile_cis_level1_server",
"organization": "Mironsoft Hosting Fleet",
"created": "2026-07-30",
"excluded_rules": [
{
"rule_id": "xccdf_org.ssgproject.content_rule_partition_for_var_tmp",
"reason": "Fixed disk layout from provider image, repartitioning risks downtime",
"compensating_control": "noexec,nosuid mount options applied to /var/tmp instead",
"approved_by": "ops-lead",
"review_date": "2026-10-30"
}
]
}
}
Diese dokumentierte Ausnahme bleibt Teil der Compliance Automatisierung, wird aber nachvollziehbar von einem echten Prüfungsversagen unterschieden. Ein Tailoring-File sollte, wie jede andere Konfiguration auch, versioniert und über die gleiche Ansible-Pipeline verteilt werden wie das Basisprofil selbst.
9. OpenSCAP im Vergleich zu anderen Compliance Tools
Die folgende Tabelle ordnet OpenSCAP im Vergleich zu anderen verbreiteten Werkzeugen für Compliance Automatisierung unter Linux ein.
| Werkzeug | Lizenz | Remediation | Besonderheit |
|---|---|---|---|
| OpenSCAP + SSG | Quelloffen, kostenlos | Automatisch generierbar | Standardisierte SCAP-Profile, breite Standard-Abdeckung |
| CIS-CAT Pro | Kostenpflichtig | Nur Hinweise, kein Auto-Fix | Historische Trend-Reports inklusive |
| Ansible-Lockdown Rollen | Quelloffen, kostenlos | Direkt in Ansible | Keine eigenständige Bewertung, nur Umsetzung |
| Chef InSpec | Quelloffen, Enterprise kostenpflichtig | Nur Bewertung, kein Auto-Fix | Eigene Ruby-basierte Profil-DSL |
| Kommerzielle Cloud-Compliance-Suiten | Kostenpflichtig | Teils automatisiert | Zentrale Dashboards über Serverflotten hinweg |
OpenSCAP ist damit die einzige quelloffene Lösung, die sowohl standardisierte Bewertung als auch automatisch generierte Remediation aus einer einzigen Compliance Automatisierung Quelle liefert, ohne Lizenzkosten oder Abhängigkeit von einem externen Anbieter.
Mironsoft
Compliance Automatisierung, OpenSCAP-Rollout und Continuous Compliance für Linux Server
Compliance als laufenden Prozess statt Momentaufnahme?
Wir richten OpenSCAP mit passendem SCAP-Profil ein, generieren getestete Remediation-Playbooks und integrieren Continuous Compliance Checks in eure bestehende Deployment-Pipeline.
Profil-Auswahl
Passendes SCAP-Profil je Distribution und Compliance-Ziel
Remediation
Automatisch generierte, in Staging getestete Ansible-Playbooks
Continuous Compliance
Wiederkehrende Scans mit Alerting bei neu aufgetretenen Abweichungen
10. Zusammenfassung
Compliance Automatisierung mit OpenSCAP ersetzt manuelle Checklisten durch wiederholbare, maschinenlesbare Scans gegen anerkannte SCAP-Profile aus dem SCAP Security Guide. Der Prozess umfasst Profilauswahl passend zur Distribution, einen ersten rein bewertenden Scan, automatisch generierte, in Staging getestete Remediation-Skripte, und die Auswertung von HTML- sowie XML-Reports mit Fokus auf kritische Fails statt auf die reine Prozentzahl.
Nachhaltig wird Compliance Automatisierung erst durch Integration in Deployment-Pipelines oder einen dedizierten Daemon wie oscapd, ergänzt um dokumentiertes Tailoring für organisationsspezifische Ausnahmen. Wer diesen Kreislauf etabliert, verwandelt Compliance von einer einmaligen Audit-Vorbereitung in einen laufenden, beobachtbaren Betriebszustand.
Compliance Automatisierung mit OpenSCAP — Das Wichtigste auf einen Blick
SCAP Security Guide
Fertige Profile für CIS Benchmark, PCI-DSS und weitere Standards, passend zur Distribution wählen.
Bewertung vor Remediation
Erster Scan immer rein lesend, generierte Remediation-Skripte zuerst in Staging testen.
Pipeline-Integration
Scan nach jedem Konfigurationsänderungslauf, um versehentliche Compliance-Regressionen zu erkennen.
Tailoring
Organisationsspezifische Ausnahmen dokumentiert im Tailoring-File, versioniert wie jede andere Konfiguration.