Um die kontinuierliche BS-Konformität Ihrer Umgebung zu gewährleisten, vernetzen Sie als Compliance Officer Cloud Guardrails mit dem SaltStack-Idem-Plug-In.
Mit dem SaltStack-Idem-Plug-In können Sie sicherstellen, dass Ihre Umgebung den konsensbasierten Best Practices und Standards von CIS entspricht.
Das SaltStack-Idem-Plug-In macht statusbehaftete Programmierkonstrukte verfügbar, die Aufgaben vereinfachen, wie z. B. das Erzwingen des Zustands einer Anwendung. Durch die Vernetzung von Cloud Guardrails mit dem SaltStack-Idem-Plug-In können Sie in der SaltStack-Umgebung Folgendes erstellen, löschen und beschreiben:
- Ein Ziel
- Eine Richtlinie
Das SaltStack-Idem-Plug-In kann Richtlinieninformationen erfassen, die kontinuierliche Erzwingung in Ihrer Infrastruktur unterstützen und SLS-Dateien ausführen, die Standardisierungen erzwingen.
BS-Konformitätsaktionen | Funktionsweise des SaltStack-Idem-Plug-Ins |
---|---|
Erfassen Sie Informationen aus SaltStack-Zielen und SaltStack-Richtlinien. | Erfasst Informationen über:
|
Führen Sie SLS-Dateien aus, die Standardisierungen von SaltStack SecOps erzwingen. |
|
Das SaltStack-Idem-Plug-In kann mit allen verfügbaren Benchmarks und Prüfungen in SaltStack arbeiten.
Bei diesem Verfahren wird davon ausgegangen, dass Sie SaltStack Config und die Salt-Minions bereits konfiguriert haben und dass die Automatisierung für die Bereitstellung der Salt-Minions, einschließlich Public Cloud-Körnung, und deren Registrierung abgeschlossen ist.
Voraussetzungen
- Sie sollten mit der SaltStack-Architektur vertraut sein. Weitere Informationen finden Sie in der Dokumentation zur SaltStack Config-Systemarchitektur.
- Wenn Sie die lokale Version von SaltStack Config verwenden, vergewissern Sie sich, dass Ihre SaltStack Config-Umgebung mit den Minions mit Ihrer vRealize Automation-Instanz vernetzt ist, sodass Sie sie über Cloud Guardrails verwenden können. Weitere Informationen finden Sie in der Dokumentation zur lokalen SaltStack-Installation unter Installieren und Konfigurieren von SaltStack Config.
- Wenn Sie die Cloud-Version von SaltStack Config verwenden, vergewissern Sie sich, dass Ihre SaltStack Config-Umgebung mit den Minions mit Ihrer vRealize Automation-Instanz vernetzt ist, sodass Sie sie über Cloud Guardrails verwenden können. Weitere Informationen finden Sie in der Dokumentation zur Cloud-Version der SaltStack Config-Installation unter Erstellen einer SaltStack Config-Integration in vRealize Automation Cloud.
Prozedur
Ergebnisse
Sie haben das SaltStack-Idem-Plug-In verwendet, um die kontinuierliche BS-Konformität Ihrer Umgebung sicherzustellen.
Beispiel: Erstellen einer SaltStack-Erzwingung mithilfe dieser SLS-Vorlagen
Code für eine Erzwingungsrichtlinie:
META: name: Create Saltstack Enforcement provider: SALTSTACK category: SECURITY description: Create target in saltstack, create policy over this target, add CIS benchmark checks on the policy and run remediation {% set tgt_name = params.get('tgt_name', 'CentOS_Target') %} {% set policy_name = params.get('policy_name', 'CIS_Benchmark_policy') %} {% set tgt_type = params.get('tgt_type', 'grain') %} {% set tgt_value = params.get('tgt_value', 'os:CentOS') %} {% set remediate = params.get('remediate', true) %} {{ tgt_name }}-target: META: name: Create Target parameters: tgt_name: description: Name of the target name: Target Name uiElement: text tgt_type: description: Type of the target name: Target Type uiElement: select options: - name: Grain value: grain - name: List value: list - name: Glob value: glob - name: Compound value: compound tgt_value: description: Value of target type name: Target Value uiElement: text saltstack.target.present: - name: {{ tgt_name }} - desc: idem sls - tgt_type: {{ tgt_type }} - tgt: {{tgt_value}} {{ policy_name }}-policy: META: name: Create Policy on target parameters: policy_name: description: Name of the policy name: Policy Name uiElement: text tgt_name: description: Name of the target name: Target Name uiElement: text remediate: description: Whether remediation has to run on policy name: Remediate uiElement: select options: - name: "Yes" value: true - name: "No" value: false saltstack.policy.present: - require: - saltstack.target: {{ tgt_name }}-target - name: {{ policy_name }} - tgt_name: {{ tgt_name }} - remediate: {{ remediate }} - benchmark_names: - "CIS_CentOS_Linux_7_Benchmark_v2.2.0_server_level1-1" - check_names: - "Ensure cron daemon is enabled" - "Ensure access to the su command is restricted" - "Ensure mounting of cramfs filesystems is not enabled"
Code für eine Löschrichtlinie:
META: name: Delete Saltstack policy provider: SALTSTACK category: SECURITY description: Delete Saltstack policy {% set policy_name = params.get('policy_name', 'CIS_Benchmark_policy') %} {{ policy_name }}-policy: saltstack.policy.absent: - name: {{ policy_name }}
Code für eine Richtlinie zum Löschen eines Ziels:
META: name: Delete Saltstack target provider: SALTSTACK category: SECURITY description: Delete Saltstack target {% set tgt_name = params.get('tgt_name', 'all_minion_target') %} {{ tgt_name }}-target: saltstack.target.absent: - name: {{ tgt_name }}
Nächste Maßnahme
Stellen Sie weiterhin die BS-Konformität Ihrer SaltStack-Umgebung sicher, indem Sie die Vorlagen in Cloud Guardrails ausführen und die gewünschten Zustände überwachen.