#!/bin/sh set -eu CERTS_DIR="/etc/ldap/certs" DATA_DIR="/var/lib/ldap" SLAPD_D="/etc/ldap/slapd.d" INITIALIZED_FLAG="$DATA_DIR/.initialized" CA_CERT_NAME="ca_cert.pem" SERVER_CERT_NAME="server_cert.pem" SERVER_KEY_NAME="server_key.pem" echo "Starting OpenLDAP entrypoint..." base_dn="${LDAP_BASE_DN:-dc=example,dc=org}" domain="${LDAP_DOMAIN:-example.org}" org="${LDAP_ORG:-Example Org}" password="${LDAP_PASSWORD:-changeit}" admin_password="${LDAP_ADMIN_PASSWORD:-$password}" echo "Base DN : $base_dn" echo "Domain : $domain" echo "Org : $org" tls_enabled="0" if [ -f "$CERTS_DIR/$CA_CERT_NAME" ] && [ -f "$CERTS_DIR/$SERVER_CERT_NAME" ] && [ -f "$CERTS_DIR/$SERVER_KEY_NAME" ]; then tls_enabled="1" fi if [ "$tls_enabled" = "1" ]; then echo "TLS : enabled" else echo "TLS : disabled" fi kerberos_enabled="0" if [ "${KERBEROS_ENABLE:-0}" = "1" ]; then kerberos_enabled="1" export KRB5_KTNAME="${KRB5_KTNAME:-/etc/krb5.keytab}" echo "Kerberos : enabled (keytab: $KRB5_KTNAME)" if [ ! -f "$KRB5_KTNAME" ]; then echo "Error: keytab not found at $KRB5_KTNAME" >&2 exit 1 fi krb5_kdc_host="${KRB5_KDC_HOST:?KRB5_KDC_HOST must be set when KERBEROS_ENABLE=1}" cat > /etc/krb5.conf <