Odpowiedzi:
Możesz także włączyć rozliczanie procesów (s / can / should /!)
Następnie możesz użyć:
lastcomm(1)
aby zobaczyć polecenie uruchomione i jeśli zostały uruchomione po rozwidleniu, z lub bez exec.
W połączeniu z systemem IDS opartym na gospodarzu powinno to dać ci to, czego potrzebujesz, „aby sprawiedliwość króla mogła zostać wykonana na nim”.
Jak teraz rejestrujesz ich działania? Najłatwiej jest zablokować je przed wystrzeliwaniem pocisków z vi.
# vi /home/user/.exrc
set exrc
set shell=/bin/false
# chown root:root /home/user/.exrc
# chmod 644 /home/user/.exrc
# chattr +i /home/user/.exrc
Jeśli używasz specjalnej powłoki do rejestrowania ich poleceń, możesz zmienić vi, aby używała tylko tej powłoki.
Czy mówisz o historii muszli? vi tryb powłoki ( :sh
) uruchamia domyślną powłokę użytkownika Jeśli to jest bash, możesz upewnić się, że rejestrowanie historii jest zawsze włączone, edytując globalny plik / etc / bashrc i dodając:
set HISTFILE=~/.bash_history
shopt -s histappend
PROMPT_COMMAND='history -a'
zapewni to, że każde polecenie użytkownika zostanie zalogowane do pliku, nie zostanie nadpisane i będzie aktualizowane za każdym razem, gdy pojawi się monit powłoki.
Pamiętaj, że użytkownicy mogą to zmienić osobiście, ~/.bashrc
więc nie jest to absolutna gwarancja, że nastąpi rejestrowanie.
Niektóre wersje vi (jak nvi) obsługują tryb awaryjny, który wyłącza dostęp do powłoki poprzez uruchomienie vi jako nvi -S
. Możesz ustawić globalny alias, /etc/bashrc
aby domyślnie wymuszać ten tryb.
Zauważ, że ogólnie problem z dostępem do powłoki za pomocą nieoczekiwanych środków jest klasycznym problemem uniksowym. Nie ma sposobu, aby całkowicie to wyłączyć, najlepiej możesz spróbować domyślnie ograniczyć dostęp. Zaawansowany użytkownik (lub nawet użytkownik, który umie korzystać z Google) zawsze może obejść te ograniczenia. Na przykład, jeśli użytkownik nie chce, aby historia jego powłoki była rejestrowana, zawsze mógł po prostu wykonać nową kopię powłoki z dowolnymi opcjami, których chciał użyć.
Oto świetny opis tego, jak wymusić logowanie w bash i sposoby na obejście tego logowania.
Wreszcie, czy zastanawiałeś się nad rozmową z użytkownikiem w celu ustalenia, co robi? 99% czasu prosta komunikacja werbalna może usunąć wszelkie nieporozumienia. Jeśli rejestrujesz aktywność tego użytkownika, ponieważ mu nie ufasz, być może możesz porozmawiać z nim o swoich obawach.