Ho sentito spesso che è meglio fare il root su piuttosto che accedere direttamente come utente root (e ovviamente la gente dice anche che è ancora meglio usare sudo). Non ho mai veramente capito perché uno è migliore dell'altro (s), intuizione?
Ho sentito spesso che è meglio fare il root su piuttosto che accedere direttamente come utente root (e ovviamente la gente dice anche che è ancora meglio usare sudo). Non ho mai veramente capito perché uno è migliore dell'altro (s), intuizione?
Risposte:
L'inferenza è solo su
o sudo
quando richiesto.
La maggior parte delle attività quotidiane non richiede una shell di root. Quindi è buona norma utilizzare una shell senza privilegi come comportamento predefinito e quindi elevare alla radice solo quando è necessario eseguire attività speciali.
In questo modo si riduce la possibilità di errori pericolosi (scripting errato, caratteri jolly fuori posto, ecc.) E vulnerabilità da qualsiasi applicazione utilizzata. Soprattutto quelli che si collegano a Internet - vedi il vecchio adagio "Non IRC come root" .
sudo
è spesso raccomandato perché ti consente di controllare e controllare l'uso di tali privilegi.
Osservando queste pratiche sei anche in grado di disabilitare gli accessi root remoti. Ciò aumenta la barra di accesso per qualsiasi potenziale attaccante, in quanto dovrebbe compromettere sia un normale account utente che era un membro del gruppo "wheel" e idealmente autorizzato solo da chiavi pubbliche SSH, quindi l'account root stesso.
sudo
sia superiore, su
consente anche di utilizzare il -m
flag per mantenere le variabili di ambiente uguali mentre si trova in un terminale root. Niente mi spinge più in là che a su
fare il root per un po ', solo per fare qualcosa con ~
il nome della directory e farlo funzionare.
Il motivo principale è creare una pista di controllo. Se è necessario accedere a un sistema come utente normale e quindi fare clic su, è possibile rintracciare chi è responsabile di determinate azioni.
sudo registra inoltre automaticamente tutti i comandi su syslog e puoi definire i comandi che ogni utente può utilizzare.
sudo vim foo.txt
quindi rilasciare una shell dall'interno di VIM ti darà una shell di root senza la normale registrazione sudo.
sudo -i
per avere una sessione interattiva ...
Se si desidera creare una pista di controllo e non cadere vittima dei problemi "sudo su -" o "sudo vim foo.txt" menzionati qui, è possibile utilizzare "sudosh". Distribuisci l'accesso root tramite sudo, ma esegui l'unico comando consentito per eseguire "sudosh".
sudosh è una shell di registrazione ed è possibile riprodurre l'intera sessione del terminale in un secondo momento, mostrando esattamente ciò che l'utente ha visto sul proprio terminale.
Dovresti praticare la sicurezza in modo approfondito.
Non consentire l'accesso root remoto (o almeno l'accesso root tramite password). (se consenti l'accesso alla radice tramite chiavi, controlla attentamente quelle chiavi, o meglio usa qualcosa come Kerberos che consenta la revoca centralizzata delle chiavi).
Disabiliterei su e userei sudo. In questo modo, gli utenti usano le chiavi (preferibilmente crittografate) per accedere al sistema, quindi usano le loro password solo per l'escalation dei privilegi. È possibile limitare i programmi a cui le persone accedono con sudo, ma per lo più si limita l'accesso a chi conosce la password di root.
In un mondo ideale, dovresti essere in grado di pubblicare le tue password di root su Internet e non importa, anche se hai dato alle persone l'accesso al tuo computer (ma non le hai inserite nel file / etc / sudoers). Ovviamente, non dovresti pubblicare la password di root, ma l'idea è di proteggere i tuoi sistemi con livelli concentrici di protezione.
Se si utilizza root su base regolare, le autorizzazioni potrebbero essere errate o potrebbe essere necessario concedere diritti sudo o un nuovo diritto di gruppo per r / w / x i file o le directory.
I buoni schemi di permessi sono qualcosa che anche gli utenti Linux da molto tempo sbagliano o non comprendono l'ambito che hanno.
Non farmi nemmeno iniziare su ciò che ha fatto Ubuntu!