#!/bin/bash
set -x
# Add a unix + samba computer to an LDAP database
# Author: Andreas Graf
# call: ./samba_machineadd <name> <uid>
ADMIN=Manager
ADMINPASSWD=geheim
DOMAIN1=local
DOMAIN2=classroom
pdbedit -x -u $1
ldapdelete -x -D "cn=$ADMIN,dc=$DOMAIN2,dc=$DOMAIN1" -w $ADMINPASSWD "cn=${1}\$,dc=$DOMAIN2,dc=$DOMAIN1"
ldapdelete -x -D "cn=$ADMIN,dc=$DOMAIN2,dc=$DOMAIN1" -w $ADMINPASSWD "uid=${1}\$,dc=$DOMAIN2,dc=$DOMAIN1"
ldapadd -x -D "cn=$ADMIN,dc=$DOMAIN2,dc=$DOMAIN1" -w $ADMINPASSWD <<EOF
dn: cn=${1}\$,dc=$DOMAIN2,dc=$DOMAIN1
objectclass: posixAccount
objectclass: Account
cn: ${1}\$
uid: ${1}\$
uidNumber: $2
gidNumber: 100
homeDirectory: /tmp
loginShell: /bin/false
EOF
smbpasswd -a -m $1
ldapmodify -x -D "cn=$ADMIN,dc=$DOMAIN2,dc=$DOMAIN1" -w $ADMINPASSWD <<EOF
dn: uid=${1}\$,dc=$DOMAIN2,dc=$DOMAIN1
objectclass: posixAccount
objectclass: Account
cn: ${1}\$
uid: ${1}\$
uidNumber: $2
gidNumber: 100
homeDirectory: /tmp
loginShell: /bin/false
EOF
ldapdelete -x -D "cn=$ADMIN,dc=$DOMAIN2,dc=$DOMAIN1" -w $ADMINPASSWD "cn=${1}\$,dc=$DOMAIN2,dc=$DOMAIN1"
