@@ -24,6 +24,12 @@ WAS_STARTED_WITH_TLS="/etc/ldap/slapd.d/docker-openldap-was-started-with-tls"
2424WAS_STARTED_WITH_TLS_ENFORCE=" /etc/ldap/slapd.d/docker-openldap-was-started-with-tls-enforce"
2525WAS_STARTED_WITH_REPLICATION=" /etc/ldap/slapd.d/docker-openldap-was-started-with-replication"
2626
27+ LDAP_TLS_CA_CRT_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_CA_CRT_FILENAME "
28+ LDAP_TLS_CRT_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_CRT_FILENAME "
29+ LDAP_TLS_KEY_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_KEY_FILENAME "
30+ LDAP_TLS_DH_PARAM_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/dhparam.pem"
31+
32+
2733# CONTAINER_SERVICE_DIR and CONTAINER_STATE_DIR variables are set by
2834# the baseimage run tool more info : https://github.com/osixia/docker-light-baseimage
2935
269275
270276 log-helper info " Add TLS config..."
271277
272- LDAP_TLS_CA_CRT_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_CA_CRT_FILENAME "
273- LDAP_TLS_CRT_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_CRT_FILENAME "
274- LDAP_TLS_KEY_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/$LDAP_TLS_KEY_FILENAME "
275- LDAP_TLS_DH_PARAM_PATH=" ${CONTAINER_SERVICE_DIR} /slapd/assets/certs/dhparam.pem"
276-
277278 # generate a certificate and key with ssl-helper tool if LDAP_CRT and LDAP_KEY files don't exists
278279 # https://github.com/osixia/docker-light-baseimage/blob/stable/image/service-available/:ssl-tools/assets/tool/ssl-helper
279280 ssl-helper $LDAP_SSL_HELPER_PREFIX $LDAP_TLS_CRT_PATH $LDAP_TLS_KEY_PATH $LDAP_TLS_CA_CRT_PATH
302303 echo " export PREVIOUS_LDAP_TLS_KEY_PATH=${LDAP_TLS_KEY_PATH} " >> $WAS_STARTED_WITH_TLS
303304 echo " export PREVIOUS_LDAP_TLS_DH_PARAM_PATH=${LDAP_TLS_DH_PARAM_PATH} " >> $WAS_STARTED_WITH_TLS
304305
305- # ldap client config
306- sed -i --follow-symlinks " s,TLS_CACERT.*,TLS_CACERT ${LDAP_TLS_CA_CRT_PATH} ,g" /etc/ldap/ldap.conf
307- echo " TLS_REQCERT ${LDAP_TLS_VERIFY_CLIENT} " >> /etc/ldap/ldap.conf
308- cp -f /etc/ldap/ldap.conf ${CONTAINER_SERVICE_DIR} /slapd/assets/ldap.conf
309-
310- [[ -f " $HOME /.ldaprc" ]] && rm -f $HOME /.ldaprc
311- echo " TLS_CERT ${LDAP_TLS_CRT_PATH} " > $HOME /.ldaprc
312- echo " TLS_KEY ${LDAP_TLS_KEY_PATH} " >> $HOME /.ldaprc
313- cp -f $HOME /.ldaprc ${CONTAINER_SERVICE_DIR} /slapd/assets/.ldaprc
314-
315306 # enforce TLS
316307 if [ " ${LDAP_TLS_ENFORCE,,} " == " true" ]; then
317308 log-helper info " Add enforce TLS..."
392383 while [ -e /proc/$SLAPD_PID ]; do sleep 0.1; done # wait until slapd is terminated
393384 fi
394385
386+ #
387+ # ldap client config
388+ #
389+ if [ " ${LDAP_TLS,,} " == " true" ]; then
390+ log-helper info " Configure ldap client TLS configuration..."
391+ sed -i --follow-symlinks " s,TLS_CACERT.*,TLS_CACERT ${LDAP_TLS_CA_CRT_PATH} ,g" /etc/ldap/ldap.conf
392+ echo " TLS_REQCERT ${LDAP_TLS_VERIFY_CLIENT} " >> /etc/ldap/ldap.conf
393+ cp -f /etc/ldap/ldap.conf ${CONTAINER_SERVICE_DIR} /slapd/assets/ldap.conf
394+
395+ [[ -f " $HOME /.ldaprc" ]] && rm -f $HOME /.ldaprc
396+ echo " TLS_CERT ${LDAP_TLS_CRT_PATH} " > $HOME /.ldaprc
397+ echo " TLS_KEY ${LDAP_TLS_KEY_PATH} " >> $HOME /.ldaprc
398+ cp -f $HOME /.ldaprc ${CONTAINER_SERVICE_DIR} /slapd/assets/.ldaprc
399+ fi
400+
395401 #
396402 # remove container config files
397403 #
0 commit comments