Kerberos Autorizzazione host / servizio per host / servizio base

2

Comprendo che Kerberos è per l'autenticazione e non l'autorizzazione, ma è possibile convincere Kerberos a rifiutarsi di autenticare determinati utenti su specifici host? Attualmente sto usando LDAP per / etc / passwd / etc / group, fornendo la voce userPassword come un '!!' per disabilitare l'accesso per impostazione predefinita. E Kerberos sta servendo l'autenticazione. Sarebbe bello se tutti gli host potessero utilizzare LDAP, fornendo al contempo elenchi di utenti che non (o non) desiderano fornire l'autenticazione tramite Kerberos .. Se ciò non è possibile, come consiglieresti di farlo?

Quando ho installato il KDC, ho avuto l'impressione che l'ACL di kerberos mi permettesse di specificare dove (quali servizi / host) gli utenti specifici potevano ottenere i ticket.

    
posta Shane 14.12.2014 - 05:46
fonte

1 risposta

1

Questa è più una soluzione a quello che sto cercando di ottenere che una risposta alla domanda che ho posto. Se qualcuno ha una risposta più diretta alla domanda, per favore contribuisci.

Grazie alle brave persone del CERN e di Ubuntu per avermi messo sulla strada giusta: link
link

Apparentemente il pacchetto nss-pam-ldap per l'utilizzo di LDAP nell'NSSwitch per fornire / etc / passwd permette di fare un po 'di filtraggio o sovrascrittura dei valori (sebbene non l'abbia ancora provato). Questo potrebbe essere utile se normalmente i homedirs degli utenti LDAP si trovano su NFS, ma su un host specifico, si desidera che abbiano homedir locali.

nslcd.conf
# Set the user homedirectory to /home/$USER map passwd homeDirectory "/home/$homeDirectory"

Oppure mappare a nologin per mantenere le corrette autorizzazioni file su un server NFS (senza consentire agli utenti LDAP una shell)
# Set the login shell to /sbin/nologin map passwd loginShell "/sbin/nologin"

Alcuni filtri di base
# Only get users from group 1160 filter passwd (&(objectClass=user)(uidNumber=*)(unixHomeDirectory=*)(gidNumber=1160))

Altre cose possono essere fatte con la configurazione di ldap stessa (/etc/ldap.conf o /etc/openldap/ldap.conf), per esempio aggiungendo un attributo utente: host agli utenti LDAP, dove si ha un attributo host (con nome host) per ogni host a cui l'utente può accedere e righe come questa:
nss_base_passwd ou=Users,dc=example,dc=com?one?|(host=thehostname)(host=\*)

Per maggiori informazioni, basta seguire i link che ho postato in alto, e se ho tempo per far funzionare tutte queste cose in un modo che apprezzo, cercherò di chiarire questa risposta un po '.

EDIT: il sito web principale per il pacchetto nss-pam-ldap è qui:
arthurdejong.org/nss-pam-ldapd/
ha qualche documentazione per il file nsldc.conf

    
risposta data 16.12.2014 - 02:27
fonte

Leggi altre domande sui tag