From a9bdc305f438275ef5a262c541366c00fca6fcc7 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 30 Nov 2008 17:57:51 +0100 Subject: Add Skolelinux and CipUX DITs. --- ldap/README.dit | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) (limited to 'ldap') diff --git a/ldap/README.dit b/ldap/README.dit index 6077a57..cdc365f 100644 --- a/ldap/README.dit +++ b/ldap/README.dit @@ -22,6 +22,92 @@ dc=example,dc=com `-- cn=admin +Default Skolelinux DIT +---------------------- + +dc=skole,dc=skolelinux,dc=no +|-- ou=Attic +|-- ou=Machines +|-- ou=People +| `-- cn=Admin +|-- ou=Pam +|-- ou=Domains +|-- ou=Group +| |-- cn=Admins +| |-- cn=jradmins +| |-- cn=teachers +| |-- cn=students +| |-- cn=none +| `-- cn=machines +|-- ou=Netgroup +| |-- cn=all-hosts +| |-- cn=server-hosts +| |-- cn=ltsp-server-hosts +| |-- cn=workstation-hosts +| |-- cn=printer-hosts +| |-- cn=shutdown-at-night-hosts +| `-- cn=fsautoresize-hosts +|-- ou=Variables +| |-- cn=nextID +| `-- cn=capabilities +|-- ou=Automount +| |-- ou=auto.master +| | `-- cn=/skole +| `-- ou=skole +| |-- cn=tjener +| `-- ou=tjener +| `-- cn=home0 +|-- cn=dhcp +`-- cn=DHCP Config + |-- cn=INTERNAL + | |-- cn=10.0.2.0 + | `-- cn=group1 + | |-- cn=ltspserver00 + | |-- cn=ltspserver01 + | |-- cn=printer00 + | |-- cn=printer01 + | |-- cn=printer02 + | |-- cn=printer03 + | |-- cn=static00 + | |-- cn=static01 + | |-- cn=static02 + | `-- cn=static03 + `-- cn=THINCLIENTS + |-- cn=192.168.0.0 + `-- cn=group1 + |-- cn=ltsp010 + |-- cn=ltsp011 + |-- cn=ltsp012 + |-- cn=ltsp013 + |-- cn=ltsp014 + |-- cn=ltsp015 + |-- cn=ltsp016 + |-- cn=ltsp017 + |-- cn=ltsp018 + `-- cn=ltsp019 + + +Default CipUX DIT +----------------- + +ou=example org,dc=example,dc=org +|-- cn=cipuxadm +|-- ou=CipUX + |-- ou=User + | `-- uid=username + |-- ou=Group + | `-- cn=groupname + |-- ou=Task + |-- ou=CAT + |-- ou=Image + |-- ou=Machine + | `-- uid=win01$ + |-- ou=Room + |-- ou=HardwareType + |-- ou=ImageSlot + `-- ou=Configuration + + Simple DIT ---------- -- cgit v1.2.3 From eb98a94cb2373c5a2de1a728e764c1b88b4d4595 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 1 Dec 2008 10:32:47 +0100 Subject: Add a few more entries to Skolelinux DIT. --- ldap/README.dit | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'ldap') diff --git a/ldap/README.dit b/ldap/README.dit index cdc365f..fcd64c9 100644 --- a/ldap/README.dit +++ b/ldap/README.dit @@ -29,7 +29,9 @@ dc=skole,dc=skolelinux,dc=no |-- ou=Attic |-- ou=Machines |-- ou=People -| `-- cn=Admin +| |-- cn=Admin +| |-- cn=smbadmin +| `-- uid=root |-- ou=Pam |-- ou=Domains |-- ou=Group @@ -50,6 +52,7 @@ dc=skole,dc=skolelinux,dc=no |-- ou=Variables | |-- cn=nextID | `-- cn=capabilities +|-- sambaDomainName=SKOLELINUX |-- ou=Automount | |-- ou=auto.master | | `-- cn=/skole -- cgit v1.2.3 From 0f17fba5022a5b8cb8b74f312807cf755c59200c Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 1 Dec 2008 14:02:42 +0100 Subject: Add sample windows machine 'user' to Skolelinux DIT. --- ldap/README.dit | 2 ++ 1 file changed, 2 insertions(+) (limited to 'ldap') diff --git a/ldap/README.dit b/ldap/README.dit index fcd64c9..e2c5e2f 100644 --- a/ldap/README.dit +++ b/ldap/README.dit @@ -29,6 +29,8 @@ dc=skole,dc=skolelinux,dc=no |-- ou=Attic |-- ou=Machines |-- ou=People +| |-- ou=Machines +| | `-- uid=win01$ | |-- cn=Admin | |-- cn=smbadmin | `-- uid=root -- cgit v1.2.3 From 533a8aba4b4f2184aa4ab786d219ced7034b64ab Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Tue, 2 Dec 2008 11:49:07 +0100 Subject: Fix bogusly base64'ed userPasswords. --- ldap/db/cipux_rolegroup.ldif.in | 2 +- ldap/db/cipux_roleuser.ldif.in | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'ldap') diff --git a/ldap/db/cipux_rolegroup.ldif.in b/ldap/db/cipux_rolegroup.ldif.in index d6d3a9d..e974caf 100644 --- a/ldap/db/cipux_rolegroup.ldif.in +++ b/ldap/db/cipux_rolegroup.ldif.in @@ -17,4 +17,4 @@ objectClass: top objectClass: posixGroup objectClass: cipuxGroup structuralObjectClass: posixGroup -userPassword:: {crypt}x +userPassword: {crypt}x diff --git a/ldap/db/cipux_roleuser.ldif.in b/ldap/db/cipux_roleuser.ldif.in index 9a4fef8..c97e660 100644 --- a/ldap/db/cipux_roleuser.ldif.in +++ b/ldap/db/cipux_roleuser.ldif.in @@ -26,5 +26,5 @@ objectClass: imapUser objectClass: cipuxAccount uid: @ROLE@ uidNumber: @UID@ -userPassword:: {crypt}x +userPassword: {crypt}x structuralObjectClass: imapUser -- cgit v1.2.3 From fd74219680cb7750b225fe209b28dd3651dd68f2 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 14 Dec 2008 13:43:47 +0100 Subject: Fix org-centric Dit: People and System are Entities. --- ldap/README.dit | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'ldap') diff --git a/ldap/README.dit b/ldap/README.dit index e2c5e2f..72e7e0b 100644 --- a/ldap/README.dit +++ b/ldap/README.dit @@ -159,10 +159,10 @@ dc=example,dc=com | |-- ou=Services | |-- ou=idMap | |-- ou=Entities -| |-- ou=System -| |-- ou=People -| |--cn=jonas -| `--cn=christian +| |-- ou=System +| `-- ou=People +| |--cn=jonas +| `--cn=christian `-- ou=Access Control |-- ou=Groups | `-- ou=Administrators -- cgit v1.2.3 From a90ae0e8460bfb43da87a6d296823a50a3e3f604 Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 14 Dec 2008 17:09:23 +0100 Subject: Add exit1 function to mkldapdb. --- ldap/mkldapdb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'ldap') diff --git a/ldap/mkldapdb b/ldap/mkldapdb index 77cb6d5..229abc9 100755 --- a/ldap/mkldapdb +++ b/ldap/mkldapdb @@ -15,11 +15,16 @@ fi # config defaults as of slapd 2.4.10-3 backend="hdb" +exit1() { + echo >&2 "Error: $1" + echo >&2 "Exiting..." + exit 1 +} + # Ensure all required values are properly resolved for var in basedn dnsdomain orgname backend; do if [ -z "`eval echo '$'$var`" ]; then - echo 1>&2 "ERROR: Required variable '$var' missing. Exiting...!" - exit 1 + exit1 "Required variable '$var' missing. Exiting...!" fi done -- cgit v1.2.3 From 2edca013de8ec1a6e32cff62fafe28383c291d6e Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Sun, 14 Dec 2008 17:21:23 +0100 Subject: Add getopt option parsing to mkldapdb. --- ldap/mkldapdb | 99 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 92 insertions(+), 7 deletions(-) (limited to 'ldap') diff --git a/ldap/mkldapdb b/ldap/mkldapdb index 229abc9..8ae9f24 100755 --- a/ldap/mkldapdb +++ b/ldap/mkldapdb @@ -4,23 +4,108 @@ set -e umask 066 -# Resolve some defaults from other system config -basedn="`grep '^BASE\b' /etc/ldap/ldap.conf | sed -e 's/^BASE[[:space:]]\+//' -e 's/,[[:space:]]\+/,/g'`" -dnsdomain="`dnsdomainname`" -orgname="" -if [ -r /etc/local-ORG/orgname ]; then - orgname="$(head -n 1 /etc/local-ORG/orgname)" -fi +PRG=$(basename "$0") + +TEMP=$(getopt -s sh -o b:e:d:fh -l basedn:,enable:,disable:,force,help -n "$PRG" -- "$@") +if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi +eval set -- "$TEMP" + +getbasedn() { + grep '^BASE\b' /etc/ldap/ldap.conf | sed -e 's/^BASE[[:space:]]\+//' -e 's/,[[:space:]]\+/,/g' +} +getdnsdomain() { + dnsdomainname +} +getorgname() { + if [ -r /etc/local-ORG/orgname ]; then + head -n 1 /etc/local-ORG/orgname + fi +} # config defaults as of slapd 2.4.10-3 backend="hdb" +# extension default states (enabled/disabled) +cipux=1 +horde= + +# strings above, and either functions above or strings right below, +# can be overrided locally through this config file +if [ -f /etc/local/mkldapdb.cfg ]; then + . /etc/local/mkldapdb.cfg +fi + +basedn="${basedn:-$(getbasedn)}" +dnsdomain="${dnsdomain:-$(getdnsdomain)}" +orgname="${orgname:-$(getorgname)}" + +showhelp() { + cat <&2 "Error: $1" echo >&2 "Exiting..." exit 1 } +while true ; do + case "$1" in + -b|--basedn) basedn="$2"; shift 2;; + -e|--enable-extension) + case "$2" in + cipux|horde) eval "$2=1";; + *) exit1 "Unknown extension \"$2\"" + esac + shift 2 + ;; + -d|--disable-extension) + case "$2" in + cipux|horde) eval "$2=";; + *) exit1 "Unknown extension \"$2\"" + esac + shift 2 + ;; + -f|--force) force="1"; shift;; + -h|--help) showhelp; exit 0;; + --) shift; break;; + *) exit1 "Internal error!";; + esac +done + # Ensure all required values are properly resolved for var in basedn dnsdomain orgname backend; do if [ -z "`eval echo '$'$var`" ]; then -- cgit v1.2.3 From 5c38134be1197388e316bb0a17558560ef33a15c Mon Sep 17 00:00:00 2001 From: Jonas Smedegaard Date: Mon, 15 Dec 2008 15:31:12 +0100 Subject: Add licensing header. Fix type. --- ldap/mkldapdb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'ldap') diff --git a/ldap/mkldapdb b/ldap/mkldapdb index 8ae9f24..fbbdb09 100755 --- a/ldap/mkldapdb +++ b/ldap/mkldapdb @@ -1,4 +1,9 @@ #!/bin/sh +# +# /etc/local-COMMON/ldap/mkldapdb +# Copyright 2008 Jonas Smedegaard +# +# Setup LDAP database from skeleton files set -e @@ -145,7 +150,7 @@ spacecat $snippets | sed >>"$tempdir/slapd.conf" \ -e "s/@SUFFIX@/$basedn/g" \ -e "s/@ADMIN@/cn=admin,$basedn/g" -# TODO: Better separate core from normal lif files than "below 100"... +# TODO: Better separate core from normal ldif files than "below 100"... file=99 for section in core base cipux horde; do sed <"$masterdir/db/$section.ldif.in" >"$tempdir/${file}_$section.ldif" \ -- cgit v1.2.3