Reimposta la password dell'utente senza root


8

Esiste un modo per consentire agli utenti non root di modificare la password di altri utenti. In particolare, esiste un modo per garantire ai dipendenti dell'help desk la possibilità di eseguire reimpostazioni di password. L'help desk può già ripristinare le password di Windows, che è facile delegare.

Questi sono su una varietà di tipi di server, sebbene la maggior parte su HP-UX. Sfortunatamente, le applicazioni in esecuzione sul server ci impediscono di utilizzare LDAP, quindi questi server sono indipendenti e gli utenti dimenticano le loro password. Spesso. Richiedere un amministratore del server che conosca la password di root, specialmente nel cuore della notte, è uno spreco di risorse.

Se possibile, impedisce anche all'utente di cambiare root, come Windows impedisce agli utenti di cambiare le password dell'amministratore da account non admin.

Risposte:



8

Aggiungi un gruppo chiamato helpdesk e aggiungi tutti gli utenti tenuti ad esso. Quindi aggiungere quanto segue al file sudoers.

%helpdesk ALL=/usr/bin/passwd

Ora possono fare sudo per cambiare le password ma nient'altro.


1

Dato che si dice che HP-UX supporti PAM , oso qui menzionare il seguente approccio pulito e provvisorio per risolvere questo problema:

usa pam_tcb (tcb - l'alternativa a / etc / shadow) , e ci saranno i file delle password degli utenti per utente - possono essere manipolati senza i diritti di root (in effetti, in Owl, passwd non è impostato rootUID) e tu può dare il permesso di modificare le password di determinati utenti (e non gli altri, diciamo "root") in un gruppo specifico (semplicemente modificando le autorizzazioni dei file shadow).

Ma probabilmente non è ancora una soluzione pratica, perché non vedo una porta su pam_tcbHP-UX.


-1

Aggiornamento: Nevermind, passwd è già setuid root. Ops.

È possibile assegnare l'attributo setuid al programma passwd. Basta fare

sudo chmod u+s `which passwd`

Quindi assicurati che solo determinati utenti possano utilizzarlo, quindi modifica il gruppo e limita le autorizzazioni:

sudo chgrp password_reset_delegates `which passwd`
sudo chmod 770 `which passwd`

E aggiungi i tuoi utenti a quel gruppo

sudo adduser frank password_reset_delegates
sudo adduser barbara password_reset_delegates

Potresti voler fare una copia del programma passwd senza il setuid in modo che altri utenti possano cambiare la propria password.

In alternativa, è possibile configurare sudo e consentire l'accesso sudo solo al programma passwd per gli utenti dell'helpdesk.


L'uso del metodo di accesso sudo creerà anche una buona pista di controllo per la revisione, se necessario. Sarai in grado di vedere chi sta facendo cosa per quali utenti.
Mcmeel,

sudo è il modo in cui vorrei andare, ma qualcuno l'ha già pubblicato e ho pensato di presentare delle opzioni.
James,

Un'idea potenzialmente intelligente, tranne per il fatto che passwdesegue già suid root in quanto deve scrivere nei database delle password di sistema.
MikeyB,

ahah, oops, hai ragione.
James,

Valuta di eliminare la tua risposta se è sbagliata;).
Bart De Vos,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.