Foto per gentile concessione:mattblaze
La procedura consigliata consiglia agli utenti di continuare a modificare le password a intervalli regolari. Ma in genere gli sviluppatori e gli altri utenti del sistema Linux non cambiano la password a meno che non siano costretti a cambiare la propria password.
È responsabilità degli amministratori di sistema trovare un modo per obbligare gli sviluppatori a cambiare la password. Forzare gli utenti a cambiare la password con una pistola in testa non è un'opzione!. Anche se la maggior parte degli amministratori di sistema attenti alla sicurezza potrebbe persino essere tentata di farlo.
In questo articolo esaminiamo come utilizzare il comando chage di Linux per eseguire diverse attività pratiche di invecchiamento della password, incluso come forzare gli utenti a cambiare la propria password.
Su debian, puoi installare chage eseguendo il comando seguente:
# apt-get install chage
Nota: È molto facile fare un errore di battitura su questo comando. Invece di cambiare potresti finire per digitarlo come cambiamento. Ricorda che chage sta per "cambiare età". cioè l'abbreviazione del comando chage è simile a chmod, chown ecc.,
1. Elenca la password e i relativi dettagli per un utente
Come mostrato di seguito, qualsiasi utente può eseguire il comando chage per se stesso per identificare quando la sua password sta per scadere.
Syntax: chage –-list username (or) chage -l username $ chage --list dhinesh Last password change : Apr 01, 2009 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
Se l'utente dhinesh tenta di eseguire lo stesso comando per l'utente ramesh, riceverà il seguente messaggio di autorizzazione negata.
$ chage --list ramesh chage: permission denied
Nota: Tuttavia, un utente root può eseguire il comando chage per qualsiasi account utente.
Quando l'utente dhinesh cambia la sua password il 23 aprile 2009, aggiornerà il valore "Ultima modifica password" come mostrato di seguito.
Fai riferimento al nostro articolo precedente:Best Practices e Guida definitiva per la creazione di password super sicure, che ti aiuteranno a seguire le best practice durante la modifica della password per il tuo account.
$ date Thu Apr 23 00:15:20 PDT 2009 $ passwd dhinesh Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully $ chage --list dhinesh Last password change : Apr 23, 2009 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
2. Imposta la data di scadenza della password per un utente utilizzando l'opzione di modifica -M
L'utente root (amministratori di sistema) può impostare la data di scadenza della password per qualsiasi utente. Nell'esempio seguente, la password dhinesh dell'utente scade a 10 giorni dall'ultima modifica della password.
Tieni presente che l'opzione -M aggiornerà sia le voci "Scadenza password" che "Numero massimo di giorni tra la modifica della password" come mostrato di seguito.
Syntax: # chage -M number-of-days username # chage -M 10 dhinesh # chage --list dhinesh Last password change : Apr 23, 2009 Password expires : May 03, 2009 Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 10 Number of days of warning before password expires : 7
3. Messaggio di avviso di scadenza password durante l'accesso
Per impostazione predefinita, il numero di giorni di avviso prima della scadenza della password è impostato su 7. Quindi, nell'esempio precedente, quando l'utente dhinesh tenta di accedere il 30 aprile 2009, riceverà il seguente messaggio.
$ ssh dhinesh@testingserver dhinesh@testingserver's password: Warning: your password will expire in 3 days
4. Utente costretto a modificare la password dopo la data di scadenza
Se la data di scadenza della password raggiunge e l'utente non cambia la propria password, il sistema costringerà l'utente a modificare la password prima dell'accesso come mostrato di seguito.
$ ssh dhinesh@testingserver dhinesh@testingserver's password: You are required to change your password immediately (password aged) WARNING: Your password has expired. You must change your password now and login again! Changing password for dhinesh (current) UNIX password: Enter new UNIX password: Retype new UNIX password:
5. Imposta la data di scadenza dell'account per un utente
Puoi anche utilizzare il comando chage per impostare la data di scadenza dell'account come mostrato di seguito utilizzando l'opzione -E. La data indicata di seguito è nel formato “AAAA-MM-GG”. Questo aggiornerà il valore "Account scade" come mostrato di seguito.
# chage -E "2009-05-31" dhinesh # chage -l dhinesh Last password change : Apr 23, 2009 Password expires : May 03, 2009 Password inactive : never Account expires : May 31, 2009 Minimum number of days between password change : 0 Maximum number of days between password change : 10 Number of days of warning before password expires : 7
6. Forza il blocco dell'account utente dopo X numero di giorni di inattività
In genere, se la password è scaduta, gli utenti sono obbligati a cambiarla durante il prossimo accesso. Puoi anche impostare una condizione aggiuntiva, in cui dopo la scadenza della password, se l'utente non ha mai provato ad accedere per 10 giorni, puoi bloccare automaticamente il suo account utilizzando l'opzione -I come mostrato di seguito. In questo esempio, la data "Password inattiva" è impostata su 10 giorni dal valore "Password scaduta".
Una volta bloccato un account, solo gli amministratori di sistema potranno sbloccarlo.
# chage -I 10 dhinesh # chage -l dhinesh Last password change : Apr 23, 2009 Password expires : May 03, 2009 Password inactive : May 13, 2009 Account expires : May 31, 2009 Minimum number of days between password change : 0 Maximum number of days between password change : 10 Number of days of warning before password expires : 7
7. Come disabilitare l'invecchiamento della password per un account utente
Per disattivare la scadenza della password per un account utente, imposta quanto segue:
- -m 0 imposterà il numero minimo di giorni tra la modifica della password su 0
- -M 99999 imposterà il numero massimo di giorni tra la modifica della password a 99999
- -I -1 (numero meno uno) imposterà la "Password inattiva" su mai
- -E -1 (numero meno uno) imposterà "Scade l'account" su mai.
# chage -m 0 -M 99999 -I -1 -E -1 dhinesh # chage --list dhinesh Last password change : Apr 23, 2009 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
Questo articolo è stato scritto da Dhineshkumar Manikannan. Lavora presso bk Systems (p) Ltd ed è interessato a contribuire all'open source. The Geek Stuff accoglie con favore i tuoi suggerimenti e gli articoli degli ospiti