hvordan sjekke at en bruker / passord er utløpt I AIX ?
Er det noen chage
slags kommando PÅ AIX? sjekk/etc / shadow fil dvs hvor utløpsinformasjon er lagret.
Oppdatering: Det ser ut til at det er en passwdexpired subrutine som kan lastes inn og Sjekker brukerens passord for å avgjøre om det er utløpt. Det ser imidlertid ut til å bli brukt som rot.
http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%2Fcom.ibm.aix.basetechref%2Fdoc%2Fbasetrf1%2Fpasswdexpired.htm
denne linken har utmerket dokumentasjon av hva du ville kreve
http://www.torontoaix.com/scripting/when_pwd_exp
som vist tidligere i artikkelen ovenfor, er utløpet av et passord styrt av maxage-attributtet.
For example:maxage=0 means never to expiremaxage=2 means will expire in two weeks.
AIX lagrer tiden i epokformatet i sekunder, så først må du bestemme hvor mange sekunder i en uke, da dette er hvordan maxage måler tiden mellom passordutløp, det er i ukenummer. Det er 86400 sekunder på en dag, så multipliserer det med syv kommer inn på 604800. Så det er 604800 sekunder i en uke. Den neste kommandoen du må se på er pwdadm, som igjen spør filen /etc/security/passwd. Denne filen holder verdiene i sekunder når en bruker sist endret sitt passord. Avhør filen eller bruk av pwdadm-kommandoen vil returnere det samme resultatet. For denne demonstrasjonen, la oss spørre brukeren spoll:
# grep -p "spoll:" /etc/security/passwdspoll: password = EvqNjMMwJzXnc lastupdate = 1274003127 flags = ADMCHG# pwdadm -q spollspoll: lastupdate = 1274003127 flags = ADMCHG
du kan se lastupdate-verdien i sekunder fra utgangen ovenfor. Med andre ord, sist gang passordet ble endret:1274003127
Ved å bruke lsuser eller forhøre filen med / etc / security / user, kan du bestemme antall uker før brukerens spoll-passord utløper:
# grep -p "spoll:" /etc/security/userspoll: admin = false maxage = 4# lsuser -a maxage spollspoll maxage=4
du kan se fra ovennevnte utgang at antall uker før passord utløp er 4.Den neste oppgaven er da å multiplisere antall sekunder i en uke med antall uker før brukeren spoll passord er grunn til å utløpe. I dette tilfellet er det 4:604800 * 4
# expr 604800 \* 42419200
Deretter må du legge til maxage-verdien i sekunder (604800 * 4) til siste gang passordet ble endret:2419200 + 1274003127
# expr 2419200 + 12740031271276422327
Du kan nå konvertere det antall sekunder FRA UNIX-epoken til en mer meningsfylt nåværende tidspresentasjon. Du kan bruke forskjellige verktøy, men for denne demonstrasjonen bruker du gawk med strftime-funksjonen:
# gawk 'BEGIN {print strftime("%c",'1276422327')}'Sun Jun 13 10:45:27 BST 2010
ovennevnte beregning gir tidspunktet for neste passord expiry.So, vet du nå at bruker spoll passord ble sist endret på (fra kommandoen pwdadm):
# gawk 'BEGIN {print strftime("%c",'1274003127')}'Sun May 16 10:45:27 BST 2010
og at det vil utløpe på:
Sun Jun 13 10:45:27 BST 2010
——————Perl script-la——–
#!/bin/perluse POSIX qw(strftime);$maxage=4; $last_update = 1274003127$max_week_seconds = 86400 * $maxage;print strftime("%C ", localtime($max_week_seconds));