Adoro l'idea di accedere ai server tramite le chiavi, in modo da non dover digitare la mia password ogni volta che mi trovo ssh
in una scatola, blocco anche la root
password ( 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 sudo
comandi. 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
sudo
una 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
sudo
ha 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_config
modo da avere ancora una chiave per accedere, posso usare una password più semplice solo per sudo
questo è più facile da digitare? È una strategia valida?
Follow-up 2
Se ho anche una chiave per accedere come root
tramite 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 root
all'account , bypassando il sudo
percorso. Quale dovrebbe essere la politica per accedere root
all'account allora?
/etc/passwd
come 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.