From 424da2513779d64e753a58fd43132a5166c2e945 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 26 Oct 2008 23:11:42 +0100 Subject: Separate slapd.conf.d snippets from ldif snippets. --- ldap/db/05_slapd.conf.in | 96 -------------------------------------- ldap/db/08_base.conf.in | 10 ---- ldap/db/10_base.conf.in | 22 --------- ldap/db/30_cipux.conf.in | 3 -- ldap/db/40_horde.conf.in | 5 -- ldap/db/50_samba.conf.in | 4 -- ldap/db/80_base.conf.in | 3 -- ldap/db/95_slapd.conf.in | 14 ------ ldap/mkldapdb | 8 ++-- ldap/slapd.conf.d/05_slapd.conf.in | 96 ++++++++++++++++++++++++++++++++++++++ ldap/slapd.conf.d/08_base.conf.in | 10 ++++ ldap/slapd.conf.d/10_base.conf.in | 22 +++++++++ ldap/slapd.conf.d/30_cipux.conf.in | 3 ++ ldap/slapd.conf.d/40_horde.conf.in | 5 ++ ldap/slapd.conf.d/50_samba.conf.in | 4 ++ ldap/slapd.conf.d/80_base.conf.in | 3 ++ ldap/slapd.conf.d/95_slapd.conf.in | 14 ++++++ 17 files changed, 161 insertions(+), 161 deletions(-) delete mode 100644 ldap/db/05_slapd.conf.in delete mode 100644 ldap/db/08_base.conf.in delete mode 100644 ldap/db/10_base.conf.in delete mode 100644 ldap/db/30_cipux.conf.in delete mode 100644 ldap/db/40_horde.conf.in delete mode 100644 ldap/db/50_samba.conf.in delete mode 100644 ldap/db/80_base.conf.in delete mode 100644 ldap/db/95_slapd.conf.in create mode 100644 ldap/slapd.conf.d/05_slapd.conf.in create mode 100644 ldap/slapd.conf.d/08_base.conf.in create mode 100644 ldap/slapd.conf.d/10_base.conf.in create mode 100644 ldap/slapd.conf.d/30_cipux.conf.in create mode 100644 ldap/slapd.conf.d/40_horde.conf.in create mode 100644 ldap/slapd.conf.d/50_samba.conf.in create mode 100644 ldap/slapd.conf.d/80_base.conf.in create mode 100644 ldap/slapd.conf.d/95_slapd.conf.in (limited to 'ldap') diff --git a/ldap/db/05_slapd.conf.in b/ldap/db/05_slapd.conf.in deleted file mode 100644 index dde73b3..0000000 --- a/ldap/db/05_slapd.conf.in +++ /dev/null @@ -1,96 +0,0 @@ -# This is the main slapd configuration file. See slapd.conf(5) for more -# info on the configuration options. - -####################################################################### -# Global Directives: - -# Features to permit -#allow bind_v2 - -# Schema and objectClass definitions -include /etc/ldap/schema/core.schema -include /etc/ldap/schema/cosine.schema -include /etc/ldap/schema/nis.schema -include /etc/ldap/schema/inetorgperson.schema - -# Where the pid file is put. The init.d script -# will not stop the server if you change this. -pidfile /var/run/slapd/slapd.pid - -# List of arguments that were passed to the server -argsfile /var/run/slapd/slapd.args - -# Read slapd.conf(5) for possible values -loglevel none - -# Where the dynamically loaded modules are stored -modulepath /usr/lib/ldap -moduleload back_@BACKEND@ - -# The maximum number of entries that is returned for a search operation -sizelimit 500 - -# The tool-threads parameter sets the actual amount of cpu's that is used -# for indexing. -tool-threads 1 - -####################################################################### -# Specific Backend Directives for @BACKEND@: -# Backend specific directives apply to this backend until another -# 'backend' directive occurs -backend @BACKEND@ - -####################################################################### -# Specific Backend Directives for 'other': -# Backend specific directives apply to this backend until another -# 'backend' directive occurs -#backend - -####################################################################### -# Specific Directives for database #1, of type @BACKEND@: -# Database specific directives apply to this databasse until another -# 'database' directive occurs -database @BACKEND@ - -# The base of your directory in database #1 -suffix "@SUFFIX@" - -# rootdn directive for specifying a superuser on the database. This is needed -# for syncrepl. -# rootdn "cn=admin,@SUFFIX@" - -# Where the database file are physically stored for database #1 -directory "/var/lib/ldap" - -# The dbconfig settings are used to generate a DB_CONFIG file the first -# time slapd starts. They do NOT override existing an existing DB_CONFIG -# file. You should therefore change these settings in DB_CONFIG directly -# or remove DB_CONFIG and restart slapd for changes to take effect. - -# For the Debian package we use 2MB as default but be sure to update this -# value if you have plenty of RAM -dbconfig set_cachesize 0 2097152 0 - -# Sven Hartge reported that he had to set this value incredibly high -# to get slapd running at all. See http://bugs.debian.org/303057 for more -# information. - -# Number of objects that can be locked at the same time. -dbconfig set_lk_max_objects 1500 -# Number of locks (both requested and granted) -dbconfig set_lk_max_locks 1500 -# Number of lockers -dbconfig set_lk_max_lockers 1500 - -# Indexing options for database #1 -index objectClass eq - -# Save the time that the entry gets modified, for database #1 -lastmod on - -# Checkpoint the BerkeleyDB database periodically in case of system -# failure and to speed slapd shutdown. -checkpoint 512 30 - -# Where to store the replica logs for database #1 -# replogfile /var/lib/ldap/replog diff --git a/ldap/db/08_base.conf.in b/ldap/db/08_base.conf.in deleted file mode 100644 index 1d78c6a..0000000 --- a/ldap/db/08_base.conf.in +++ /dev/null @@ -1,10 +0,0 @@ -# The userPassword by default can be changed -# by the entry owning it if they are authenticated. -# Others should not be able to see it, except the -# admin entry below -access to dn.subtree="ou=SAM,@SUFFIX@" attrs=userpassword,shadowLastChange - by dn.exact="@ADMIN@" write - by group="cn=SAM,ou=Administrators,ou=Access Control,@SUFFIX@" write - by anonymous auth - by self write - by * none diff --git a/ldap/db/10_base.conf.in b/ldap/db/10_base.conf.in deleted file mode 100644 index 0781b3d..0000000 --- a/ldap/db/10_base.conf.in +++ /dev/null @@ -1,22 +0,0 @@ -# Ensure read access to the base for things like -# supportedSASLMechanisms. Without this you may -# have problems with SASL not knowing what -# mechanisms are available and the like. -# Note that this is covered by the 'access to *' -# ACL below too but if you change that as people -# are wont to do you'll still need this if you -# want SASL (and possible other things) to work -# happily. -access to dn.base="" - by * read - -access to dn.subtree="cn=monitor" - by * read - -# The admin dn has full write access, everyone else -# needs further checking -access to dn.subtree="@SUFFIX@" - by dn.exact="cn=admin,@SUFFIX@" write - by group/groupOfUniqueNames/uniqueMember="cn=DSA,ou=Administrators,ou=Groups,ou=Access Control,@SUFFIX@" write - by group/groupOfUniqueNames/uniqueMember="cn=Replicants,ou=Groups,ou=Access Control,@SUFFIX@" write - by * break diff --git a/ldap/db/30_cipux.conf.in b/ldap/db/30_cipux.conf.in deleted file mode 100644 index f20751f..0000000 --- a/ldap/db/30_cipux.conf.in +++ /dev/null @@ -1,3 +0,0 @@ -access to dn.subtree="ou=CipUX,ou=SubSystems,@SUFFIX@" - by dn.exact=”uid=cipux,ou=System,ou=Entities,ou=SAM,@SUFFIX@" write - by * none break diff --git a/ldap/db/40_horde.conf.in b/ldap/db/40_horde.conf.in deleted file mode 100644 index bbae52a..0000000 --- a/ldap/db/40_horde.conf.in +++ /dev/null @@ -1,5 +0,0 @@ -# Horde -access to dn.sub="ou=People,ou=Entities,ou=SAM,@SUFFIX@" attrs=@hordePerson - by group="cn=DSA,ou=Administrators,ou=Access Control,@SUFFIX@" write - by group="cn=Horde,ou=Administrators,ou=Access Control,@SUFFIX@" write - by * none diff --git a/ldap/db/50_samba.conf.in b/ldap/db/50_samba.conf.in deleted file mode 100644 index 4eee5cd..0000000 --- a/ldap/db/50_samba.conf.in +++ /dev/null @@ -1,4 +0,0 @@ -# Samba -access to dn.subtree="ou=SAM,@SUFFIX@" attrs=sambantpassword,sambalmpassword,sambapasswordhistory,sambabadpasswordcount,sambabadpasswordtme,sambapwdcanchange,sambapwdmustchange - by dn.exact=”uid=cifsdc,ou=Entities,ou=Access Control,@SUFFIX@" write - by * none diff --git a/ldap/db/80_base.conf.in b/ldap/db/80_base.conf.in deleted file mode 100644 index 2e7b571..0000000 --- a/ldap/db/80_base.conf.in +++ /dev/null @@ -1,3 +0,0 @@ -# Read access by default -access to * - by * read diff --git a/ldap/db/95_slapd.conf.in b/ldap/db/95_slapd.conf.in deleted file mode 100644 index 861511c..0000000 --- a/ldap/db/95_slapd.conf.in +++ /dev/null @@ -1,14 +0,0 @@ -# For Netscape Roaming support, each user gets a roaming -# profile for which they have write access to -#access to dn=".*,ou=Roaming,o=morsnet" -# by dn="@ADMIN@" write -# by dnattr=owner write - -####################################################################### -# Specific Directives for database #2, of type 'other' (can be @BACKEND@ too): -# Database specific directives apply to this databasse until another -# 'database' directive occurs -#database - -# The base of your directory for database #2 -#suffix "dc=debian,dc=org" diff --git a/ldap/mkldapdb b/ldap/mkldapdb index 31ad606..5e6052f 100755 --- a/ldap/mkldapdb +++ b/ldap/mkldapdb @@ -46,10 +46,10 @@ nextfreeid() { echo "$id" } -masterdir=/etc/local-COMMON/ldap/db +masterdir=/etc/local-COMMON/ldap tempdir=`mktemp -dt slapd.XXXXXX` -snippets="$(LANG=C find "$masterdir" -type f -name '*.conf.in' | sort)" +snippets="$(run-parts --list --regex '^[0-9]+_[a-z0-9-]+\.conf\.in$' "$masterdir/slapd.conf.d")" spacecat $snippets | sed >>"$tempdir/slapd.conf" \ -e "s/@BACKEND@/$backend/g" \ -e "s/@SUFFIX@/$basedn/g" \ @@ -58,7 +58,7 @@ spacecat $snippets | sed >>"$tempdir/slapd.conf" \ # TODO: Better separate core from normal lif files than "below 100"... file=99 for section in core base cipux horde; do - sed <"$masterdir/$section.ldif.in" >"$tempdir/${file}_$section.ldif" \ + sed <"$masterdir/db/$section.ldif.in" >"$tempdir/${file}_$section.ldif" \ -e "s/@SUFFIX@/$basedn/g" \ -e "s/@DOMAIN@/$dnsdomain/g" \ -e "s/@ORG@/$orgname/g" @@ -74,7 +74,7 @@ file=200 for role in admin professor assistant pupil student tutor teacher lecturer; do uid="$(nextfreeid uid "$uid")" gid="$(nextfreeid gid "$gid")" - snippets="$masterdir/cipux_rolegroup.ldif.in $masterdir/cipux_roleuser.ldif.in" + snippets="$masterdir/db/cipux_rolegroup.ldif.in $masterdir/db/cipux_roleuser.ldif.in" spacecat $snippets | sed >"$tempdir/${file}_$role.ldif" \ -e "s/@SUFFIX@/$basedn/g" \ -e "s/@ROLE@/$role/g" \ diff --git a/ldap/slapd.conf.d/05_slapd.conf.in b/ldap/slapd.conf.d/05_slapd.conf.in new file mode 100644 index 0000000..dde73b3 --- /dev/null +++ b/ldap/slapd.conf.d/05_slapd.conf.in @@ -0,0 +1,96 @@ +# This is the main slapd configuration file. See slapd.conf(5) for more +# info on the configuration options. + +####################################################################### +# Global Directives: + +# Features to permit +#allow bind_v2 + +# Schema and objectClass definitions +include /etc/ldap/schema/core.schema +include /etc/ldap/schema/cosine.schema +include /etc/ldap/schema/nis.schema +include /etc/ldap/schema/inetorgperson.schema + +# Where the pid file is put. The init.d script +# will not stop the server if you change this. +pidfile /var/run/slapd/slapd.pid + +# List of arguments that were passed to the server +argsfile /var/run/slapd/slapd.args + +# Read slapd.conf(5) for possible values +loglevel none + +# Where the dynamically loaded modules are stored +modulepath /usr/lib/ldap +moduleload back_@BACKEND@ + +# The maximum number of entries that is returned for a search operation +sizelimit 500 + +# The tool-threads parameter sets the actual amount of cpu's that is used +# for indexing. +tool-threads 1 + +####################################################################### +# Specific Backend Directives for @BACKEND@: +# Backend specific directives apply to this backend until another +# 'backend' directive occurs +backend @BACKEND@ + +####################################################################### +# Specific Backend Directives for 'other': +# Backend specific directives apply to this backend until another +# 'backend' directive occurs +#backend + +####################################################################### +# Specific Directives for database #1, of type @BACKEND@: +# Database specific directives apply to this databasse until another +# 'database' directive occurs +database @BACKEND@ + +# The base of your directory in database #1 +suffix "@SUFFIX@" + +# rootdn directive for specifying a superuser on the database. This is needed +# for syncrepl. +# rootdn "cn=admin,@SUFFIX@" + +# Where the database file are physically stored for database #1 +directory "/var/lib/ldap" + +# The dbconfig settings are used to generate a DB_CONFIG file the first +# time slapd starts. They do NOT override existing an existing DB_CONFIG +# file. You should therefore change these settings in DB_CONFIG directly +# or remove DB_CONFIG and restart slapd for changes to take effect. + +# For the Debian package we use 2MB as default but be sure to update this +# value if you have plenty of RAM +dbconfig set_cachesize 0 2097152 0 + +# Sven Hartge reported that he had to set this value incredibly high +# to get slapd running at all. See http://bugs.debian.org/303057 for more +# information. + +# Number of objects that can be locked at the same time. +dbconfig set_lk_max_objects 1500 +# Number of locks (both requested and granted) +dbconfig set_lk_max_locks 1500 +# Number of lockers +dbconfig set_lk_max_lockers 1500 + +# Indexing options for database #1 +index objectClass eq + +# Save the time that the entry gets modified, for database #1 +lastmod on + +# Checkpoint the BerkeleyDB database periodically in case of system +# failure and to speed slapd shutdown. +checkpoint 512 30 + +# Where to store the replica logs for database #1 +# replogfile /var/lib/ldap/replog diff --git a/ldap/slapd.conf.d/08_base.conf.in b/ldap/slapd.conf.d/08_base.conf.in new file mode 100644 index 0000000..1d78c6a --- /dev/null +++ b/ldap/slapd.conf.d/08_base.conf.in @@ -0,0 +1,10 @@ +# The userPassword by default can be changed +# by the entry owning it if they are authenticated. +# Others should not be able to see it, except the +# admin entry below +access to dn.subtree="ou=SAM,@SUFFIX@" attrs=userpassword,shadowLastChange + by dn.exact="@ADMIN@" write + by group="cn=SAM,ou=Administrators,ou=Access Control,@SUFFIX@" write + by anonymous auth + by self write + by * none diff --git a/ldap/slapd.conf.d/10_base.conf.in b/ldap/slapd.conf.d/10_base.conf.in new file mode 100644 index 0000000..0781b3d --- /dev/null +++ b/ldap/slapd.conf.d/10_base.conf.in @@ -0,0 +1,22 @@ +# Ensure read access to the base for things like +# supportedSASLMechanisms. Without this you may +# have problems with SASL not knowing what +# mechanisms are available and the like. +# Note that this is covered by the 'access to *' +# ACL below too but if you change that as people +# are wont to do you'll still need this if you +# want SASL (and possible other things) to work +# happily. +access to dn.base="" + by * read + +access to dn.subtree="cn=monitor" + by * read + +# The admin dn has full write access, everyone else +# needs further checking +access to dn.subtree="@SUFFIX@" + by dn.exact="cn=admin,@SUFFIX@" write + by group/groupOfUniqueNames/uniqueMember="cn=DSA,ou=Administrators,ou=Groups,ou=Access Control,@SUFFIX@" write + by group/groupOfUniqueNames/uniqueMember="cn=Replicants,ou=Groups,ou=Access Control,@SUFFIX@" write + by * break diff --git a/ldap/slapd.conf.d/30_cipux.conf.in b/ldap/slapd.conf.d/30_cipux.conf.in new file mode 100644 index 0000000..f20751f --- /dev/null +++ b/ldap/slapd.conf.d/30_cipux.conf.in @@ -0,0 +1,3 @@ +access to dn.subtree="ou=CipUX,ou=SubSystems,@SUFFIX@" + by dn.exact=”uid=cipux,ou=System,ou=Entities,ou=SAM,@SUFFIX@" write + by * none break diff --git a/ldap/slapd.conf.d/40_horde.conf.in b/ldap/slapd.conf.d/40_horde.conf.in new file mode 100644 index 0000000..bbae52a --- /dev/null +++ b/ldap/slapd.conf.d/40_horde.conf.in @@ -0,0 +1,5 @@ +# Horde +access to dn.sub="ou=People,ou=Entities,ou=SAM,@SUFFIX@" attrs=@hordePerson + by group="cn=DSA,ou=Administrators,ou=Access Control,@SUFFIX@" write + by group="cn=Horde,ou=Administrators,ou=Access Control,@SUFFIX@" write + by * none diff --git a/ldap/slapd.conf.d/50_samba.conf.in b/ldap/slapd.conf.d/50_samba.conf.in new file mode 100644 index 0000000..4eee5cd --- /dev/null +++ b/ldap/slapd.conf.d/50_samba.conf.in @@ -0,0 +1,4 @@ +# Samba +access to dn.subtree="ou=SAM,@SUFFIX@" attrs=sambantpassword,sambalmpassword,sambapasswordhistory,sambabadpasswordcount,sambabadpasswordtme,sambapwdcanchange,sambapwdmustchange + by dn.exact=”uid=cifsdc,ou=Entities,ou=Access Control,@SUFFIX@" write + by * none diff --git a/ldap/slapd.conf.d/80_base.conf.in b/ldap/slapd.conf.d/80_base.conf.in new file mode 100644 index 0000000..2e7b571 --- /dev/null +++ b/ldap/slapd.conf.d/80_base.conf.in @@ -0,0 +1,3 @@ +# Read access by default +access to * + by * read diff --git a/ldap/slapd.conf.d/95_slapd.conf.in b/ldap/slapd.conf.d/95_slapd.conf.in new file mode 100644 index 0000000..861511c --- /dev/null +++ b/ldap/slapd.conf.d/95_slapd.conf.in @@ -0,0 +1,14 @@ +# For Netscape Roaming support, each user gets a roaming +# profile for which they have write access to +#access to dn=".*,ou=Roaming,o=morsnet" +# by dn="@ADMIN@" write +# by dnattr=owner write + +####################################################################### +# Specific Directives for database #2, of type 'other' (can be @BACKEND@ too): +# Database specific directives apply to this databasse until another +# 'database' directive occurs +#database + +# The base of your directory for database #2 +#suffix "dc=debian,dc=org" -- cgit v1.2.3