Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- if [ $# -lt 3 ]; then
- echo 1>&2 "$0: not enough arguments"
- exit 2
- elif [ $# -gt 3 ]; then
- echo 1>&2 "$0: too many arguments"
- exit 2
- fi
- first_name="$(echo $1 | tr '[:upper:]' '[:lower:]')"
- last_name="$(echo $2 | tr '[:upper:]' '[:lower:]')"
- password="$3"
- login="$(echo $first_name | cut -c 1)$last_name"
- uid="$[$(ldapsearch -x -LLL uidnumber | grep "uidNumber" | cut -d " " -f2 | sort -n -r | head -1)+1]"
- home="/home/$login"
- printf "dn: cn=$login,dc=lab,dc=pl\ncn: $login\ngidNumber: 100\nhomeDirectory: $home\nobjectClass: person\nobjectClass: posixAccount\nobjectClass: simpleSecurityObject\nobjectClass: top\nsn: $last_name\nuid: $login\nuidNumber: $uid\nuserpassword: $password\n\n" > tmp
- ldapmodify -a -x -D cn=admin,dc=lab,dc=pl -W -f tmp
- if [ "$?" = "0" ]; then
- mkdir $home
- chmod 700 $home
- chown $uid:100 $home
- else
- echo 1>&2 "$0: error occured in ldapmodify"
- fi
- rm tmp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement