summaryrefslogtreecommitdiffstats
path: root/debian/perl-framework/scripts/ldap-init.sh
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-25 04:41:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-25 04:41:28 +0000
commit2eeb62e38ae17a3523ad3cd81c3de9f20f9e7742 (patch)
treefe91033d4712f6d836006b998525656b9dd193b8 /debian/perl-framework/scripts/ldap-init.sh
parentMerging upstream version 2.4.59. (diff)
downloadapache2-debian.tar.xz
apache2-debian.zip
Adding debian version 2.4.59-1~deb10u1.debian/2.4.59-1_deb10u1debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'debian/perl-framework/scripts/ldap-init.sh')
-rwxr-xr-xdebian/perl-framework/scripts/ldap-init.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/debian/perl-framework/scripts/ldap-init.sh b/debian/perl-framework/scripts/ldap-init.sh
new file mode 100755
index 0000000..148a9d0
--- /dev/null
+++ b/debian/perl-framework/scripts/ldap-init.sh
@@ -0,0 +1,28 @@
+#!/bin/bash -ex
+DOCKER=${DOCKER:-`which docker 2>/dev/null || which podman 2>/dev/null`}
+cid1=`${DOCKER} run -d -p 8389:389 httpd_ldap`
+cid2=`${DOCKER} run -d -p 8390:389 httpd_ldap`
+sleep 5
+
+# For the CentOS slapd configuration, load some default schema:
+if ${DOCKER} exec -i $cid1 test -f /etc/centos-release; then
+ ${DOCKER} exec -i $cid1 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// < scripts/slapd-config.ldif
+ ${DOCKER} exec -i $cid2 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// < scripts/slapd-config.ldif
+
+ for sc in cosine inetorgperson nis; do
+ fn=/etc/openldap/schema/${sc}.ldif
+ ${DOCKER} exec -i $cid1 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// -f ${fn}
+ ${DOCKER} exec -i $cid2 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// -f ${fn}
+ done
+
+ ldapadd -x -H ldap://localhost:8390 -D cn=admin,dc=example,dc=com -w travis < scripts/suffix.ldif
+ ldapadd -x -H ldap://localhost:8389 -D cn=admin,dc=example,dc=com -w travis < scripts/suffix.ldif
+fi
+
+# Disable anonymous bind; must be done as an authenticated local user
+# hence via ldapadd -Y EXTERNAL within the container.
+${DOCKER} exec -i $cid1 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// < scripts/non-anon.ldif
+${DOCKER} exec -i $cid2 /usr/bin/ldapadd -Y EXTERNAL -H ldapi:// < scripts/non-anon.ldif
+
+ldapadd -x -H ldap://localhost:8389 -D cn=admin,dc=example,dc=com -w travis < scripts/httpd.ldif
+ldapadd -x -H ldap://localhost:8390 -D cn=admin,dc=example,dc=com -w travis < scripts/httpd-sub.ldif