광산에는 시설 /etc/rsyslog.conf
에 로그인하기 위한 다음 줄이 있습니다 .auth
/var/log/auth.log
auth,authpriv.* /var/log/auth.log
그러나 파일은 다음과 같은 크론 로그로 채워져 있습니다.
CRON[18620]: pam_unix(cron:session): session opened for user root by (uid=0)
CRON[18620]: pam_unix(cron:session): session closed for user root
cron 로그를 제거하고 실제 "인증" 이벤트만 이 파일에 기록하고 싶습니다. 내 말은, 어떤 사용자가 시스템에 로그인했거나 su -
.
어떻게 해야 하나요?
답변1
공격자가 기록된 메시지 중 일부를 제어할 수 있는 경우 메시지 내용을 필터링하여 사건을 가릴 수 있습니다.
또는 다음 명령을 사용하여 CRON 프로세스에서 메시지를 필터링할 수 있습니다.
#Continue logging CRON to syslog
*.*;auth,authpriv.none -/var/log/syslog
#Filter events from the process CRON out of auth.log
:programname, isequal, "CRON" ~
auth,authpriv.* /var/log/auth.log
CRON 이벤트가 기록되는 것을 원하지 않으면 필터 줄을 rsyslog.conf
.
답변2
나는 이것이 당신이 찾고 있는 것이라고 믿습니다:
:msg, contains, "pam_unix(cron:session)" ~
auth,authpriv.* /var/log/auth.log
첫 번째 줄은 cron 인증 이벤트를 일치시키고 삭제합니다. 그런 다음 규칙에 따라 이전에 삭제된 행을 제외한 두 번째 행이 기록됩니다.
답변3
나에게 이것은 잘못된 행동의 원인입니다.https://languor.us/cron-pam-unix-cron-session-session-opened-close-user-root-uid0
여기에 명시된 바와 같이:https://askubuntu.com/a/280255/366528 이 줄을 추가하세요
session [success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid
해당 더미 cron 항목을 제거했습니다.