Zimbrában kellene beállítanom, jelszó lejáratási policy -t. Ebben semmi különös nincs, van is ilyen feature, ennek a beállításával semmi gond.
Amivel viszont van, az az, hogy hogyan értesül erről a felhasználó. Az én logikám szerint, a lejárat előtti 15,10,5,4,3,2,1 nappon, kapjon egy emailt, a lejárat időpontjáról és egy linket, leírást arról, hol, hogyan tudja megváltoztatni a régi jelszavát.
Na ezt a feature -t kifelejtették ebből a csúcs csoda rendszerből.
Az a kérdésem, van-e itt valakinek ilyen scriptje készen, vagy más megoldása.
- 2433 megtekintés
Hozzászólások
Hát jó ha senki akkor itt van:
#!/bin/bash
LDAPSEARCH="/opt/zimbra/openldap-2.6.99.9z/bin/ldapsearch"
LDAPHOST="ldap://192.168.0.200:389"
BINDDN="uid=zimbra,cn=admins,cn=zimbra"
BINDPW="******"
BASEDNCONF="cn=default,cn=cos,cn=zimbra"
BASEDNUSR="ou=people,dc=bigfhart,dc=com"
PDATE=`date +%Y%m%d`
function sendalert() {
echo "Tisztelt Holgyem / Uram!
Az On levelezeshez hasznalt jelszava (e-mail jelszo) $2 nap utan
lejar.
Kerem latogassa meg a http://mail..../ oldalt, ahol a jelszavat
megvaltoztathatja
Support team
Levelezes adminisztracio" | mailx -s "Emlekezteto jelszo lejaratarol" "$1"
}
# ez csak az alibi kedveert
function lastalert() {
echo "Tisztelt Holgyem / Uram!
Az On levelezeshez hasznalt jelszava (e-mail jelszo) $2 napjan
lejart
A jelszot azonban megvaltoztathatja a http://mail..../
login kepernyojen
Support team
Levelezes adminisztracio" | mailx -s "Emlekezteto jelszo lejaratarol" "$1"
}
# Kilistazom az osszes accountot
${LDAPSEARCH} -LLL -H ${LDAPHOST} -D ${BINDDN} -w${BINDPW} -b ${BASEDNUSR} "(zimbraMailStatus=enabled)" "uid" | sed '/^dn/d;/^$/d' | cut -f2 -d " " | while read account
do
# A jelszo maximalis ervennessegi hossza
USER_PW_MAX_AGE=`${LDAPSEARCH} -LLL -H ${LDAPHOST} -D ${BINDDN} -w${BINDPW} -b ${BASEDNUSR} "(uid=${account})" "zimbraPasswordMaxAge" | sed '/^dn/d;/^$/d' | cut -f2 -d " "`
# Ha nincs a userhez beallitva a globalis beallitast hasznalom
if [ "${USER_PW_MAX_AGE}" == "" ]; then
# A kiolvasom a globalis beallitast
USER_PW_MAX_AGE=`${LDAPSEARCH} -LLL -H ${LDAPHOST} -D ${BINDDN} -w${BINDPW} -b ${BASEDNCONF} "(objectClass=*)" "zimbraPasswordMaxAge" | sed '/^dn/d;/^$/d' | cut -f2 -d " "`
if [ "${USER_PW_MAX_AGE}" == "0" ]; then
USER_PW_MAX_AGE=730
fi
fi
# Kinyerem az utolso jelszo modositas datumat, csak ev honap napot
USER_PW_LAST_CHANGE=`${LDAPSEARCH} -LLL -H ${LDAPHOST} -D ${BINDDN} -w${BINDPW} -b ${BASEDNUSR} "(uid=${account})" "zimbraPasswordModifiedTime" |\
sed '/^dn/d;/^$/d' | cut -f2 -d " " | sed -e 's/^\([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\).*$/\1/'`
if [ `date +%Y%m%d -d "${USER_PW_LAST_CHANGE} ${PW_CHECK_AGE} days"` -lt $PDATE ]; then
lastalert ${account} `date +%Y.%m.%d -d "${USER_PW_LAST_CHANGE} ${PW_CHECK_AGE} days"`
fi
for d in 15 10 5 4 3 2 1
do
PW_CHECK_AGE=$[$USER_PW_MAX_AGE-$d]
MAILDATE=`date +%Y%m%d -d "${USER_PW_LAST_CHANGE} ${PW_CHECK_AGE} days"`
if [ "${PDATE}" == "${MAILDATE}" ]; then
sendalert ${account} $d
fi
done
done
"Kicsit sárga, kicsit savanyú, de a miénk!"
----
올드보이
http://molnaristvan.eu/
- A hozzászóláshoz be kell jelentkezni
Végülis igen :)
Innen látszik, hogy én mennyire hozzászoktam a perl-hez, anélkül el se tudom képzelni, hogyan lehet megoldani.
- A hozzászóláshoz be kell jelentkezni
Hát mint írtam ez egy gyors hákolás, lesz majd szép Perl/Python script de nem most -> Quick And Dirty
----
올드보이
http://molnaristvan.eu/
- A hozzászóláshoz be kell jelentkezni