Kuinka tarkistaa, että käyttäjä / salasana on vanhentunut AIX: ssä?
onko Aix: llä chage
jonkinlaista käskyä? tarkista / etc / shadow-tiedosto, jossa viimeinen tieto on tallennettu.
päivitys: näyttää siltä, että on olemassa passwdexpired-alirutiini, jonka voi ladata ja tarkistaa käyttäjän salasanan selvittääkseen, onko se vanhentunut. Sitä näyttää kuitenkin käytettävän juurena.
http://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%2Fcom.ibm.aix.basetechref%2Fdoc%2Fbasetrf1%2Fpasswdexpired.htm
tässä linkissä on erinomainen dokumentaatio siitä, mitä tarvitset
http://www.torontoaix.com/scripting/when_pwd_exp
kuten edellä mainitussa artikkelissa aiemmin osoitettiin, salasanan päättymistä säätelee maxage-attribuutti.
For example:maxage=0 means never to expiremaxage=2 means will expire in two weeks.
AIX tallentaa ajan epoch-muodossa sekunteina, joten ensin täytyy selvittää, montako sekuntia viikossa, sillä näin maxage mittaa salasanan vanhentumisajan eli viikkonumerot. On 86400 sekuntia päivässä, niin kertomalla, että seitsemällä tulee 604800. Viikossa on siis 604800 sekuntia. Seuraava komento sinun täytyy katsoa on pwdadm, joka puolestaan kysyy tiedoston / etc/security / passwd. Tämä tiedosto sisältää arvot sekunneissa, kun käyttäjä on viimeksi vaihtanut salasanansa. Tiedoston kuulustelu tai pwdadm-komennon käyttäminen palauttaa saman tuloksen. Tämän esittelyn, olkaamme kysyä käyttäjä spoll:
# grep -p "spoll:" /etc/security/passwdspoll: password = EvqNjMMwJzXnc lastupdate = 1274003127 flags = ADMCHG# pwdadm -q spollspoll: lastupdate = 1274003127 flags = ADMCHG
näet lastupdate-arvon sekunneissa yllä olevasta tulosteesta. Toisin sanoen, viimeksi kun salasana vaihdettiin:1274003127
Seuraava, käyttämällä lsuser tai kuulustelemalla tiedoston / etc / security / user, voit määrittää viikkojen määrä ennen käyttäjän spoll salasana vanhenee:
# grep -p "spoll:" /etc/security/userspoll: admin = false maxage = 4# lsuser -a maxage spollspoll maxage=4
näet edellä tuotoksesta, että määrä viikkoa ennen salasanan päättymistä on 4.Seuraava tehtävä on sitten kertoa sekuntimäärä viikossa viikkojen määrällä ennen kuin käyttäjän spoll-salasanan on määrä vanhentua. Tällöin se on 4:604800 * 4
# expr 604800 \* 42419200
Seuraava, sinun täytyy lisätä maxage arvo sekunneissa (604800 * 4) viime kerran salasana vaihdettiin:2419200 + 1274003127
# expr 2419200 + 12740031271276422327
voit nyt muuntaa tuon Unix-aikakauden sekuntimäärän mielekkäämmäksi nykyaikaesitykseksi. Voit käyttää erilaisia työkaluja, mutta tässä esittelyssä käytät gawk strftime-toimintoa:
# gawk 'BEGIN {print strftime("%c",'1276422327')}'Sun Jun 13 10:45:27 BST 2010
yllä oleva laskelma antaa seuraavan salasanan ajan expiry.So, nyt tiedät, että käyttäjä spoll salasana on viimeksi muutettu (alkaen pwdadm komento):
# gawk 'BEGIN {print strftime("%c",'1274003127')}'Sun May 16 10:45:27 BST 2010
ja että se päättyy:
Sun Jun 13 10:45:27 BST 2010
——————Perl script-let——–
#!/bin/perluse POSIX qw(strftime);$maxage=4; $last_update = 1274003127$max_week_seconds = 86400 * $maxage;print strftime("%C ", localtime($max_week_seconds));