Ответ
Управление пользователями и аудит активных сессий — часть задач безопасности и администрирования инфраструктуры.
1. Все учетные записи в системе:
Информация хранится в /etc/passwd. Для получения только списка логинов:
cut -d: -f1 /etc/passwd
2. Пользователи с доступной оболочкой (чаще всего — реальные пользователи):
Многие системные учетки имеют оболочку /usr/sbin/nologin или /bin/false.
grep -v "/nologin|/false" /etc/passwd | cut -d: -f1
3. Активные сессии в реальном времени (кто сейчас работает на сервере):
who
# Или более подробно (показывает также uptime и нагрузку)
w
4. История входов в систему (аудит):
last
# Показать неудачные попытки входа (требует прав суперпользователя)
sudo lastb
Контекст DevOps:
- Безопасность: Регулярный просмотр
lastиwhoпомогает выявить несанкционированные доступы. В идеале доступ по SSH для людей должен вестись через единые SSH-ключи, а не пароли. - Автоматизация: Сервисные пользователи (например,
nginx,postgres) создаются пакетами при установке. При написании скриптов развертывания (Ansible, shell) важно проверять существование пользователя перед созданием:id -u <username> 2>/dev/null || useradd ... - Контейнеризация: Внутри контейнеров, как правило, только root и, возможно, один непривилегированный пользователь приложения, что минимизирует поверхность атаки.