Я чувствую, что некоторые люди используют root, как я могу регистрировать все команды и время соединений, включая IP-адреса, сделанные на сервере (ssh) от всех пользователей?
команды истории недостаточно
Корень есть корень. Все, что вы делаете, чтобы отслеживать использование root, может быть взломано или обойдено кем-то, у кого есть root; даже если вы заставите bash направлять все записи файла истории в системный журнал на защищенном удаленном сервере, например, ваша система будет в безопасности только до тех пор, пока плохо себя ведет пользователь, не выясняя, что вы сделали, и отключит или исправит это.
Это социальная проблема, а не техническая. Вам необходимо реализовать политику, которая не позволит людям использовать root, и внедрить системные проверки, чтобы гарантировать, что предоставляется только приемлемый доступ в контролируемой и регистрируемой среде.
Надеюсь это поможет. Удачи.
ну, вы могли бы просто отправить себе электронное письмо о том, что "Элвис" вошел в здание
В .bashrc поместите это
echo 'ALERT - Root Shell Access (YOURSERVERNAME) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d"(" -f2 | cut -d")" -f1`" YOUREMAIL
Таким образом, каждый раз, когда пользователь root входит в систему, вы будете получать уведомление
Следующая версия OpenSSH позволяет отслеживать все нажатия клавиш, которые проходят через демон SSH. Моя организация (Национальная лаборатория Лоуренса Беркли) с большим успехом использует этот код внутри для поддержки среды научных исследований.
https://github.com/set-element/openssh-hpn-isshd
Версия OpenSSH, предназначенная для установок с высоким уровнем безопасности, где желательно контролировать активность пользователей. Для этого мы модифицируем демон SSH для экспорта информации об именах пользователей, аутентификации, нажатиях клавиш, передаче файлов, удаленном выполнении команд и различных метаданных, связанных с SSH, максимально агностически. В дополнение к этому проекту мы предоставляем инфраструктуру через систему обнаружения вторжений Bro. Самая общая идея заключается в том, что сайт может генерировать локальную политику безопасности на языке сценариев Bro и отслеживать активность пользователей практически в реальном времени.
Журналы аудита BSM помогут в отслеживании пользовательских команд и событий
http://seclab.cs.ucdavis.edu/projects/misuse/prototypes/bsm.html
Инструмент whowatch также полезен
http://www.cyberciti.biz/tips/linux-and-unix-interactive-process-and-users-monitoring-tool.html
Пока это не будет нарушено, учет процессов может дать полезную информацию.
Отключение пароля root предотвратит использование su
стать root.
Периодическое сканирование ps
для su
процессы должны показывать, когда используется su.
Проверить auth.log
или его эквивалент может быть полезен для определения того, кто становится root.