Вопрос прост: я хочу перечислить все учетные записи пользователей, которые могут войти в мою систему, но я не уверен, что все пользователи в / etc / passwd «могут войти»?
Подробности:
Я вижу пользователей, оболочки которых настроены на /usr/sbin/nologin
и /bin/false
в /etc/passwd
, значит ли это, что они не могут войти в систему?
Я также знаю, что могу установить зашифрованный пароль пользователя на *
или !
в /etc/shadow
чтобы отключить учетную запись, поэтому «отключенный пользователь» также должен рассматриваться как «не может войти в систему», верно?
Во многом это зависит от вашего определения «входа в систему» - технически любой пользователь, который существуют в /etc/passwd
& /etc/shadow
является «действующим пользователем» и теоретически может войти в систему при правильном стечении обстоятельств.
Методы, о которых вы говорите, делятся на следующие широкие категории:
Пользователи с «заблокированными» учетными записями
Пользователь, пароль которого установлен на *
, !
, или какой-либо другой хэш, который никогда не будет совпадать, "заблокирован" (во времена Солнца соглашение часто *LK*
, для "Заблокировано").
Эти пользователи не могут войти в систему введя пароль, но они жестяная банка по-прежнему регистрируются с использованием других механизмов аутентификации (например, ключей SSH).
Пользователи с "неинтерактивной" оболочкой
Пользователь, чья учетная запись имеет "неинтерактивную оболочку" (/bin/false
, /sbin/nologin
) не могу войти интерактивно - т.е. они не могут получить приглашение оболочки для запуска команд (это также предотвращает выполнение команды SSH, если у пользователя есть ключи SSH в системе).
Эти пользователи могут по-прежнему иметь возможность входить в систему, чтобы делать такие вещи, как чтение / отправка электронной почты (через POP / IMAP и SMTP AUTH). Установка неинтерактивной оболочки для пользователей, которым никогда не придется использовать оболочку (и для большинства «учетных записей служб»), обычно считается хорошей практикой.
Таким образом, в зависимости от ваших критериев «возможность входа в систему» вы можете проверить одно или обе эти вещи.
Есть разница между отключением пользователя и установкой оболочки на / bin / false или аналогичную.
Установка оболочки в / bin / false предотвращает получение пользователем оболочки, но они все равно могут войти в систему, если локальные пользователи используются для чего-то еще (проверка подлинности почты, ftp и т. Д.). Отключение пользователя делает невозможным использование каких-либо служб сервера, использующих локальных пользователей.
В дополнение к вышесказанному, пользователи могут быть заблокированы в системе, даже если их пароль выглядит правильным, используя несколько различных методов.
/etc/security/access.conf можно использовать для ограничения числа пользователей, которые могут войти в систему.
Существует множество модулей PAM, которые можно настроить для ограничения определенных пользователей или изменения поведения входа в систему в зависимости от необходимости. (т.е. ни один домашний каталог на сервере не запрещает вход.)