Ldapscripts
Die ldapscripts sind Kommandozeilentools für die Verwaltung von Unix-Benutzern im LDAP.
Konfiguration
Nach der Installation muß die Konfiguration angepaßt werden.
/etc/ldapscripts (gekürzt):
## Server name SERVER=localhost ## Bind DN BINDDN='cn=admin,dc=netbreaker,dc=local' ## Bind Password or file BINDPWDFILE="/etc/ldap.secret" ## Default suffix SUFFIX='dc=lenny,dc=local' ## Group/User(aka People)/Machines (aka Hosts) Organizational Unit GSUFFIX='ou=group' USUFFIX='ou=people' MSUFFIX='ou=hosts' ## log everything that is performed by those scripts LOGFILE="/var/log/ldapscripts.log" ## Start with these IDs *if no entry found in LDAP* GIDSTART=1000 UIDSTART=1000 MIDSTART=10000 ## Default Shell USHELL=/bin/bash ## default homes (%u is the user name) UHOMES="/home/%u" ## Ask for user's gecos (full name) ? ASKGECOS="yes" ## Does the script should create homes ? CREATEHOMES="yes" ## Directory where the skeleton files are located. HOMESKEL="/etc/skel" ## Default permissions for home directories HOMEPERMS="700" # You can specify custom LDIF templates here # Leave empty to use default templates # See *.template.sample for default templates GTEMPLATE="" UTEMPLATE="" MTEMPLATE=""
(Das Erzeugen des Homeverzeichnisses funktionierte später im Test leider trotzdem nicht, sodaß auf pam_mkhomedir ausgewichen werden mußte.)
Danach müssen noch die einzelnen Organizational Units im LDAP angelegt werden. Dazu erstellen wir eine Datei mit dem Inhalt: base-ou.ldif:
dn: ou=group,dc=lenny,dc=local objectclass: organizationalUnit objectclass: top ou: group dn: ou=people,dc=lenny,dc=local objectclass: organizationalUnit objectclass: top ou: people dn: ou=hosts,dc=lenny,dc=local objectclass: organizationalUnit objectclass: top ou: hosts
Diese Datei kann nun in das LDAP-Verzeichnis importiert werden:
ldapadd -D cn=admin,dc=lenny,dc=local -x -W -f base-ou.ldif
Benutzer/Gruppen anlegen
Dem Debian-Schema folgend, wird (zuerst) für jeden Benutzer eine gleichnamige Gruppe angelegt, wobei auf die Angabe der GID i.a. verzichtet werden kann:
ldapaddgroup <groupname> [gid]
Daraufhin kann der Benutzer hinzugefügt werden, wobei auch hier auf die UID verzichtet werden kann:
ldapadduser <username> <groupname> [uid]