From 36cc5f7402d048476ebbcb73828c1cf4757509a2 Mon Sep 17 00:00:00 2001 From: "info@pi-farm.de" Date: Fri, 3 Apr 2026 21:40:15 +0000 Subject: [PATCH] entrypoint.sh aktualisiert --- entrypoint.sh | 71 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 64 insertions(+), 7 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 6a22a5e..3f2b134 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,8 +1,65 @@ -#!/bin/sh -service dbus start +#!/bin/bash +set -e + +# Standardwerte setzen, falls beim Containerstart keine Variablen übergeben wurden +LDAP_URI=${LDAP_URI:-"ldap://10.0.2.123:389"} +LDAP_BASE_DN=${LDAP_BASE_DN:-"dc=pi-farm,dc=de"} +LDAP_BIND_DN=${LDAP_BIND_DN:-"cn=admin,dc=pi-farm,dc=de"} +LDAP_SUDO_GROUP=${LDAP_SUDO_GROUP:-"sudo_users"} +# LDAP_BIND_PASSWORD muss übergeben werden! + +echo ">>> Erstelle SSSD Konfiguration..." +cat < /etc/sssd/sssd.conf +[sssd] +config_file_version = 2 +services = nss, pam, sudo +domains = LDAP + +[domain/LDAP] +id_provider = ldap +auth_provider = ldap +sudo_provider = ldap +chpass_provider = ldap + +ldap_uri = ${LDAP_URI} +ldap_search_base = ${LDAP_BASE_DN} +ldap_sudo_search_base = ou=SUDOers,${LDAP_BASE_DN} + +ldap_default_bind_dn = ${LDAP_BIND_DN} +ldap_default_authtok = ${LDAP_BIND_PASSWORD} + +ldap_schema = rfc2307bis +ldap_group_member = uniqueMember + +ldap_id_use_start_tls = false +ldap_tls_reqcert = never +ldap_auth_disable_tls_never_use_in_production = true + +cache_credentials = true +enumerate = false +EOF + +# Rechte zwingend auf 600, sonst startet SSSD nicht +chmod 600 /etc/sssd/sssd.conf +chown root:root /etc/sssd/sssd.conf + +echo ">>> Erstelle Sudoers-Regel für Gruppe: ${LDAP_SUDO_GROUP}..." +echo "%${LDAP_SUDO_GROUP} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ldap-admins +chmod 0440 /etc/sudoers.d/ldap-admins + +echo ">>> Leere alten SSSD Cache..." rm -f /var/lib/sss/db/* -sssd -i & -xrdp-sesman --nodaemon & -xrdp --nodaemon & -#service xrdp start -tail -f /var/log/xrdp.log +rm -f /var/lib/sss/mc/* + +echo ">>> Starte SSSD im Hintergrund..." +# Wir starten SSSD als Hintergrunddienst (ohne interaktives Log-Spamming) +sssd -D + +echo ">>> Starte XRDP..." +# dbus starten (oft wichtig für xfce im Container) +service dbus start + +# Startet den xrdp-sesman und anschließend xrdp im Vordergrund, +# damit der Container nicht stirbt +xrdp-sesman +exec xrdp -n \ No newline at end of file