제한된 sudo 권한을 가진 이 사용자가 있는데, 그는 가끔 실수를 합니다. 나는 그의 모험을 면밀히 관찰하여 더 적은 발굴 작업으로 피해를 되돌릴 수 있도록 하고 싶습니다. 이상적으로는 다음과 같은 기능을 갖고 잘 통합되고 표시될 수 있는 서비스를 원합니다.
- 쉘 입력 및 출력을 추적하고
ttyrec
(또는script
로깅sudo
이 설정된 경우) ttyplay(또는scriptreplay
또는sudoreplay
)와 같은 세션을 재생할 수 있는 것은 ncurses 프로그램과의 호환성에 좋지만 필수는 아니며ttyrec
분명히 수행할 수 있습니다. - 파일 액세스, 생성 및 수정을 추적합니다. 이상적으로는 파일이 변경되거나 삭제될 때마다 파일을 백업합니다.
지금까지 필요한 기능을 대부분 얻기 위해 설정해야 하는 몇 가지 도구를 찾았지만 이를 잘 통합하는 OSS 제품을 본 적이 없습니다. (Lynis Community Edition은 기능에 대해 그다지 명확하지 않습니다.) .
- 쉘 IO를 기록하기 위해 그의 로그에
ttyrec $(mktemp)
,script $(mktemp)
또는sudo -u $USER -i
(sudo 로깅 설정) 을 넣을 수 있습니다 ..bashrc
/usr
, 같은 특정 디렉터리의 파일 액세스를 추적하도록 감사를 설정합니다/etc
./var
- LVM 스냅샷은 로그인할 때 생성되지만 이는 다소 과잉이며 시스템 성능을 저하시킬 수 있습니다.
편집하다: ttyrec
script
모든 IO 로깅 요구 사항을 충족하는 더 나은 대안인 것 같습니다 . 이제 파일 작업을 기록하는 좋은 방법을 찾아야 합니다.
어떤 제안이나 모범 사례 제안이 있으면 감사하겠습니다.
답변1
어쩌면 당신은 당신을 격려할 수 있습니다행정좋은 로깅 방법을 사용하십시오.Gnu 화면이것은 잘 이루어졌습니다. 원하는 것보다 더 많은 기능을 추가하고 로깅을 전환하는 기능도 있으므로 원할 경우 직접 끌 수 있습니다. 재생 기능은 부족하지만 로깅이 켜져 있을 때 대부분의 입력 및 출력을 추적하므로 솔루션의 일부가 될 수 있습니다.
deflog on
귀하의 사용 사례에서는 기본적으로 새 Windows 로그인을 만들기 위해 screenrc 파일에 추가해야 합니다 .
그러나 이는 사용자가 전환할 수 있다는 단점이 있다.
다음을 사용하여 파일 모니터링을 수행할 수 있습니다.감시 장치, 변경 사항에 대한 파일 체크섬을 모니터링하고 다양한 서비스의 상태도 확인할 수 있습니다. 이것을 cronjob의 rsync와 결합하면(어차피 그런 것이 있어야 하기 때문에) 특히 화면에서 열 경우 서버에서 정확히 무슨 일이 일어나고 있는지에 대한 매우 확실한 아이디어를 얻을 수 있습니다. 사용자가 로깅 설정을 조작하지 않도록 신뢰하십시오.
이러한 도구를 결합하면 기본 수준의 복구 가능성을 보장하면서 사용자를 면밀히 감시할 수 있는 상당히 강력하면서도 가벼운 시스템을 갖게 됩니다.