Ldapscripts

Aus ConfigWiki
Wechseln zu: Navigation, Suche

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]
Meine Werkzeuge