2014 m. liepos 31 d., ketvirtadienis

/etc/passwd ir /etc/shadow

Dokumentas saugantis vartotojų slaptažodžių informaciją.
$ cat /etc/passwd Iš suteikiamų teisių, dokumentą 'passwd' gali skaityti paprastas vartotojas.
/etc $ ls -l passwd shadow-rw-r--r-- 1 root root   1807 Lie 13 02:25 passwd
-rw-r----- 1 root shadow 1132 Lie 13 02:25 shadow

Kaip suprasti 'passwd' dokumento 'root' vartotoją?
$ less /etc/passwdroot:x:0:0:root:/root:/bin/bash
....

# root yra pats pirmas vartotojas, kuris yra sukuriamas diegimo metu
# x reiškia, kad slaptažodžiai tvarkomas 'shadow' dokumento
* reikštų, kad vartotojas negali prisijungti.
# root vartotojas paprastai turi 'user id', ir 'group id' '0:0'
# root - šioje vietoje yra vartotojo apibūdinimas arba 'Pilnas vardas'
# /root - namų direktorija
# /bin/bash - naudojama shell


Kaip suprasti 'shadow' dokumento namų vartotoją?
$ sudo cat /etc/shadow|tail -n1 install-gentoo:$6$u.3k0kNY$yNUUeHMacrH4UpU8ZdzFnZxgITlKiOvrqWZp7Ubj1eevg5pONIi8pR9uYRLeHMacrH4UpU8Z.:16313:0:99999:7:::

/etc/shadow
install-gentoo:$6$u.3k0kNY$yNUUeHMacrH4UpU8Z.:16313:0:99999:7:::
Prisijungimo vardas install-gentoo
Užkoduotas slaptažodis $6$u.3k0kNY$yNUUeHMacrH4UpU8Z.
Paskutinį karta pakeistas slaptažodis(Unix epoch time) 16313
Dienos prieš kurias slaptažodį galima pakeisti (0 reikškia - bet kada) 0
Slaptažodžio gyvavimo laikas(po kiek laiko pakeisti slaptažodį 99999
Kiek laiko dar galioja slaptažodis, pasibaigus slaptažodžio gyvavimui 7

# Kaip pridėti vartotoją?
$ sudo useradd namai
$ tail -n 1 /etc/passwd
namai:x:1001:1001::/home/namai

# Pridėjus vartotoja jam savaime nesukuriamas slaptažodis
$ sudo tail -n 1 /etc/shadownamai:!:16282:0:99999:7:::
# Sukuriame slaptažodį ir patikriname, kaip pasikeitė 'shadow' dokumentas
$ sudo passwd namai Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfull
$ sudo tail -n 1 /etc/shadow
namai:$6$ESdQ9.IL$Ah9n0OFxSrKGD899e7Uy9kzTNJ85Iva2XpL5ZAcFcmcwtwB8upeylvaG94R5WrsoHRq92uKz1ObxNeVmRjFRR0:16282:0:99999:7:::

# Arba tą patį galime atlikti komanda
$ adduser namai # Komanda 'change' leidžia keisti 'shadow' dokumento parametrus, tokius kaip slaptažodžio galiojimo terminas.
$ sudo chage -l namai
Last password change                    : Lie 31, 2014
Password expires                    : never
Password inactive                    : never
Account expires                        : never
Minimum number of days between password change        : 0
Maximum number of days between password change        : 99999
Number of days of warning before password expires    : 7

# Pakeičiam slaptažodžio galiojimo laiką į 43 dienas. $ sudo chage -M 43 namai
$ sudo tail -n 1 /etc/shadow
namai:$6$ESdQ9.IL$Ah9n0OFxSrKGD899e7Uy9kzTNJ85Iva2XpL5ZAcFcmcwtwB8upeylvaG94R5WrsoHRq92uKz1ObxNeVmRjFRR0:16282:0:43:7:::

Vartotojų keitimas su 'usermod'. usermod [nustatymai] vartotojas
-l, --login NEW_LOGIN
-c, --comment COMMENT
-s, --shell SHELL
-d, --home HOME_DIR
-L, --lock
-U, --unlock
'lock' prie slaptažodžio '/etc/shadow' dokumente prideda '!', tai reikškia nepavyks prisijungti su šiuo vartotoju.
$ cat /etc/passwd |tail -n 1 testas:x:1001:1001:,,,:/home/testas:/bin/bash
$ sudo usermod -s /bin/sh testas
$ sudo cat /etc/passwd |tail -n 1
testas:x:1001:1001:,,,:/home/testas:/bin/sh
# Komanda rodanti visų vartotojų informaciją. $ for i in `awk -F : {' print $1 '} /etc/passwd`; do echo $i; chage -l $i; done

Kur rasti passwd atsarginę kopiją, netyčia ištrynus šį dokumentą?

$ ll /var/backups/passwd.bak
-rw------- 1 root root 2830 Grd 23 03:37 /var/backups/passwd.bak

Pasiskaitymui:
https://en.wikipedia.org/wiki/Passwd