collection of bash scripts to manage ldap users and groups

theo 48844706e7 Remove relative paths from scripts 11 maanden geleden
bin 48844706e7 Remove relative paths from scripts 11 maanden geleden
lib 3fced08484 Changed permissions 1 jaar geleden
.gitignore e5f54fe96b Added Makefile 1 jaar geleden
LICENSE 3c0e6db2d6 typo 2 jaren geleden
Makefile 3fced08484 Changed permissions 1 jaar geleden
README.md 62ec237854 Fix typo in readme 1 jaar geleden
ldap-utils.conf.example e5f54fe96b Added Makefile 1 jaar geleden

README.md

Configuration :

Copy the configuration file :

cp .env.example .env

Then, edit .env and set the correct values

Dependencies

  • A working LDAP server
  • slappasswd
  • pwgen
  • ldap{search, modify, delete, add}

Usage

  • createperson

Create an account, with the following parameters :

-u <uid> : the new user's uid
-n <first name> : the new user's first name
-s <last name> : the new user's uid
-p (optional) : give the user the `posixAccount` object class, and the necessary attributes. 
This is necessary if the user needs to be added to posix Groups
-g <group1[,group2,group3,...]> : add the user the to one or more groups 
(separated by commas when more than one group is given)
  • removeperson

Removes a user from the directory, including the corresponding posixGroup if the user is a posixAccount. The -y option can be given as the first argument to bypass the confirmation prompt

./removeperson [-y] uid
  • creategroup

Since adding the first user needs to be done at the creation of the group, a valid uid needs to be passed to the script.

The optional -p option can be given as the first argument. It indicates that the group to be created is a posixGroup. Therefore, the user also needs to be a posixAccount.

./creategroup [-p] uid group
  • addtogroups and removefromgroups

Add or remove an user to/from one or more groups. User's uid must be the first argument. Posix and non-posix groups can be given, but if posixGroups are given, the user needs to be a posixAccount.

./addtogroups uid group1 [group2, group3,  ...]
./removefromgroups uid group1 [group2, group3,  ...]
  • person2posix

Give the user the posixAccount object class, and the necessary attributes, and create a posixGroup with the same uid and number as the user.

./person2posix uid
  • addmailalias

Add a new mail alias for a user. User needs to be in the mail group

./addmailalias uid alias@example.com