Přeskočit obsah

Připojení vlastní MaxMind databáze

Pro vlastní zóny už používáte geo lookups (viz Geolokační vyhledávání). Pokud máte soubor MaxMind DB (.mmdb) s vlastními sloupci, můžete obohacovat IP pole stejným způsobem: umístěte soubor tam, kde ho Parsec najde, a přidejte krátkou deklaraci enricheru.

Pokud si nejste jisti, kde se soubory na serveru ukládají, zeptejte se administrátora. Parsery znovu sestavovat v kódu nemusíte.

Co potřebujete

  1. Soubor .mmdb (GeoLite, GeoIP nebo vlastní MaxMind DB s vašimi atributy).
  2. Název skupiny pro složku (často geo, stejně jako veřejné geo obohacení).
  3. Atributy z DB, které chcete na události (např. název města nebo vlastní skóre).
  4. Odpovídající pole ve schématu události (obvykle ECS), aby je Discover a dashboardy mohly ukládat.

1. Umístění databázového souboru

Zkopírujte .mmdb do složky lookups pro vaši skupinu, například:

/lookups/geo/my-custom.mmdb

Použijte stejný název skupiny v enricheru níže. Složky specifické pro tenant jsou možné; layout potvrdí administrátor.

2. Přidání deklarace enricheru

V Knihovně pod cestou parseru pro zdroj logů (vedle ostatních enricherů) přidejte YAML soubor, například 55_enricher_maxmind.yaml:

define:
  type: enricher/ip
  group: geo

schema:
  /Schemas/ECS.yaml:
    mapping:
      city_name: "{entity}.geo.city_name"
      country.iso_code: "{entity}.geo.country_iso_code"

V praxi to znamená:

  • group: geo načte každý .mmdb (a další geo lookup soubory) ze složky geo.
  • mapping říká: vezmi tento atribut z databáze a zapiš ho do tohoto pole na události.
  • {entity} se nahradí za source, destination, client a podobně podle toho, které IP pole bylo vyhledáno.

Příklad: pro source.ip se city_name stane source.geo.city_name.

Volitelné: jednoduché pojmenování bez tabulky mapování

Pokud názvy atributů v databázi už odpovídají ECS příponě (např. city_name → source.geo.city_name), můžete použít postfix místo výčtu každého pole:

define:
  type: enricher/ip
  group: geo

schema:
  /Schemas/ECS.yaml:
    postfix: geo.

Použijte mapping, když se názvy liší nebo chcete plnou kontrolu. Použijte postfix, když názvy už sedí.

3. Pole schématu události

Ujistěte se, že cílová pole existují ve vašem schématu (Knihovna → Schemas), například:

  • source.geo.city_name
  • source.geo.country_iso_code
  • destination.geo.city_name
  • a libovolná vlastní pole, která mapujete

Pokud pole ve schématu chybí, obohacení pro daný atribut se přeskočí.

4. Kontrola výsledku

  1. Uložte enricher a počkejte na reload Parsec (nebo požádejte provoz o reload parseru).
  2. Pošlete nebo počkejte na událost s source.ip (nebo jiným IP polem) pokrytým vaší databází.
  3. V Discover otevřete událost a hledejte nová pole *.geo.* (nebo vaše mapovaná pole).

Tipy

  • Začněte s jedním nebo dvěma mapovanými atributy, pak přidávejte další.
  • Vlastní data držte ve stejné skupině geo jen pokud to chcete; jinak použijte jiný název skupiny a stejnou skupinu v enricheru.
  • Prázdné hodnoty z databáze se na událost nezapisují.
  • Pro rozsahy IP, které sami spravujete v UI (zóny, pobočky), používejte Geolokační vyhledávání. Soubory MaxMind jsou pro hotové nebo dodavatelské databáze.

Související