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

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

    Когда вы начнете копаться в системе 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 - ответят за нас. Во-первых, чувак:

    Это помогает предотвратить вход пользователей в систему. Иногда вам нужна учетная запись пользователя для конкретной задачи. Тем не менее, никто не должен иметь возможность взаимодействовать с этой учетной записью на компьютере. Это, с одной стороны, системные учетные записи пользователей. С другой стороны, это учетная запись, для которой возможен доступ по 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 Docs (проект OpenStack)