Как только вы начнете копаться в системе Linux, вы можете обнаружить некоторые запутанные или неожиданные вещи, например, / usr / bin / false. Почему он там и какова его цель? В сегодняшнем посте SuperUser Q&A есть ответы на вопросы любопытного читателя.
Сегодняшняя сессия вопросов и ответов проходит благодаря SuperUser - подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.
Вопрос
Читатель SuperUser user7326333 хочет знать, почему у некоторых системных пользователей в качестве оболочки используется / usr / bin / false:
Почему у некоторых системных пользователей в качестве оболочки используется / usr / bin / false? Что это значит?
Почему у некоторых системных пользователей в качестве оболочки используется / usr / bin / false?
Ответ
У разработчиков SuperUser, duDE, Toby Speight и bbaassssiiee есть для нас ответ. Во-первых, duDE:
Это помогает предотвратить вход пользователей в систему. Иногда вам нужна учетная запись пользователя для конкретной задачи. Тем не менее, никто не должен иметь возможность взаимодействовать с этой учетной записью на компьютере. Это, с одной стороны, учетные записи пользователей системы. С другой стороны, это учетная запись, для которой возможен доступ по FTP или POP3, но нет прямого входа в оболочку.
Если вы более внимательно посмотрите на файл / etc / passwd, вы найдете команду / bin / false как оболочку входа для многих системных учетных записей. На самом деле false - это не оболочка, а команда, которая ничего не делает, а затем также заканчивается кодом состояния, который сигнализирует об ошибке. Результат прост. Пользователь входит в систему и сразу же снова видит приглашение для входа.
Далее следует ответ Тоби Спейта:
Эти пользователи существуют как владельцы определенных файлов или процессов и не предназначены для использования в качестве учетных записей. Если значение поля «shell» не указано в / etc / shells, то программы, такие как демоны FTP, не разрешают доступ. Кроме того, для программ, которые не проверяют / etc / shells, они используют тот факт, что / bin / false немедленно вернет и отклонит интерактивную оболочку.
И наш окончательный ответ от bbaassssiiee:
У некоторых пользователей есть / usr / bin / false, у других / sbin / nologin, или у них даже может быть / usr / bin / passwd. Они могут быть либо системными пользователями, которые необходимы для изоляции разрешений программ, либо людьми-пользователями программ, которые используют файлы паролей для аутентификации.
Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь .
Кредит изображения: Документы OpenStack (проект OpenStack)