Benutzer-Werkzeuge

Webseiten-Werkzeuge


infrastruktur:container:keycloak3

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
infrastruktur:container:keycloak3 [03.08.2025 13:53] – [Tabelle] Joniinfrastruktur:container:keycloak3 [18.01.2026 13:53] (aktuell) Joni
Zeile 2: Zeile 2:
  
 | Verantwortung  | Malte, bruttosozial                 | | Verantwortung  | Malte, bruttosozial                 |
-| Container      | keycloak3                           |+| Container      | keycloak03                           |
 | W. Ports       | keine                               | | W. Ports       | keine                               |
 | OS             | Debian 12.11                         | | OS             | Debian 12.11                         |
Zeile 8: Zeile 8:
 | Zustand        | Testbetrieb                         | | Zustand        | Testbetrieb                         |
  
-{{tag>infrasystem container magrathea ldapconnected malte ssoenabled+{{tag>infrasystem container magrathea malte ssoenabled ldapconnected
 }} }}
  
Zeile 19: Zeile 19:
 ===== Services==== ===== Services====
 ^ Serviceübersicht  ^ Version                 ^ ^ Serviceübersicht  ^ Version                 ^
-| Keycloak          | 26.3.                 |+| Keycloak          | 26.5.                 |
 | Postgresql        | Debian 15.13-0+deb12u1  | | Postgresql        | Debian 15.13-0+deb12u1  |
 +
 +==== Java ====
 +Momentan wird auf dem Server OpenJDK 21 verwendet.
 +
 +Installationsprozess von OpenJDK 21:
 +<code>
 +wget https://download.java.net/java/GA/jdk21.0.2/f2283984656d49d69e91c558476027ac/13/GPL/openjdk-21.0.2_linux-x64_bin.tar.gz
 +tar xvf openjdk-21.0.2_linux-x64_bin.tar.gz
 +mv jdk-21.0.2/ /usr/lib/jvm/
 +update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk-21.0.2/bin/java
 +update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk-21.0.2/bin/javac
 +</code>
 +
  
 ====Keycloak=== ====Keycloak===
 Mehr über Keycloak kann man auf deren Website unter https://www.keycloak.org/ finden. Mehr über Keycloak kann man auf deren Website unter https://www.keycloak.org/ finden.
 +
 +Anwendung mit Konfiguration liegt in `/opt/keycloak-26.5.0`
 +
 +=== Konfiguration ===
 +siehe https://git.chaotikum.org/chaotikum/keycloak/-/tree/master/keycloak26
 +
 +Der "Chaotikum"-Realm dient als Haupt-Realm, in dem die Clients konfiguriert und die User föderiert sind.
 +
 +==Themes==
 +Themes sind im gitlab versioniert:
 +https://git.chaotikum.org/chaotikum/keycloak/-/tree/master/keycloak26/themes/chaotikum?ref_type=heads
 +Das theme liegt unter /keycloak-26.5.0/themes/chaotikum
 +
 +=== User-Konfiguration ===
 +Keycloak läuft mit dem "keycloak" user (siehe Service-Konfiguration).
 +
 +== User-Einrichtung ==
 +<code>
 +useradd keycloak
 +chown keycloak:keycloak /opt/keycloak-26.3.2/ -R
 +chmod g=rx /opt/keycloak-26.5.0/ -R
 +chmod u=rwx /opt/keycloak-26.5.0/ -R
 +chmod o= /opt/keycloak-26.5.0/ -R
 +</code>
 +
 +=== Service-Konfiguration (systemd) ===
 +<code>
 +[Unit]
 +Description=Keycloak authorization server
 +After=network.target
 +After=postgresql.service
 +
 +[Service]
 +Type=simple
 +Restart=on-failure
 +RestartSec=1
 +User=keycloak
 +ExecStart=/opt/keycloak-26.5.0/bin/kc.sh start
 +
 +[Install]
 +WantedBy=multi-user.target
 +</code>
  
 === LDAP === === LDAP ===
-LDAP-Dinge sollen bestimmt auch passieren.+Als User-Federation-Provider im "Chaotikum"-Realm dient dem Keycloak-System unser [[infrastruktur:container:ldap]]-ServerDer Keycloak-Realm liest User unter der DN "ou=users,dc=chaotikum,dc=org"
  
-=== SSHD ===+====PostgreSQL-Datenbank==== 
 +Für das Keycloak-System wird eine PostgreSQL-Datenbank verwendet. 
 +Dabei wird das debian-Package "postgresql" verwendet. 
 +Der Admin-User ist der default "postgres" user mit geändertem Passwort. 
 + 
 +==Erstellen und konfigurieren von keycloak-Datenbank== 
 +https://www.keycloak.org/server/db 
 + 
 +Keycloak nutzt die Datenbank "keycloak" mit dem User "keycloak"
 +User und Passwort ist in der /opt/keycloak-26.5.0/conf/keycloak.conf eingetragen. 
 +<code> 
 +create database keycloak with encoding 'UTF8' template=template0; 
 +CREATE USER keycloak PASSWORD 'KEYCLOAK_PASSWORD'; 
 +GRANT ALL PRIVILEGES ON DATABASE keycloak to keycloak; 
 +ALTER DATABASE keycloak OWNER TO keycloak; 
 +</code> 
 +==== SSHD ====
 SSH über IPv6 ist weltweit erreichbar. Anmeldung über root und SSH-Key. Keys von Malte und bruttosozial sind hinterlegt. SSH über IPv6 ist weltweit erreichbar. Anmeldung über root und SSH-Key. Keys von Malte und bruttosozial sind hinterlegt.
 +
 +
 +==== Erreichbarkeits-Probleme zu anderen Services ====
 +Wir haben connection timeouts zu mail und ldap bekommen und wir wissen nicht warum. Die IPv6-Adresse so explizit in die /etc/hosts schreiben hat aber funktioniert:
 +
 +<code>
 +2a01:4f8:262:48c2:1::25 mail.chaotikum.net
 +2a01:4f8:262:48c2:1::8 ldap.chaotikum.net
 +</code>
 +
 +
  
infrastruktur/container/keycloak3.1754229224.txt.gz · Zuletzt geändert: von Joni