Записывать ssh-сессии в rsyslog
Как я могу настроить rsyslog
протоколировать команды, набранные в сеансе SSH?
На всякий случай, если кто-то неавторизованный когда-либо получит доступ к системе, я хотел бы знать, что он сделал.
2 ответа
Для меня это звучит так: вы хотите проверять действия пользователя после входа на ваш сервер. Это действительно больше функция оболочки, которую запускает ваш пользователь (например, bash).
Проверьте https://askubuntu.com/questions/93566/how-to-log-all-bash-commands-by-all-users-on-a-server
Вероятно, вы можете использовать то же самое для любого пользователя, который входит в систему удаленно.
На данный момент не так много доступных вариантов.
Некоторые из моих коллег из Национальной лаборатории им. Лоуренса Беркли (LBNL) выпустили серию исправлений для OpenSSH в рамках своего проекта auditing-sshd. Код открыт и доступен под лицензией "BSD Simplified". auditing-sshd
регистрирует все нажатия клавиш, набранные пользователем, а также тонну другой мета-информации о транзакции SSH. Данные отправляются с использованием syslog/stunnel в центральный IDS. Некоторые инструменты аудита на основе оболочки можно обойти из командной строки. Поскольку код встроен в OpenSSH, злоумышленник не может обойти инструмент при использовании SSH.
См. Документ LISA 2011 и слайды. Цель этих исправлений - разрешить аудит пользовательских сессий в академических и открытых исследовательских средах, где аудит требуется как часть политики безопасности сайта, а политика конфиденциальности хорошо понятна пользователям.
Тем не менее, бинарные пакеты недоступны, и программное обеспечение предназначено для администраторов, которые могут применять исправления в исходный код OpenSSH и создавать свои собственные пакеты.
Примечание: я связан с этим проектом. Я работаю в LBNL, я лично знаю авторов и регулярно использую это программное обеспечение.