Come creare un utente Linux senza password ma essere in grado di impostarlo?


8

Ho un nome utente e una chiave SSH per un ragazzo (ipotetico) e devo dargli l'accesso come amministratore a un server Linux (Ubuntu).

Voglio che sia in grado di accedere tramite SSH e quindi impostare la password da solo tramite una connessione protetta, invece di passare la password.

So come far scadere la password e costringerlo a resettarlo al primo accesso. Ma questo non funziona a meno che non abbia già una password, che poi devo dirgli.

Ho pensato di rendere vuota la password: SSH non avrebbe consentito l'accesso, ma quindi chiunque può accedere suall'utente.

La mia domanda è: esiste qualche buona pratica per creare account in questo modo? O l'impostazione di una password predefinita è inevitabile?

Risposte:


7

Hai la sua chiave pubblica SSH? Inseriscilo .ssh/authorized_keysnella sua directory home. Una volta che lo hai fatto (e le autorizzazioni sono abbastanza restrittive - SSH ne è pignolo.) Sarà in grado di accedere senza bisogno di una password ... e non ne avrà mai bisogno.

La parte migliore è che la sua chiave pubblica non è sensibile, quindi passarla in giro nelle e-mail o nella chat va bene e la sua chiave privata non lascia mai il suo computer.


1
Avrà bisogno di una password sudo, vero?
Leonid Shevtsov,

1
È possibile consentire sudo senza password.
MDMarra,

1
Con una riga come USERNAME = NOPASSWD: /usr/local/bin/pwreset.shin /etc/sudoerse lo script che pwreset.shesegue il comando /usr/bin/passwd USERNAMEnon avrà bisogno di una password per (ri) impostare la propria password.
Ansgar Wiechers,

0

Basta inserire un file di testo con la password all'interno che gli utenti ospitano con i diritti 600. L'utente che accede con la chiave modifica la password ed elimina il file. Con uno script con set di bit suid puoi persino creare qualcosa come passwd <file di testo senza dare all'utente il diritto di leggere il file (i diritti sarebbero 060 con group = root)


-2

L'impostazione di una password predefinita è inevitabile. La mia procedura sarebbe:

1) generare una password sicura e casuale (diversa per ogni utente). Uso il generatore di password nelle impostazioni dell'account di OSX ma è possibile utilizzare un sito Web come http://strongpasswordgenerator.com

2) Fornire loro la password in modo sicuro, ad esempio di persona o tramite http://www.privnote.com

3) forzare un ripristino al primo accesso come già sai fare


Mai , in nessun caso, utilizzare alcun tipo di generatore di password online (o -checker per quella materia).
Ansgar Wiechers,

@AnsgarWiechers, puoi sostenere questa affermazione con una buona argomentazione?
Zoredache,

Troppo coinvolto che non puoi controllare. Anche se il codice JavaScript in realtà è in esecuzione nel browser: ti peer-review lo script ogni volta prima di utilizzarlo per assicurarsi che ancora non invia l'ovunque password?
Ansgar Wiechers,

Ecco perché gli dici di generare alcune centinaia di password e di sceglierne una a caso.
Concedi il

@Grant: anche se ne scegli una tra poche centinaia di password, un utente malintenzionato sarebbe comunque sceso a poche centinaia di ipotesi, che sono fin troppo facili per la forza bruta. Sono disponibili opzioni sufficienti per generare password casuali localmente senza alcun tipo di accesso al web. Se ti interessa la sicurezza: usa uno di quelli.
Ansgar Wiechers,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.