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="/etc/ldapscripts/ldapaddgroup.template" UTEMPLATE="/etc/ldapscripts/ldapadduser.template" MTEMPLATE="/etc/ldapscripts/ldapaddmachine.template"
Die Templates werden entsprechend kopiert und im Usertemplate werden 'dn' und 'description' angepaßt:
/etc/ldapscripts# diff ldapadduser.template.sample ldapadduser.template 1c1 < dn: uid=<user>,<usuffix>,<suffix> --- > dn: cn=<user>,<usuffix>,<suffix> 11c11 < description: User account --- > description: <gecos>
Description kann später im LDAP-Verzeichnis mit einem sinnvollerem Wert belegt werden, mit den Kommandozeilentools ist das leider nicht möglich. (Das Erzeugen des Homeverzeichnisses funktionierte später im Test leider trotzdem nicht, sodaß auf pam_mkhomedir ausgewichen werden mußte.)
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]