bash script modosítása
Sulek Szabolcs
vjadmin at mail.vargaj-bp.sulinet.hu
2007. Okt. 4., Cs, 08:08:15 CEST
Üdv!
Elkészült az LDAP szerverem. Leszedtem egy scriptet, amellyel LDAP usereket
lehet felvenni a kész szerverhez.
Tökéletesen műxik, de azt szeretném elérni, hogy fileból szedje a júzerek
kellő adatait.
Jelenleg bekéri a júzer: nevét, UID-ját,GIU-jét, jelszavát, majd megcsinál
mindent. A progi forrása:
ldap-ueradd.sh
...
#!/bin/bash
USERNAME=''
USERID=''
GROUPID=''
PASSWORD=''
MKNTPWD='/usr/bin/mkntpwd'
GENSHA1='/usr/bin/gensha1.pl'
LDAP_BIND_DN='cn=manager,dc=domain,dc=local'
LDAP_BIND_SECRET='jelszó'
LDAP_SUFIX='dc=domain,dc=local'
LDAP_USERS='ou=People'
RETVAL=0
# Check required programs
[ ! -x $MKNTPWD ] && exit 1
#[ ! -x $GENSHA1 ] && exit 1
echo -n "Felhasznalonev: "
read USERNAME
echo -n "Felhasznalo ID: "
read USERID
echo -n "Csoport ID: "
read GROUPID
echo -n "Jelszo: "
read PASSWORD
LMPASSWD=`$MKNTPWD -L $PASSWORD`
NTPASSWD=`$MKNTPWD -N $PASSWORD`
LOCALSID=`net getlocalsid | awk -F ': ' '{ print $2 }'`
USERPASSWD=`slappasswd -s $PASSWORD`
echo -e "dn: uid=$USERNAME,$LDAP_USERS,$LDAP_SUFIX\nobjectClass:
top\nobjectClass: account\nobjectClass: posixAccount\nobjectClass:
sambaSamAccount\nuid: $USERNAME\nuserPassword: $USERPASSWD\nloginShell:
/bin/bash\nsambaSID: $LOCALSID\nsambaLMPassword: $LMPASSWD\nsambaNTPassword:
$NTPASSWD\ncn: $USERNAME\nuidNumber: $USERID\ngidNumber:
$GROUPID\nhomeDirectory: /home/$USERNAME" | \
ldapadd -x -D $LDAP_BIND_DN -w $LDAP_BIND_SECRET
RETVAL=$?
if [ $RETVAL -eq 0 ] ; then
echo 'Success...'
else
echo 'Failure'
exit 1
fi
...
Tudna segíteni valaki?
Előre is köszi!
--
Sulek Szabolcs
Open WebMail Project (http://openwebmail.org)
Debian Project (http://www.debian.org)
További információk a(z) Techinfo levelezőlistáról