저는 sudo 권한이 있는 모든 사용자를 신뢰하지 않고 이에 대해 제가 할 수 있는 일이 전혀 없는 다소 이상한 상황에 처해 있습니다. 나 외에 다른 사람이 패키지를 설치했는지 정기적으로 확인하고 싶거나, 더 나쁜 경우 Debian/Ubuntu 서버에서 나에게 문의하지 않고 업데이트를 실행하고 싶습니다. CentOS를 실행하는 다른 서버에서 yum history
누가 장난을 쳤는지 알아낼 수 있는 방법이 있습니까? 잠이 더 잘 오겠지...
도움을 주셔서 미리 감사드립니다.
답변1
나는 다른 사용자들이 당신에게서 아무것도 숨기려고 하는 것이 아니라 단지 약간 무능하거나 짜증을 내는 것일 뿐이라고 가정합니다. 숨고 싶으면 할 수 있지만 할 수 있는 게 아무것도 없습니다.
/var/log/apt
적절한 사용 로그 와 dpkg 사용 로그 가 있습니다 /var/log/dpkg.log
. 어떤 패키지 작업이 언제 수행되었는지 알려주지만, 누가 수행했는지는 알려주지 않지만 의 출력을 비교하면 힌트를 얻을 수 있습니다 last
.
/etc
버전 제어를 통해 패키지 작업 및 구성 변경 사항을 효과적으로 추적할 수 있습니다.관리자를 기다려주세요(Debian 및 Ubuntu에서 패키지로 사용 가능) 잘하셨습니다. 설치하고 편집 /etc/etckeeper/etckeeper.conf
하여 원하는 대로 구성하세요.
VCS
선호하는 버전 제어 시스템으로 설정하세요 .AVOID_DAILY_AUTOCOMMITS
주석 처리되어 있는지 확인하세요 . 누군가가 이를 변경하면/etc
자동 커밋에 기록됩니다. 의미 있는 로그 메시지는 없지만 최소한 변경 사항과 대략적인 날짜는 추적됩니다.AVOID_COMMIT_BEFORE_INSTALL
주석 처리되어 있는지 확인하세요 . 마찬가지로 APT 도구(apt
, 등)apt-get
를 사용하기aptitude
전에 자동 커밋이 있습니다 . 패키지 관리 작업 후에는 항상 자동 커밋이 수행되어 변경 사항이 나열됩니다.
제출자의 ID를 기록하려면 올바른 환경 변수 또는 구성 파일을 설정해야 합니다. ( 등 su
을 통해) 루트를 얻은 방법에 따라 sudo
이는 루트의 .profile
or .bashrc
( 를 사용하는 경우 )을 수정하거나 기록된 커미터가 단순한 커미터 이상이 되도록 준비하기 위해 sudo -s
커밋 후크를 추가하는 것을 의미할 수도 있습니다 .$SUDO_USER
root