cscli parsers install darkclip/charon-ipsec-logs
Parser for Charon IPsec authentication fail.
1name: darkclip/charon-ipsec-logs2#debug: true3filter: "evt.Parsed.program == 'charon'"4description: Parse Charon IPsec logs5onsuccess: next_stage6pattern_syntax:7 IPSEC_ID: '<%{DATA}\|%{NUMBER}>'8nodes:9 - grok:10 pattern: '^%{NUMBER:thread}\[%{WORD:subsys}\] %{IPSEC_ID:ipsec_id}.*verification.*failed.*'11 apply_on: message12 stash:13 - name: charon_ipsec_logs14 key: evt.Parsed.thread15 value: evt.Parsed.ipsec_id16 ttl: 5s17 size: 1018 - grok:19 pattern: '^%{NUMBER:thread}\[%{WORD:subsys}\] %{IPSEC_ID:ipsec_id}.*authentication.*failed.*'20 apply_on: message21 stash:22 - name: charon_ipsec_logs23 key: evt.Parsed.thread24 value: evt.Parsed.ipsec_id25 ttl: 5s26 size: 1027 - grok:28 pattern: '^%{NUMBER:thread}\[%{WORD:subsys}\] %{IPSEC_ID:ipsec_id} sending packet\: from %{IP:target_ip}\[%{NUMBER:target_port}\] to %{IP:source_ip}\[%{NUMBER:source_port}\].*'29 apply_on: message30 nodes:31 - filter: "GetFromStash('charon_ipsec_logs', evt.Parsed.thread) != '' && GetFromStash('charon_ipsec_logs', evt.Parsed.thread) == evt.Parsed.ipsec_id"32 statics:33 - meta: log_type34 value: charon_ipsec_auth_fail35 - meta: source_ip36 expression: evt.Parsed.source_ip3738statics:39 - meta: service40 value: charon_ipsec41