У нас есть несколько учетных записей пользователей с выделенной им оболочкой / bin / bash. Еще одно приложение «su» для этих учетных записей для управления статусами их служб и целей мониторинга. Однако пароли для этих пользователей не установлены. Что мне делать, чтобы обезопасить этих пользователей.
Обратитесь к документу https://unix.stackexchange.com/questions/113754/allow-user1-to-su-user2-without-password
не будет ли это окно потенциального эксплойта, если учетная запись пользователя может быть авторизована с использованием модулей pam. т.е. без sudo и без паролей. Что с этим делать?
Каждый раз, когда у вас есть граница безопасности, которая не требует аутентификации, у вас есть потенциальная уязвимость. Можно ли превратить это в эксплойт на практике - это другая проблема, но в этом случае, если вы понижаете привилегии, все будет в порядке.
Объяснение, данное в выбранном ответе на вопрос, на который вы указали ссылку, не менее безопасно, чем любой другой вариант, и фактически даже не требует от вас наличия каких-либо других средств для аутентификации в качестве соответствующих пользователей. Для чего-то, что является только локальным, это, вероятно, то, что я бы сделал сам, хотя я бы сделал это с sudo вместо su (su по своей сути небезопасен из-за того, как он разработан).
В качестве альтернативы вы также можете добиться того же, используя SSH и аутентификацию с открытым ключом, вы просто создаете пару ключей для учетной записи, которая выполняет мониторинг, и требуете, чтобы ваши другие учетные записи имели открытый ключ для этой учетной записи в ~/.ssh/authorized_keys
. Однако, если другие учетные записи используются реальными людьми, это, вероятно, не лучшая идея, потому что они могут взломать и заставят нервничать любого, кто разумно настроен на безопасность.