Il modo migliore per consentire l'accesso sudo quando si usano le chiavi ssh

8

Probabilmente una domanda semplice, ma non riesco a trovare alcuna best practice attuale. Gestisco una manciata di server e mi sto davvero stancando di rintracciare le mie password in pwsafe. Ho preso in considerazione l'implementazione utilizzando le chiavi SSH per l'autenticazione, piuttosto che le password, ma temo il modo migliore per implementare i diritti sudo per gli utenti in quel caso.

So che molte persone modificano / etc / sudoers per avere e impostare i propri utenti necessari su NOPASSWD. Ma non vedo alcuna menzione di persone che danno le password ai loro utenti, quindi ho difficoltà a farlo. Che cosa succede se la mia casella è di proprietà di un utente non privilegiato, tutto ciò che sarebbe necessario è un "utente su" veloce nel mio utente di NOPASSWD e in teoria sarei in grado di farlo. O peggio ancora, l'accesso fisico e qualcuno che conosce il mio nome utente.

È consigliabile andare avanti e impostare una password su questi account, o ci sono altri meccanismi usati come impedire gli accessi locali o le persone semplicemente impostano una password e la buttano via / non la usano mai?

    
posta z0dSki 05.10.2013 - 19:55
fonte

2 risposte

8

L'opzione NOPASSWD consente al programma sudo di essere eseguito dall'utente sudo senza dover inserire una password. Non implica che il tuo account sia senza password.

Gli altri utenti che eseguono su youruser devono ancora inserire la password per youruser . Ma se hai effettuato l'accesso come youruser (tramite accesso fisico o tramite SSH), non devi inserire una password quando esegui sudo somecommand .

    
risposta data 05.10.2013 - 20:06
fonte
0

Come @Lekensteyn menzionato nella sua risposta, la direttiva NOPASSWD nel file /etc/sudoers rimuove semplicemente la necessità che l'utente inserisca la sua password quando esegue il comando sudo .

Questo ha letteralmente zero correlazione se l'utente sta eseguendo ssh-in nella casella tramite password o chiavi ssh. In entrambi i casi, se l'utente ha accesso ssh nella casella e gli consente di eseguire i comandi tutti o anche solo su fino a sudo nel file /etc/sudoers , può eseguire l'escalation del proprio privilegi di root semplicemente eseguendo sudo su - .

La migliore pratica, naturalmente, è quella di non lasciare che i vecchi utenti eseguano vecchi comandi usando sudo . Crea una whitelist di comandi che un utente specifico dovrebbe poter eseguire come root e consentirgli l'accesso a nient'altro. Puoi facilmente (se un po 'noioso) configurare vari gruppi "amministratore" con diversi set di privilegi sudo e assegnare il suddetto gruppo a un utente specifico. Consulta man sudoers per ulteriori informazioni su configurazioni specifiche.

    
risposta data 06.10.2013 - 07:49
fonte

Leggi altre domande sui tag