Soluzione 1:
Puoi usare lo AuthorizedKeysFile
direttiva in /etc/ssh/sshd_config per farlo. La posizione predefinita è .ssh/authorized_keys
ma potresti usare qualcosa che contenga un percorso assoluto, ad es.
AuthorizedKeysFile /path/to/your/keyfile
le pagine man dicono questo
FileChiaviAutorizzate
Specifica il file che contiene le chiavi pubbliche che possono essere utilizzate per l'autenticazione dell'utente. AuthorizedKeysFile può contenere token nel formato %T che vengono sostituiti durante l'impostazione della connessione. Sono definiti i seguenti token:%% è sostituito da un letterale '%', %h è sostituito dalla home directory dell'utente che viene autenticato e %u è sostituito dal nome utente di quell'utente. Dopo l'espansione, AuthorizedKeysFile viene considerato un percorso assoluto o relativo alla home directory dell'utente. L'impostazione predefinita è ".ssh/authorized_keys".
Soluzione 2:
Modifica :Dovresti votare la risposta di @ Iain sopra. È completo e accurato. La mia risposta di seguito è orientata al privato condiviso chiavi - chiaramente un malinteso da parte mia. Lascerò qui questa risposta, poiché la considero un'informazione preziosa, ma non per questa domanda specifica.
Non conosco il tuo caso d'uso, ma sono tentato di dire "stai sbagliando".
Ogni utente dovrebbe avere il proprio kepair. In questo modo, quando un utente lascia, viene trasferito, promosso a un ruolo di gestione o qualsiasi altra cosa che richieda la revoca dei diritti, revochi solo quella chiave. Questo rende anche l'auditing efficace molto, molto più difficile.
Se hai bisogno che gli utenti siano in grado di impersonare altri utenti, dovrebbero essere configurati per farlo con sudo
. Avere chiavi SSH condivise normalmente non è una buona idea.
Soluzione 3:
I tuoi amministratori dovrebbero usare una combinazione appropriata (per il tuo ambiente) di sudo
e su
.
ssh
non è lo strumento giusto per questo.
Modifica contraddittoria (Scusa, sembra che abbia sofferto di cecità ai titoli. Grazie Zoredache):
Inserisci tutti gli account di servizio nello stesso group
, usa quel gruppo come parte di un Match
blocco in sshd_config
specificare il AuthorisedKeysFile
vuoi che tutti usino. (Il gruppo di corrispondenza è così che tutti gli account non vengono interessati.) Tuttavia, non avranno più singoli AuthorisedKeysFile. openssh-lpk
potrebbe consentire ai singoli account di avere anche le proprie chiavi, ma non ne sono sicuro.