FreeIPA: impedisce che accedere a root locali agli account utente

Così dopo aver fatto questa domanda, ho testato FreeIPA come una fonte di authentication centrale basata su questa domanda: Gestione dell'accesso a più sisthemes Linux

Un problema in cui mi sono imbattuto è che se un utente è dotato delle autorizzazioni di root locali, possono accedere in seguito a qualsiasi utente della directory FreeIPA. Anche se tali utenti non hanno accesso a tale macchina tramite le regole HBAC.

Scenario di esempio:

  • Macchina client PC FreeIPA.
  • Due utenti in FreeIPA: Bob e Alice.
  • Alice non è autorizzata a accedere a PC1 tramite le regole HBAC. Bob ha radice locale su PC1. Bob può su per diventare Alice su PC1.

L'unica cosa che posso trovare fa riferimento a commentare questa linea in /etc/pam.d/su:

auth sufficient pam_rootok.so 

Che ora chiede la root locale per la password di Alice se cerca di: su alice

Tuttavia, se Bob ha accesso alla radice, può anche abilitare facilmente la linea PAM / su sopra. Non dovrebbe che FreeIPA impedisca al conto di Alice di accedere a PC1 se sia tramite l'attemp di accesso diretto o la su-su root locale? Come si impedisce che le radici locali siano in grado di accedere come qualsiasi utente FreeIPA?

  • Autenticazione LDAP - evitare duplicati uidNumber
  • Imansible accedere a SSH dopo aver configurato l'authentication LDAP
  • I server Linux che utilizzano AD / Kerberos per l'authentication / authorization necessitano di conti di computer?
  • rpm2cpio salta i file da RPM
  • Configurazione di Synology NAS come client freeIPA
  • Che cos'è l'enumerazione LDAP?
  • Informazioni sulla procedura di authentication PAM su FreeBSD con security / sssd
  • kinit & pam_sss: Imansible trovare KDC per il dominio richiesto, mentre ottiene credenziali iniziali
  • 4 Solutions collect form web for “FreeIPA: impedisce che accedere a root locali agli account utente”

    La classificherei come un "sfruttamento della sicurezza" tra il rapporto tra il sistema client di Linux e FreeIPA. Anche se non necessariamente un 'bug', esso espande la capacità di account root root oltre quella dell'istanza O / S locale (che non dovrebbe ').

    Le affermazioni ripetitive che questo problema riguarda tutto UNIX e come funziona è errato. Sebbene un account "root" abbia la capacità di creare una versione localizzata di qualsiasi ID di account e di "su", l'utilizzo di FreeIPA consente all'account principale locale di get e accedere alle risorse esistenti esternamente all'istanza locale (anche se specificamente configurate " non "per essere a disposizione di esso).

    Questo è un problema con l'implementazione FreeIPA, che consente all'account "root" locale di sfuggire ai suoi confini …

    Si prega di controllare la risposta di Simo Sorce in un Bugzilla correlato, riassume abbastanza bene il model di sicurezza di Linux e quello che puoi o non puoi fare come root locale:

    Ciao Swartz, l'account di root su qualsiasi macchina Linux è tutto potente e può fare tutto ciò che vuole, può anche creare utenti locali e impersonarli senza emettere.

    Suggerisco di prendere il tempo per capire qual è il model di sicurezza su Linux e cosa può fare l'account principale (qualsiasi cosa, anche modificando il kernel in esecuzione).

    In each caso una macchina compromise non può realmente fare niente di più, in un ambiente IPA, di quello che può fare in qualsiasi altro ambiente.

    A less che la macchina compromise non ruba credenziali effettive attive, non può influenzare altre macchine a less che non utilizzi servizi non sicuri che implicitamente si fidano di qualsiasi cliente.

    Nel caso NFS ad esempio root-squash non è veramente qualcosa che si può fidare di qualsiasi protezione, se si è preoccupati per l'accesso ai servizi NFS è necessario eseguire NFS con sec = krb5, where each accesso utente è autenticato tramite credenziali kerberos.

    Se sei interessato a un modo per limitare ciò che gli utenti (anche la root) possono fare, ti suggerisco di leggere su SELinux e le funzionalità e come limitare gli utenti di tutti i tipi.

    Sto chiudendo questo come NOTABUG, perché non c'è nulla di sconosciuto in quello che stai descrivendo nella relazione, questa è tutta la roba nota.

    Ok, se il tuo utente è "root" locale su quella macchina, può fare qualsiasi cosa su quella macchina. Bloccare "su" non avrebbe veramente impedito nulla. "su -" trump tutto, è intrinsecamente locale.

    Per qualcosa che si desidera realizzare è necessario progettare le regole HBAC contro il servizio chiamato 'su-'. La cosa principale qui è che nessun account utente dovrebbe avere radice locale sulle caselle.

    Spero che questo ti aiuti.

    Dovresti metterlo in /etc/pam.d/su e /etc/pam.d/runuser :

     auth required pam_localuser.so 
    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.