Сбросить пароль пользователя без рута

8

Есть ли способ разрешить некорневым пользователям изменять пароль другого пользователя. В частности, есть ли способ предоставить сотрудникам службы поддержки возможность сброса пароля. Служба поддержки уже может сбросить пароли Windows, которые легко делегировать.

Они на разных типах серверов, хотя большинство на HP-UX. К сожалению, приложения, которые запускаются на сервере, не позволяют нам использовать LDAP, поэтому эти серверы независимы, и пользователи забывают свои пароли. Часто. Требование администратора сервера, который знает пароль root, особенно ночью, является пустой тратой ресурсов.

Если это возможно, это также препятствует тому, чтобы пользователь изменил root, как Windows препятствует тому, чтобы пользователи изменили пароли администратора от учетных записей не администратора.

Брайан
источник

Ответы:

8

Добавьте группу под названием helpdesk и добавьте в нее всех пользователей heldesk. Затем добавьте следующее в файл sudoers.

%helpdesk ALL=/usr/bin/passwd

Теперь они могут изменить пароли, но не более того.

Джим
источник
1

Учитывая, что HP-UX, как говорят, поддерживает PAM , я осмелюсь упомянуть следующий предварительный подход к решению этой проблемы:

используйте pam_tcb (tcb - альтернатива / etc / shadow) , и для каждого пользователя будут использоваться файлы паролей пользователей - ими можно манипулировать без прав root (на самом деле, в Owl, passwd это не setUID root), и вы может дать разрешение на изменение паролей определенных пользователей (а не других, скажем, «root») для определенной группы (путем простого изменения разрешений теневых файлов).

Но, вероятно, это еще не готовое практическое решение, потому что я не вижу порта pam_tcbдля HP-UX.

imz - Иван Захарящев
источник
-1

Обновление: не имеет значения , пароль уже установлен как root. К сожалению.

Вы можете передать атрибут setuid программе passwd. Просто делать

sudo chmod u+s `which passwd`

Затем убедитесь, что только определенные пользователи могут использовать его, поэтому измените группу и ограничьте разрешения:

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

И добавьте своих пользователей в эту группу

sudo adduser frank password_reset_delegates
sudo adduser barbara password_reset_delegates

Возможно, вы захотите сделать копию программы passwd без setuid, чтобы другие пользователи могли изменить свой собственный пароль.

В качестве альтернативы вы можете настроить sudo и разрешить доступ sudo только к программе passwd для пользователей службы поддержки.

Джеймс
источник
Использование метода доступа sudo также создаст хороший контрольный журнал для проверки при необходимости. Вы сможете увидеть, кто что делает для каких пользователей.
Макмил
Судо - это мой путь, но кто-то уже опубликовал это, и я подумал, что представлю варианты.
Джеймс
Потенциально умная идея, за исключением того факта, что passwdsuid root уже запускается, поскольку ему нужно записывать в базы данных системных паролей.
MikeyB
хаха, упс, вы правы.
Джеймс
Подумайте об удалении вашего ответа, если он неправильный;).
Барт Де Вос