우리는 서버에서 누가 무엇을 했는지 추적할 수 있는 환경을 설정하고 있습니다. 우리는 일반적으로 "last" 명령과 bash_history 파일에 중점을 두지만 완벽하게 도움이 되지는 않습니다. 즉, 명령을 실행하는 동일한 사용자가 여전히 bash_history 파일에서 항목을 삭제할 수 있습니다. 그래서 추적하는 것이 점점 더 어려워지고 있습니다.
명령 기록을 완벽하게 보호할 수 있는 방법이 있나요?
답변1
의존하지 마십시오 .bash_history
. 계정(읽기 accton(8)
및 친구)을 활성화한 다음 사람들에게 관리자 권한을 부여하세요 sudo
. log 명령을 실행 sudo
하고 로그를 원격 컴퓨터로 보냅니다.
답변2
명령 기록을 완벽하게 보호할 수 있는 방법이 있나요?
예, 사용자가 자신의 명령 기록을 완전히 보호할 수 있는 방법이 있습니다. 그들은 이렇게 해야 해
unset HISTFILE
그리고 더 이상 디스크에 기록되지 않으므로 기록을 모니터링하는 사람으로부터 완전히 보호됩니다.
답변3
나는 사용자가 자신의 흔적을 감추기 위해 자신의 .bash_history를 편집 및/또는 삭제하는 상황에 직면했습니다.
제가 생각해낸 간단한 해결책은 chattr +a 를 사용하는 것입니다. 이 방법은 파일 추가만 허용하고 편집이나 삭제는 허용하지 않습니다. 또한 루트 사용자만 이를 설정하거나 설정 해제할 수 있습니다.
모든 현재 사용자에게 배포하려면 루트로 su하고 다음을 실행합니다.
chattr +a /home/*/.bash_history
모든 신규 사용자를 유치하기 위해 30분마다 이 명령을 실행하는 간단한 스크립트를 작성했습니다.
사용자를 삭제하려면 사용자 디렉터리를 삭제하기 전에 이 디렉터리를 변경해야 한다는 점을 기억하십시오. 이는 다음 명령을 실행하여 수행됩니다.
chattr -a /home/username/.bash_history
그것은 매우 효과적인 것으로 입증되었습니다. 이제 AIX에서 이에 상응하는 항목을 찾으면 됩니다.