Advertisement
Guest User

Untitled

a guest
May 28th, 2015
231
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. if [ $# -lt 3 ]; then
  4. echo 1>&2 "$0: not enough arguments"
  5. exit 2
  6. elif [ $# -gt 3 ]; then
  7. echo 1>&2 "$0: too many arguments"
  8. exit 2
  9. fi
  10.  
  11. first_name="$(echo $1 | tr '[:upper:]' '[:lower:]')"
  12. last_name="$(echo $2 | tr '[:upper:]' '[:lower:]')"
  13. password="$3"
  14. login="$(echo $first_name | cut -c 1)$last_name"
  15. uid="$[$(ldapsearch -x -LLL uidnumber | grep "uidNumber" | cut -d " " -f2 | sort -n -r | head -1)+1]"
  16. home="/home/$login"
  17.  
  18. 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
  19.  
  20. ldapmodify -a -x -D cn=admin,dc=lab,dc=pl -W -f tmp
  21.  
  22. if [ "$?" = "0" ]; then
  23. mkdir $home
  24. chmod 700 $home
  25. chown $uid:100 $home
  26. else
  27. echo 1>&2 "$0: error occured in ldapmodify"
  28. fi
  29.  
  30. rm tmp
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement