62

Почему некоторые системные пользователи имеют /usr/bin/false в качестве оболочки и что это значит?

3 ответа3

72

Это помогает предотвратить вход пользователей в систему.

Иногда вам нужна учетная запись пользователя для конкретной задачи. Тем не менее, никто не должен иметь возможность взаимодействовать с этой учетной записью на компьютере. Это, с одной стороны, учетные записи пользователей системы, с другой стороны, это учетная запись, для которой возможен доступ по FTP или POP3, но просто нет прямого входа в оболочку.

Если вы посмотрите более внимательно на файл /etc/passwd , вы найдете команду /bin/false в качестве оболочки входа для многих системных учетных записей. На самом деле false - это не оболочка, а команда, которая ничего не делает, а затем заканчивается кодом состояния, который сигнализирует об ошибке. Результат прост. Пользователь входит в систему и сразу же видит приглашение для входа снова.

16

Эти пользователи существуют как владельцы определенных файлов или процессов и не предназначены для входа в систему.

Если значение поля "shell" не указано в /etc/shells программы, такие как демоны FTP, не разрешают доступ.

Кроме того, для программ, которые не проверяют /etc/shells , мы используем тот факт, что /bin/false будет немедленно возвращен, поэтому запрещаем интерактивную оболочку.

7

У некоторых пользователей есть /usr /bin /false, у других - /sbin /nologin или даже /usr /bin /passwd. Это могут быть как системные пользователи, которые необходимы для изоляции прав доступа к программам, так и пользователи программ, которые используют файлы паролей для аутентификации.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .