Re: Calcular paramertros de contraseña Timestamp /etc/shadow

2008-07-09 Por tema Manolo Díaz
El Wed, 9 Jul 2008 11:29:26 -0400
"andres sarmiento" <[EMAIL PROTECTED]> escribió:

> El día 9 de julio de 2008 11:19, Abraham Pérez <[EMAIL PROTECTED]>
> escribió:
> > 2008/7/9, andres sarmiento <[EMAIL PROTECTED]>:
> >>
> >> Estimados:
> >> Tengo una duda acerca de como calcular algunos parámetros
> >> relacionados con las contraseñas del  archivo /etc/shadow.
> >> He buscado documentación y no he encontrado la manera de calcular
> >> manualmente dichos parámetros para sistemas linux.
> >> A continuación adjunto lo que he encontrado:
> >>
> >> ejemplo:
> >>
> >> cuenta-test:$1$DORWlFmM$4yhE.0olwWtHxFN5o/AR7.:13969:0:60:9:::
> >>  1   2
> >>   34  5   6 7 8
> >>
> >> 1.  User name : It is your login name
> >> 2.  Password: It your encrypted password. The password should
> >> be minimum 6-8 characters long including special characters/digits
> >> 3.  Last password change (lastchanged): Days since Jan 1, 1970
> >> that password was last changed
> >> 4.  Minimum: The minimum number of days required between
> >> password changes i.e. the number of days left before the user is
> >> allowed to change his/her password
> >> 5.  Maximum: The maximum number of days the password is valid
> >> (after that user is forced to change his/her password)
> >> 6.  Warn : The number of days before password is to expire
> >> that user is
> >> warned that his/her password must be changed
> >> 7.  Inactive : The number of days after password expires that
> >> account is disabled
> >> 8.  Expire : days since Jan 1, 1970 that account is disabled
> >> i.e. an absolute date specifying when the login may no longer be
> >> used
> >>
> >> Me gustaría poder calcular manualmente desde el punto 3 hacia
> >> adelante.
> >>
> >> He probado con el comando $chage -l  y me entrega
> >> dicha información procesada para 1 usuario, pero necesito poder
> >> calcularla manualmente para muchos usuarios.
> >> También he probado con el comando $date -d @timestamp y me arroja
> >> algunos minutos algunas horas pero siempre en 1/1/1970.
> >>
> >> Bueno amigos gracias por leer.
> >>
> >> Saludos Cordiales
> >>
> >>
> >>
> >> --
> >> To UNSUBSCRIBE, email to
> >> [EMAIL PROTECTED] with a subject of
> >> "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
> >>
> >
> > Mis disculpas por adelantado, pero no termino de entender qué es lo
> > que necesitas.
> >
> 
> Veo que el formato se corrió, mil disculpas:
> 
> Lo que necesito es poder calcular desde el punto 3 (13969 desde string
> de shadow), es decir cuando fue la última vez que la password se
> cambió, cuando expira, cuando se bloquea, etc.
> Gracias por el interes.
> Saludos cordiales
> 
> 

Ese es el número de días que han pasado entre el 1 de enero de 1970
y la fecha en que cambiaste por última vez la contraseña.

1. Conviértelo a segundos
13969 días = 1206921600 s

2. usa date
~$ date -d @1206921600
lun mar 31 02:00:00 CEST 2008

y resulta que esa contraseña fue cambiada por última vez el 31 de
marzo de 2008.

Saludos.
-- 
Manolo Díaz


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Re: Calcular paramertros de contraseña Timestamp /etc/shadow

2008-07-09 Por tema mariodebian
El mié, 09-07-2008 a las 11:29 -0400, andres sarmiento escribió:
> El día 9 de julio de 2008 11:19, Abraham Pérez <[EMAIL PROTECTED]> escribió:
> > 2008/7/9, andres sarmiento <[EMAIL PROTECTED]>:
> >>
> >> Estimados:
> >> Tengo una duda acerca de como calcular algunos parámetros relacionados
> >> con las contraseñas del  archivo /etc/shadow.
> >> He buscado documentación y no he encontrado la manera de calcular
> >> manualmente dichos parámetros para sistemas linux.
> >> A continuación adjunto lo que he encontrado:
> >>
> >> ejemplo:
> >>
> >> cuenta-test:$1$DORWlFmM$4yhE.0olwWtHxFN5o/AR7.:13969:0:60:9:::
> >>  1   2
> >>   34  5   6 7 8
> >>
> >> 1.  User name : It is your login name
> >> 2.  Password: It your encrypted password. The password should be
> >> minimum 6-8 characters long including special characters/digits
> >> 3.  Last password change (lastchanged): Days since Jan 1, 1970 that
> >> password was last changed
> >> 4.  Minimum: The minimum number of days required between password
> >> changes i.e. the number of days left before the user is allowed to
> >> change his/her password
> >> 5.  Maximum: The maximum number of days the password is valid (after
> >> that user is forced to change his/her password)
> >> 6.  Warn : The number of days before password is to expire that user
> >> is
> >> warned that his/her password must be changed
> >> 7.  Inactive : The number of days after password expires that account
> >> is disabled
> >> 8.  Expire : days since Jan 1, 1970 that account is disabled i.e. an
> >> absolute date specifying when the login may no longer be used
> >>
> >> Me gustaría poder calcular manualmente desde el punto 3 hacia adelante.
> >>
> >> He probado con el comando $chage -l  y me entrega
> >> dicha información procesada para 1 usuario, pero necesito poder
> >> calcularla manualmente para muchos usuarios.
> >> También he probado con el comando $date -d @timestamp y me arroja
> >> algunos minutos algunas horas pero siempre en 1/1/1970.
> >>
> >> Bueno amigos gracias por leer.
> >>
> >> Saludos Cordiales
> >>


Tirando un poco de python:


#!/usr/bin/env python
# -*- coding: UTF-8 -*-

import time
import sys


try:
f=open('/etc/shadow','r')
data=f.readlines()
f.close()
except:
print "Can't read /etc/shadow, exec by root, please!!"
sys.exit(1)

for line in data:
user=line.strip().split(':')
#print user
if user[1] == '*' or user[1] == '!':
#print "User %s locked or with no pass"%user[0]
continue
print "User %s change passwd at '%s'" \
  %(user[0], time.ctime(int(user[2])*60*60*24)  )

###

el último print te calcula la fecha (no los días) en la que la
contraseña se cambió...

sólo tienes que cambiar user[2] (lo que sería tu campo 3) para leer y
hacer operaciones con el resto de campos.

Saludos
-- 
http://soleup.eup.uva.es/mariodebian


signature.asc
Description: Esta parte del mensaje está firmada	digitalmente


Re: Calcular paramertros de contraseña Timestamp /etc/shadow

2008-07-09 Por tema andres sarmiento
El día 9 de julio de 2008 11:19, Abraham Pérez <[EMAIL PROTECTED]> escribió:
> 2008/7/9, andres sarmiento <[EMAIL PROTECTED]>:
>>
>> Estimados:
>> Tengo una duda acerca de como calcular algunos parámetros relacionados
>> con las contraseñas del  archivo /etc/shadow.
>> He buscado documentación y no he encontrado la manera de calcular
>> manualmente dichos parámetros para sistemas linux.
>> A continuación adjunto lo que he encontrado:
>>
>> ejemplo:
>>
>> cuenta-test:$1$DORWlFmM$4yhE.0olwWtHxFN5o/AR7.:13969:0:60:9:::
>>  1   2
>>   34  5   6 7 8
>>
>> 1.  User name : It is your login name
>> 2.  Password: It your encrypted password. The password should be
>> minimum 6-8 characters long including special characters/digits
>> 3.  Last password change (lastchanged): Days since Jan 1, 1970 that
>> password was last changed
>> 4.  Minimum: The minimum number of days required between password
>> changes i.e. the number of days left before the user is allowed to
>> change his/her password
>> 5.  Maximum: The maximum number of days the password is valid (after
>> that user is forced to change his/her password)
>> 6.  Warn : The number of days before password is to expire that user
>> is
>> warned that his/her password must be changed
>> 7.  Inactive : The number of days after password expires that account
>> is disabled
>> 8.  Expire : days since Jan 1, 1970 that account is disabled i.e. an
>> absolute date specifying when the login may no longer be used
>>
>> Me gustaría poder calcular manualmente desde el punto 3 hacia adelante.
>>
>> He probado con el comando $chage -l  y me entrega
>> dicha información procesada para 1 usuario, pero necesito poder
>> calcularla manualmente para muchos usuarios.
>> También he probado con el comando $date -d @timestamp y me arroja
>> algunos minutos algunas horas pero siempre en 1/1/1970.
>>
>> Bueno amigos gracias por leer.
>>
>> Saludos Cordiales
>>
>>
>>
>> --
>> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
>> with a subject of "unsubscribe". Trouble? Contact
>> [EMAIL PROTECTED]
>>
>
> Mis disculpas por adelantado, pero no termino de entender qué es lo que
> necesitas.
>

Veo que el formato se corrió, mil disculpas:

Lo que necesito es poder calcular desde el punto 3 (13969 desde string
de shadow), es decir cuando fue la última vez que la password se
cambió, cuando expira, cuando se bloquea, etc.
Gracias por el interes.
Saludos cordiales


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]



Calcular paramertros de contraseña Timestamp /etc/shadow

2008-07-09 Por tema andres sarmiento
Estimados:
Tengo una duda acerca de como calcular algunos parámetros relacionados
con las contraseñas del  archivo /etc/shadow.
He buscado documentación y no he encontrado la manera de calcular
manualmente dichos parámetros para sistemas linux.
A continuación adjunto lo que he encontrado:

ejemplo:

cuenta-test:$1$DORWlFmM$4yhE.0olwWtHxFN5o/AR7.:13969:0:60:9:::
 1   2
  34  5   6 7 8

1.  User name : It is your login name
2.  Password: It your encrypted password. The password should be
minimum 6-8 characters long including special characters/digits
3.  Last password change (lastchanged): Days since Jan 1, 1970 that
password was last changed
4.  Minimum: The minimum number of days required between password
changes i.e. the number of days left before the user is allowed to
change his/her password
5.  Maximum: The maximum number of days the password is valid (after
that user is forced to change his/her password)
6.  Warn : The number of days before password is to expire that user is
warned that his/her password must be changed
7.  Inactive : The number of days after password expires that account is 
disabled
8.  Expire : days since Jan 1, 1970 that account is disabled i.e. an
absolute date specifying when the login may no longer be used

Me gustaría poder calcular manualmente desde el punto 3 hacia adelante.

He probado con el comando $chage -l  y me entrega
dicha información procesada para 1 usuario, pero necesito poder
calcularla manualmente para muchos usuarios.
También he probado con el comando $date -d @timestamp y me arroja
algunos minutos algunas horas pero siempre en 1/1/1970.

Bueno amigos gracias por leer.

Saludos Cordiales


--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]