GNU/Linux >> Linux Esercitazione >  >> Linux

È il mio lavoro come amministratore di Linux abbandonare i privilegi di root delle applicazioni o il lavoro degli sviluppatori di applicazioni?

In qualità di amministratore di Linux, uno dei miei compiti è svolgere una sorta di attività per eliminare i privilegi di root delle applicazioni in esecuzione sui miei sistemi?

Sì. È tuo compito assicurarti che sia fatto. Se l'applicazione non lo fa, devi notare che l'applicazione non lo sta facendo e fallo da solo.

O mi affido semplicemente agli sviluppatori dell'applicazione per assicurarmi che abbiano scritto il loro codice per farlo?

Non fare affidamento sugli sviluppatori di applicazioni per aver fatto qualsiasi cosa. Ci sono molti strumenti a disposizione di un amministratore di sistema Linux per ottenere i fatti di ciò che le applicazioni stanno facendo in fase di esecuzione.


È compito del programmatore dell'applicazione garantire che l'applicazione abbandoni i privilegi di root e funzioni con diritti non privilegiati. Se l'applicazione non lo fa, non c'è niente che tu possa fare al riguardo, a parte astenersi dall'usare l'applicazione, inviare una segnalazione di bug allo sviluppatore o implementare tu stesso le modifiche necessarie nel codice.

D'altra parte, sei tu , in qualità di amministratore, che sceglie come utente avviare l'applicazione; la regola d'oro è non concedere mai a un processo più privilegi di quelli necessari per essere eseguito. Quindi puoi creare un utente senza privilegi:dai un'occhiata a /etc/passwd per avere un'idea degli account di sistema ed eseguire l'applicazione come questo utente. (Raramente devi farlo a mano; di solito questo viene risolto quando installi un software tramite il gestore pacchetti.) Tuttavia, se l'applicazione richiede i privilegi di root per avviarsi e quindi non riesce a eliminare tali privilegi nel mezzo di la corsa, allora è fuori dal tuo controllo.

Ad esempio, versioni precedenti di sendmail richiesto per eseguire SUID root, che rappresentava una falla di sicurezza se un aggressore remoto riusciva a sfruttare con successo una vulnerabilità del programma. Se avessi sendmail eseguito unicamente come inoltro di posta, potresti eseguirlo come utente senza privilegi.


Direi che come amministratori di sistema è nostro compito concedere il minor privilegio possibile alle applicazioni e agli utenti (che consentono loro di svolgere il proprio lavoro).

Un utente che distribuisce app Tomcat/Java o pagine Web o distribuisce un'app con accesso al database raramente ha poche o poche esigenze legittime per l'accesso root.

La maggior parte dei framework al giorno d'oggi rilascia anche root per impostazione predefinita.

Ad esempio, per gli sviluppatori qui che utilizzano framework Java, diamo solo accesso agli sviluppatori a un utente non privilegiato in grado di eseguire la distribuzione e alcuni comandi sudo limitati a (ri)avviare e arrestare alcuni servizi chiave.

Direi ancora di più che non è compito del team di sviluppo occuparsi dei server di produzione.

Dalla mia esperienza di vita, spesso il team di sviluppo è solo preoccupato di portare a termine il proprio lavoro e non è in grado di ottenere una gestione corretta della sicurezza e della capacità senza pianificazione, guida e intervento proattivo da parte del team di amministratori di sistema.


Linux
  1. Come migliorare il tempo di avvio dell'applicazione in Linux

  2. Come impostare i privilegi di Sudo per l'utente in Linux

  3. Linux:come modificare la password di root dimenticata?

  4. Linux:la barra (/) fa parte del nome della directory principale di Linux?

  5. Comprendere la directory /etc/skel in Linux

Come fornire all'utente i privilegi di root su Kali Linux

Amministratore ritardato – Rilascia temporaneamente i privilegi di amministratore agli amministratori

Le 5 migliori distribuzioni Linux per sviluppatori e programmatori

Come modificare la password di root in Linux

Come modificare la password dell'account di root di Linux VPS

I 20 migliori lanciatori di applicazioni Linux per migliorare la tua produttività