나는 루트로 서버에 로그인하고 작업을 실행했는데 w
, 이를 통해 사용자가 파일을 편집하는 것을 볼 수 있었습니다.
someuser pts/5 10.117.0.53 14:03 3:25 1.20s 1.14s vi somefile.py
그런 다음 연결을 끊었다가 나중에 루트로 다시 연결했습니다. 다시 해봤는데 w
이번엔 뭔가 다른 모습을 보여줬네요.
someuser pts/5 10.117.0.53 14:03 5:20 0.20s 0.02s sshd: someuser [priv]
다른 필드에서 이 사용자가 동일한 사용자라는 것을 알 수 있지만 이번에는 그들이 수행하는 작업이 숨겨져 있습니다.
왜 숨겨졌나요? 그들이 무엇을 하고 있는지 어떻게 알 수 있나요?
답변1
사용자가 를 사용하는 경우 bash
다음을 추가할 수 있습니다 /etc/bash.bashrc
.
readonly PROMPT_COMMAND='history -a >(logger -t "commandlog $USER[$PWD] $SSH_CONNECTION")'
그러면 모든 사용자 명령이 시스템 로그에 기록됩니다.
잠긴 중앙 syslog 서버로 로그가 전달되도록 구성하겠습니다 syslog
. 그러면 해커 공격이나 악의적인 sysadmin이 발생하더라도 증거를 조작할 수 없습니다.
답변2
시스템에서 auditd가 활성화된 경우 감사 로그를 보고 사용자의 명령 활동을 이해할 수 있습니다. 이는 시스템에서 다른 사용자의 작업으로 인해 발생할 수 있는 문제를 법의학적으로 해결하려고 할 때 시스템 관리자가 자주 사용하는 유용한 리소스입니다.
답변3
사용자 기록 파일 보기와 같은 간단한 작업을 시도해 볼 수 있습니다. 이는 사용자의 쉘이 bash
.
cat /home/someuser/.bash_history