2016-05-12 3 views
0

я должен использовать /etc/pam.d/su службы, чтобы разрешить любому пользователю в моей Sistem делатьКак настроить PAM, чтобы разрешить «su» пользователю5 от любого пользователя?

su user5 

и пароль требует.

Я пытался с этим, но он не работает:

auth  [success=ignore default=1] pam_succeed_if.so user = user5 
+1

Это, вероятно, лучше подходит для ServerFault или Unix SE (http://unix.stackexchange.com/), поскольку то, что вы делаете, это конфигурация, а не программирование. –

+0

Тем не менее, вы настроили PAM для ведения журнала на уровне отладки в syslog? Если у вас появилось сообщение об ошибке, это было бы намного полезнее, чем «не работает». (См. Также http://serverfault.com/questions/249671/switch-on-pam-debugging-to-syslog) –

+0

Нет сообщения об ошибке, я попытался получить идентификатор user5 после того, как поместить эту строку в su файл, но он по-прежнему требует пароль. – alejaandroe

ответ

0

Рассмотрим просто:

# consider success given a match, but continue on to other auth steps in addition 
auth pam_succeed_if.so user = user5 

... или ...

# perform no further auth steps if this succeeds 
auth [success=done] pam_succeed_if.so user = user5 

В success=ignore default=1 флаги имеют смысл в сценарии, где ближайший следующий модуль - это то, что вы хотите выполнить для user5, но пропустите для всех других пользователей. Этот сценарий - это не то, что вы называете своим намерением.


Тем не менее, su не может быть правильным инструментом для этой работы на всех. Рассмотрим двоичный файл setuid (например, оболочку), принадлежащий user5 (с неизменяемым флагом или файловой системой только для чтения, если вы действительно не хотите, чтобы user5 мог его модифицировать).