루트 로그인에 대한 Zabbix 경고

루트 로그인에 대한 Zabbix 경고

Zabbix를 사용하기 시작했는데 /etc/passwd와 같은 사항이 변경되면 경고가 발생하는 것을 볼 수 있습니다.

'루트 로그인에 대한 zabbix 경고'를 검색해도 어떤 포인터도 표시되지 않습니다. 루트 로그인에 대한 경고를 받으려면 어떻게 해야 합니까?

답변1

안전하지 않기 때문에 루트 로그인을 모두 허용해서는 안 됩니다. 일반 사용자 로그인만 허용해야 하며, 일단 로그인하면 사용자는 sudo루트로 명령을 실행할 수 있습니다.

그런데 왜 루트 로그인만 확인하겠습니까? 일반 사용자 로그인을 확인하는 것도 마찬가지로 중요합니다. 인터넷상의 봇은 항상 일반 사용자를 대상으로 무차별 대입 공격을 수행합니다.

/var/log/auth.log어느 쪽이든 성공적인 SSH 로그인을 확인해야 합니다 . 로그 파일을 확인하려면 활성 Zabbix 에이전트 확인이 필요합니다. 따라서 먼저 활성 검사가 제대로 작동하는지 확인해야 합니다(참조:이 블로그 게시물).

둘째, Zabbix 사용자는 (기본적으로) 사용자로 실행됩니다 zabbix. 따라서 /var/log/auth.log해당 파일은 루트와 그룹의 사용자만 읽을 수 있기 때문에 읽을 수 없습니다 adm. 따라서 zabbix사용자를 그룹에 추가할 수 있습니다 adm. 이를 통해 Zabbix는 많은 로그 파일(원천).

마지막으로 Zabbix 프런트엔드에서 모니터링 항목과 트리거를 생성해야 합니다.

항목을 생성합니다:

Name: SSH successful authentication
Type: Zabbix agent (active)
Key: log[/var/log/auth.log,"Accepted .*",,,skip,\0]

해당 항목에 대한 트리거를 만듭니다.

Name: Successful SSH authentication on {HOST.NAME}
Expression: {Template OS Linux - Extra:log[/var/log/auth.log,"Accepted .*",,,skip,\0].strlen()}>0 and {Template OS Linux - Extra:log[/var/log/auth.log,"Accepted .*",,,skip,\0].nodata(5m)}=0

Accepted .*항목의 정규 표현식을 확인하세요 . 이는 비밀번호 인증이든 공개 키 인증이든 모든 유형의 SSH 인증과 일치해야 합니다. 물론 귀하의 경우 루트의 로그인과만 일치하도록 정규식을 변경할 수 있습니다. 그러나 앞서 설명했듯이 이는 보안 관점에서 볼 때 의미가 없습니다.

또한 내가 사용한 것에 주목하세요 log[...]. 왜냐하면 정규식과 일치하는 책임 로그 라인이 Zabbix가 보내는 알림 이메일에 포함되기 때문입니다. 이렇게 하면 어떤 사용자가 인증되었는지 이메일에서 확인할 수 있습니다.

답변2

데비안 기반 시스템의 경우 /var/log/auth.log다음과 같이 파일을 구문 분석해야 합니다.

log.count[file,<regexp>,<encoding>,<maxproclines>,<mode>,<maxdelay>,<options>]

https://www.zabbix.com/documentation/current/manual/config/items/itemtypes/zabbix_agent

그래서 본질적으로:

log.count[/var/log/auth.log,*root*Accepted,,,skip]

관련 정보