Adoro l'idea di accedere ai server tramite le chiavi, in modo da non dover digitare la mia password ogni volta che mi trovo sshin una scatola, blocco anche la rootpassword ( non ) dell'utente ( passwd -l username), quindi è impossibile accedere senza una chiave.
Ma tutto ciò si interrompe se mi viene richiesto di inserire la password per i sudocomandi. Quindi sono tentato di impostare senza passwordsudo per rendere le cose in linea con l'accesso senza password.
Tuttavia, continuo ad avere la sensazione che possa ritorcermi contro in qualche modo inaspettato, sembra solo in qualche modo insicuro. Ci sono avvertenze con tale impostazione? Consiglieresti / non consiglieresti di farlo per un account utente su un server?
chiarimenti
- Sto parlando dell'uso di
sudouna sessione utente interattiva qui, non per servizi o script amministrativi - Sto parlando di utilizzare un server cloud (quindi non ho accesso fisico locale a una macchina e posso accedere solo da remoto)
- So che
sudoha un timeout durante il quale non devo reinserire la mia password. Ma il mio concerto non riguarda davvero lo spreco di tempo extra per digitare fisicamente una password. La mia idea però era di non dover gestire affatto una password, perché presumo che:- Se devo memorizzarlo, è molto probabile che sia troppo corto per essere protetto o riutilizzato
- Se generi una password lunga e unica per il mio account remoto, dovrò salvarla da qualche parte (un programma di gestione password locale o un servizio cloud) e recuperarla ogni volta che voglio usarla
sudo. Speravo di poterlo evitare.
Quindi, con questa domanda, volevo capire meglio i rischi, le avvertenze e gli svantaggi di una possibile configurazione rispetto alle altre.
Follow-up 1
Tutte le risposte affermano che la passwordless sudoè insicura in quanto consente una "facile" escalation dei privilegi se il mio account utente personale viene compromesso. Lo capisco. D'altra parte, se uso una password, incorrere in tutti i rischi classici con password (stringa troppo corta o comune, ripetuta su servizi diversi, ecc.). Ma immagino che se disabilito l'autenticazione della password in /etc/ssh/sshd_configmodo da avere ancora una chiave per accedere, posso usare una password più semplice solo per sudoquesto è più facile da digitare? È una strategia valida?
Follow-up 2
Se ho anche una chiave per accedere come roottramite ssh, se qualcuno accede al mio computer e ruba le mie chiavi (sono comunque protetti dalla password del portachiavi del sistema operativo!), Potrebbe anche ottenere un accesso diretto rootall'account , bypassando il sudopercorso. Quale dovrebbe essere la politica per accedere rootall'account allora?
/etc/passwdcome nologin, impostare nessuna password, quindi impostare senza password in visudo. Se lo fai, dovresti anche assicurarti che l'impostazione di visudo sia solo per ciò di cui quell'account di sistema ha assolutamente bisogno, cioè bloccalo agli unici comandi che dovrebbe mai eseguire.