sudo cscli collections install crowdsecurity/apiscpInstalls 9 parsers and 56 scenarios, via Dovecot - Bruteforce Protection.
View ApisCP →sudo cscli parsers install crowdsecurity/dovecot-logsThen reload CrowdSec: sudo systemctl reload crowdsec
Sign in to see which of your engines run it →Hover a line or a note to see what each field does.
#contribution by @ltsichonsuccess: next_stagedebug: falsefilter: "evt.Parsed.program == 'dovecot'"name: crowdsecurity/dovecot-logsdescription: "Parse dovecot logs"pattern_syntax:AUTH_FUNC: '[A-Za-z0-9_]+(\(\))?'nodes:- grok:pattern: "%{WORD:protocol}-login: %{DATA:dovecot_login_message}: user=<%{DATA:dovecot_user}>.*, rip=%{IP:dovecot_remote_ip}, lip=%{IP:dovecot_local_ip}"apply_on: message- grok:pattern: "auth-worker\\(%{INT}\\): %{WORD:dovecot_user_backend}\\(%{DATA:dovecot_user},%{IP:dovecot_remote_ip},?%{DATA}\\): (%{AUTH_FUNC:auth_func} failed: )?%{DATA:dovecot_login_message}$"apply_on: message- grok:pattern: "auth-worker\\(%{INT}\\): (Info: )?conn unix:auth-worker \\(pid=%{INT},uid=%{INT}\\): auth-worker<%{INT}>: %{WORD:dovecot_user_backend}\\(%{DATA:dovecot_user},%{IP:dovecot_remote_ip},?%{DATA}\\): (%{AUTH_FUNC:auth_func} failed: )?%{DATA:dovecot_login_message}$"apply_on: message- grok:pattern: "auth: passwd-file\\(%{DATA:dovecot_user},%{IP:dovecot_remote_ip}\\): (%{AUTH_FUNC:auth_func} failed: )?%{DATA:dovecot_login_message}$"apply_on: messagestatics:- meta: log_typevalue: dovecot_logs- meta: source_ipexpression: "evt.Parsed.dovecot_remote_ip"- meta: dovecot_login_resultexpression: "any(['Authentication failure', 'Password mismatch', 'password mismatch', 'auth failed', 'unknown user'], {evt.Parsed.dovecot_login_message contains #}) ? 'auth_failed' : ''"
Sign in to see the Security Engines that run this log parser, the version they run and whether it was modified locally.