Записывать 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, я лично знаю авторов и регулярно использую это программное обеспечение.

Другие вопросы по тегам