<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Security on Blog of a Chaos Engineer</title><link>https://blog.mh.s3c-it.de/tags/security/</link><description>Recent content in Security on Blog of a Chaos Engineer</description><generator>Hugo</generator><language>de-de</language><copyright>by Mario Hölscher</copyright><lastBuildDate>Sun, 12 Apr 2026 10:06:47 +0000</lastBuildDate><atom:link href="https://blog.mh.s3c-it.de/tags/security/index.xml" rel="self" type="application/rss+xml"/><item><title>Keycloak mit Docker installieren: Die ultimative Schritt-für-Schritt Anleitung</title><link>https://blog.mh.s3c-it.de/post/keycloak-mit-docker-installieren/</link><pubDate>Tue, 17 Feb 2026 00:00:00 +0000</pubDate><guid>https://blog.mh.s3c-it.de/post/keycloak-mit-docker-installieren/</guid><description>&lt;h2 id="keycloak-installieren-dein-sicherer-hafen-für-identity--access-management">Keycloak installieren: Dein sicherer Hafen für Identity &amp;amp; Access Management&lt;/h2>
&lt;p>Du bist es leid, dich durch ein Labyrinth aus Passwörtern zu schlängeln? Dein System sieht aus, als hätte ein kleiner T-Rex dort ein Picknick veranstaltet? Dann ist Keycloak genau das Richtige für dich. Diese Open-Source-Lösung ist wie ein gut organisiertes Büro für deine Benutzerverwaltung (Identity and Access Management, IAM) – sicher, effizient und leicht zu handhaben. In diesem Guide zeigen wir dir, wie du Keycloak mit Docker einrichtest, damit du dich auf das Wesentliche konzentrieren kannst.&lt;/p></description></item><item><title>Ansible Playbook: SELinux auf Enforcing setzen und Nodes sicher neustarten</title><link>https://blog.mh.s3c-it.de/post/ansible-selinux-enforcing-reboot/</link><pubDate>Thu, 16 Feb 2023 07:57:22 +0100</pubDate><guid>https://blog.mh.s3c-it.de/post/ansible-selinux-enforcing-reboot/</guid><description>&lt;h2 id="ansible-snippet-selinux-enforcingyaml">Ansible Snippet: selinux-enforcing.yaml&lt;/h2>
&lt;p>Sicherheit ist bei Linux-Servern oberstes Gebot. Die Aktivierung von SELinux (Security-Enhanced Linux) im &lt;code>enforcing&lt;/code>-Modus ist ein wichtiger Schritt zur Absicherung.&lt;/p>
&lt;p>Das folgende Ansible-Playbook demonstriert, wie die SELinux-Konfiguration auf allen Ziel-Hosts automatisiert angepasst wird. Zudem zeigt es den Einsatz des &lt;code>serial: 1&lt;/code>-Parameters, um Nodes geordnet nacheinander (und nicht zeitgleich) neu zu starten. Dies stellt sicher, dass deine Dienste hochverfügbar bleiben.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" class="chroma">&lt;code class="language-yaml" data-lang="yaml">&lt;span class="line">&lt;span class="cl">&lt;span class="nn">---&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w">&lt;/span>- &lt;span class="nt">hosts&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">all&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">user&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">root&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">become_user&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">root&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">become&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="kc">yes&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="c"># Der Serial Mode (serial: 1) führt das Playbook Host für Host aus,&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="c"># was bei Neustarts von Clustern extrem wichtig ist.&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">serial&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="m">1&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">tasks&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">Edit SElinux-Config to Enforcing&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">lineinfile&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">path&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">/etc/selinux/config&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">regexp&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="s1">&amp;#39;^SELINUX=&amp;#39;&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">line&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">SELINUX=enforcing&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> 
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">Reboot Host with Defaults&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">reboot&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> 
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>- &lt;span class="nt">name&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w"> &lt;/span>&lt;span class="l">Wait for Host to be Available again&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;span class="line">&lt;span class="cl">&lt;span class="w"> &lt;/span>&lt;span class="nt">wait_for_connection&lt;/span>&lt;span class="p">:&lt;/span>&lt;span class="w">
&lt;/span>&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="zusammenfassung-der-ansible-module">Zusammenfassung der Ansible-Module&lt;/h3>
&lt;ul>
&lt;li>&lt;strong>lineinfile&lt;/strong>: Eignet sich hervorragend, um einzelne Konfigurationszeilen verlässlich anzupassen (hier: &lt;code>/etc/selinux/config&lt;/code>).&lt;/li>
&lt;li>&lt;strong>reboot&lt;/strong>: Führt einen geordneten Neustart des Systems durch, falls dies nach Systemanpassungen wie SELinux-Änderungen oder Kernel-Updates nötig ist.&lt;/li>
&lt;li>&lt;strong>wait_for_connection&lt;/strong>: Lässt den Ansible-Controller pausieren, bis der neugestartete Server wieder per SSH erreichbar ist, bevor mit dem nächsten Host im &lt;code>serial&lt;/code>-Batch fortgefahren wird.&lt;/li>
&lt;/ul></description></item></channel></rss>