데이터베이스를 업데이트할 때마다:
tripwire --check --interactive
/root
그러나 나는 여전히 Tripwire로부터 상황이 바뀌었다는 알림을 받았습니다 .
-------------------------------------------------------------------------------
Rule Name: Root config files (/root)
Severity Level: 100
-------------------------------------------------------------------------------
----------------------------------------
Modified Objects: 1
----------------------------------------
Modified object name: /root
Property: Expected Observed
------------- ----------- -----------
Object Type Directory Directory
Device Number 2049 2049
File Device Number 0 0
Inode Number 1572865 1572865
Mode drwx------ drwx------
Num Links 8 8
UID root (0) root (0)
GID root (0) root (0)
Size 4096 4096
* Modify Time Fri Jan 11 18:45:54 2019 Sat Jan 12 03:46:50 2019
* Change Time Fri Jan 11 18:45:54 2019 Sat Jan 12 03:46:50 2019
Blocks 8 8
새로 설치한 후의 정책은 다음과 같습니다 .bash_history
. 해당 파일의 "잘못된 변경 사항"에서 내 변경 사항을 식별하는 방법을 모르기 때문에 방금 제거했습니다.
# These files change the behavior of the root account
(
rulename = "Root config files",
severity = 100
)
{
/root -> $(SEC_CRIT) ; # Catch all additions to /root
/root/test_results -> $(SEC_CONFIG) -s;
/root/.joe_state -> $(SEC_CONFIG) -s;
# /root/mail -> $(SEC_CONFIG) ;
# /root/Mail -> $(SEC_CONFIG) ;
# /root/.xsession-errors -> $(SEC_CONFIG) ;
# /root/.xauth -> $(SEC_CONFIG) ;
# /root/.tcshrc -> $(SEC_CONFIG) ;
# /root/.sawfish -> $(SEC_CONFIG) ;
# /root/.pinerc -> $(SEC_CONFIG) ;
# /root/.mc -> $(SEC_CONFIG) ;
# /root/.gnome_private -> $(SEC_CONFIG) ;
# /root/.gnome-desktop -> $(SEC_CONFIG) ;
# /root/.gnome -> $(SEC_CONFIG) ;
# /root/.esd_auth -> $(SEC_CONFIG) ;
# /root/.elm -> $(SEC_CONFIG) ;
# /root/.cshrc -> $(SEC_CONFIG) ;
/root/.bashrc -> $(SEC_CONFIG) ;
# /root/.bash_profile -> $(SEC_CONFIG) ;
# /root/.bash_logout -> $(SEC_CONFIG) ;
# /root/.bash_history -> $(SEC_CONFIG) -s;
!/root/.bash_history ;
# /root/.amandahosts -> $(SEC_CONFIG) ;
# /root/.addressbook.lu -> $(SEC_CONFIG) ;
# /root/.addressbook -> $(SEC_CONFIG) ;
# /root/.Xresources -> $(SEC_CONFIG) ;
# /root/.Xauthority -> $(SEC_CONFIG) -i ; # Changes Inode number on login
# /root/.ICEauthority -> $(SEC_CONFIG) ;
}
"수정 시간 변경"이 발생하는 원인이 무엇인지는 모르겠지만 귀찮습니다. 시간 변경을 무시하면서도 루트 폴더의 삭제, 추가 및 수정된 파일에 계속 집중할 수 있는 방법이 있습니까?
아마도/root -> $(SEC_CRIT) -m;
-m
하지만 파일 변경 사항도 무시되는지 는 알 수 없습니다 .
답변1
첫 번째: 이것은 타임스탬프를 무시하는 방법에 대한 직접적인 대답은 아니며 /root
, 정보 제공에 더 가깝습니다 howto configure tripwire to ignore some special changes inside the root folder
(아직 원래 질문에 대답하지 않았기 때문입니다).
폴더 내에서 무엇이 변경되었는지 알지 못한 채 폴더의 타임스탬프 변경 사항만 보는 것은 여전히 실망스럽습니다. (댓글 참조)의 도움으로 inotify
루트 내부의 일부 변경 사항을 확인할 수 있었습니다.
이제 루트 변경으로 이어질 수 있는 몇 가지 예는 다음과 같습니다.
- joe와 같은 편집기의 임시 파일(joe는 마지막 변경 사항을 저장하기 위해 끝에 ~가 있는 파일을 만듭니다)
- cronjobs, 루트 디렉토리에 무언가를 저장/업데이트하는 스크립트
/root/.cache/
MC(Midnight Commander) 같은 프로그램을 사용하세요./root/.cache/mc
/root/.config
htop 또는 mc와 같은 프로그램을 사용하십시오./root/.local/
/root/.local/share/mc
mc() 같은 프로그램을 사용하세요- 에서 변경됨
/root/.bash_history
- 에디터 조가 사용하는
/root/.joe_state
물론, 루트 내에 변화를 일으킬 수 있는 것들이 셀 수 없이 많으며, inotify는 이러한 변화를 식별하는 데 큰 도움이 됩니다.
내 특별한 경우에는 이 구성에 대한 변경 사항에 대해 불평하는 Tripwire를 중지했습니다.
/root -> $(SEC_CONFIG) ; # Catch all additions to /root
!/root/.bash_history ;
!/root/.joe_state ;
/root/.cache -> $(SEC_CONFIG) ;
/root/.config -> $(SEC_CONFIG) ;
/root/.local -> $(SEC_CONFIG) ;
/root
이어야 $(SEC_CRIT)
하지만 내 경우에는 그것이 나쁘든 아니든 대부분의 작업이 루트로 수행되므로 트립와이어를 좀 더 조용하게 만들기 위해 이제 대신 use 를 사용합니다 $(SEC_CONFIG)
.
물론, 우리는 이러한 질문 중 많은 부분이 다음을 통해 답변될 수 있다는 점을 언급해야 합니다.루트로 작동하지 않음대신 sudo를 사용하세요. 그러나 할 수 없거나 원하지 않는 경우 루트 내부에서 발생하는 모든 변경 사항에 관심을 기울여야 하며 이는 매우 시지페적인 도전이 될 수 있습니다.