루트 로그인을 위해 로그 파일을 비활성화하는 방법은 무엇입니까? [폐쇄]

루트 로그인을 위해 로그 파일을 비활성화하는 방법은 무엇입니까? [폐쇄]

나는 데비안의 모든 로그를 비활성화하고 싶지 않고 루트 로그인 시간과 로그인 기간을 기록하는 로그만 비활성화하고 싶습니다.

터미널에서 명령을 실행하면 last내 IP 주소 등이 표시되고 이를 비활성화하고 싶습니다.

내가 갈 때 /var/log,BTMP인식할 수 없는 문자와 같은 일부 사각형 기호만 있는 파일이 비어 있습니다.워터앰프그것은 동일합니다. 내용을 삭제했습니다 auth.log.

이 유형의 로깅을 비활성화하려면 어떻게 해야 합니까?

답변1

로그 필터링

을 사용할 수 있다고 생각합니다 rsyslog. 특히 에 필터를 추가해야 합니다 /etc/rsyslog.d/.

다음과 같은 메시지의 경우 /var/log/secure(예: Fedora 19):

Jun 28 13:28:18 greeneggs login: pam_unix(login:session): session opened for user saml by LOGIN(uid=0)
Jun 28 13:28:19 greeneggs login: LOGIN ON tty2 BY saml

다음과 같은 필터를 사용하여 무시할 수 있습니다.

$syslogfacility-text == 'local0'이고 $msg가 'login'으로 시작하고 ($msg에 'root'가 포함되어 있으면) /dev/null

노트:위의 내용은 테스트되지 않았지만 이 문제를 대략적으로 해결하는 방법을 보여주는 예일 뿐입니다.

wtmp 및 btmp 필터링

이러한 파일은 바이너리 파일이므로 단순히 표준 도구(예: sed및 )를 사용하여 편집 할 수 없습니다 awk. 정말로 편집하고 싶다면 cron정기적으로 편집해야 합니다. 로그인할 때 두 파일에 추가된 사용자를 필터링하는 방법을 찾을 수 없습니다.

에서 발췌Utmp 위키피디아 페이지

utmp, wtmp 및 btmp

  • 유템시스템의 현재 상태, 시스템 시작 시간(정상 작동 시간 사용)에 대한 완전한 기록을 유지하고, 사용자가 로그인하고 로그오프한 터미널, 시스템 이벤트 등을 기록합니다.
  • 워터앰프기록 utmp로 작동
  • BTMP실패한 로그인 시도 기록

파일 utmp은 텍스트 파일이 아니라 특별히 제작된 프로그램으로 편집해야 하는 바이너리 형식입니다. 파일에 있는 구현 및 필드는 시스템 또는 libc 버전에 따라 다르며 utmp.h헤더 파일에 정의됩니다.

wtmp사용자 이름이 비어 있으면 연결된 터미널에서 로그아웃한다는 점을 제외하면 형식은 btmp완전히 동일합니다 . utmp또한 사용자 이름 종료 또는 다시 시작에 대한 터미널 이름 ~은 시스템 종료 또는 다시 시작을 나타내며 터미널 이름 쌍 /는 날짜가 변경될 때 이전/새 시스템 시간을 기록합니다.

이러한 파일을 확장하려면 Perl 모듈을 사용할 수 있습니다.사용자::Utmp이 파일을 수정하려면 Python에도 비슷한 모듈이 있습니다.

인용하다

관련 정보