Project

General

Profile

Actions

Task #536

closed

Odesílání událostí do Wardenu

Added by Pavel Kácha almost 12 years ago. Updated over 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Michal Kostěnec
Category:
-
Target version:
Start date:
08/28/2012
Due date:
% Done:

0%

Estimated time:
To be discussed:

Description

Vytvoření Mentatího odesílacího kanálu pro Wardení zprávy.

Mek: Co se tyka odesilani do wardenu, tak budes delat komponentu typu
DRUDGER, takze se muzes inspirovat WAREHOUSEMANEM. Nazval bych to treba
'wardenout'. Podobne jako v predchozim pripade zkopiruj spustitelny
skript, smaz nebo zmen konfigurace, ktere te nezajimaji atd. Vlastni
implementace je pak opet v Enginu. Warehouseman je pro druhou cast
tohoto navodu spatny priklad, protoze tam je ta implementace
zjednodusena, ale kdyz se podivas na enginy ostatnich demonu (SENSORU,
CONCENTRATORU,...) tak uvidis, ze IDMEF zprava se predava jakymsi
tajemnym COGUM. V kazdem demonovi existuje v podstate pipeline, ktera se
stara o zpracovani zprav, vsechny demony jsou v podstate roury, akorat
SOURCE jsou trochu specialni, protoze zespoda do nich nic neleze, oni
sami zpravy generuji. Ty COGY lze radit do retezu, takze se lehce da
znovupouzivat jiz existujici kod. Abych uvedl konkretni priklad, tak
SENSOR v metode _init sveho enginu definuje nasledujici COGY:

my $cog1 = Mentat::Processor::Cog::IDMEFParser->new($self);
my $cog2 = Mentat::Processor::Cog::Validator->new($self,
$config->{'schema_file'}, $config->{'error_folder'});
my $cog3 = Mentat::Processor::Cog::Forwarder->new($self);

$cog1->attach_cog($cog2);
$cog2->attach_cog($cog3);
$self->{COGS}->{'idmef'} = $cog1;

Kazda zprava pak prochazi celym retezcem, nejprve ji prvni COG
rozparsuje, druhej ji zvaliduje a treti preposle.

Od tebe se tedy bude chtit, abys udelal COG, nazveme ho treba prihodne
Warden, kterej bude stat na konci retezce a kterej vsechno preposle do
Wardenu.

ph: Myslím, že prozatím si můžeme (v testovacím provozu) dovolit ignorovat
doménu cesnet.cz. Alespoň bude motivace protlačit přes Mentat opravdu
všechno. :-,

Problém máme také s tím, že nemůžeme přijímat všechny zprávy, takže zatím
budeme muset použít stejný obšuk, jako vy s Bodíkem - zaregistrovat klienta
na všechny typy zpráv. To je v řešení ve Wardenu.

Actions

Also available in: Atom PDF