Как посмотреть активные сессии других пользователей на Linux-сервере?

«Как посмотреть активные сессии других пользователей на Linux-сервере?» — вопрос из категории Linux, который задают на 23% собеседований Devops Инженер. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для аудита безопасности и мониторинга активности на сервере используются несколько команд, показывающих разные уровни детализации.

1. Текущие сессии и их активность:

# Кто сейчас в системе: пользователь, TTY, время входа, удаленный хост
who

# Расширенная информация: что делают пользователи (текущий процесс, uptime, load)
w

2. Поиск SSH-сессий и их источников:

# Показать процессы sshd с IP-адресами клиентов
ps -ef | grep sshd
# Более точно (для систем с systemd)
sudo systemctl status sshd

# Просмотр истории входов/выходов (читает /var/log/wtmp)
last

3. Мониторинг логов аутентификации в реальном времени:

# Для Ubuntu/Debian
sudo tail -f /var/log/auth.log

# Для CentOS/RHEL/Rocky Linux
sudo tail -f /var/log/secure

Практическое применение в DevOps: Я автоматизирую сбор этих логов в централизованную систему (например, Loki или ELK) и настраиваю алерты на подозрительную активность: множественные неудачные попытки входа (Failed password) или входы с необычных IP-адресов. Для быстрого реагирования на инциденты команда w помогает понять, что делал потенциальный злоумышленник в системе.