
Opisałem tutaj jedną z metod rejestracji połączeń przechodzących przez router z oprogramowaniem RouterOS MikroTik
System tworzą skrypty generujące pliki tekstowe z informacją z jakiego adresu nawiązywane jest połączenie, na jaki adres docelowy, z datą i dokładnym czasem połączenia a następnie zapisuje je na dysku.
Ten sposób rejestracji wymaga aby maszyna na której jest uruchomione logowanie ruchu posiadała dysk HDD. Oczywiście można zapisywać logi na flashu lub pamięci wewnętrznej, jednak przy dużym ruchu szybko braknie nam miejsca, a poza tym taka pamięć ma stosunkowo małą maksymalną liczbę cykli zapisu.
Pliki zapisywane są w/g harmonogramu z interwałem czasowym ustawianym w schedulerze.
Zaczynamy od /firewall filter.
Podajemy adresy które chcemy śledzić, można podać klasę lub zakres od – do. Możemy też sprecyzować port, np. połączenia na port 80
ZDJĘCIA MOŻNA POWIĘKSZAĆ
W zakładce Advanced zaznaczamy flagę „syn”
Ustalamy akcję dla reguły oraz prefix logów połączeń
W menu /system logging rules dodajemy regułę Topics:firewall Prefix:WWW Action:disk
W zakładce Actions ustawiamy jak na zdjęciu poniżej
Teraz czas na skrypty. W menu /system scripts tworzymy trzy skrypty o nazwach: logi, set1, set65535
Skrypty zamieściłem na dole tej strony.
Pozostaje nam ustalić interwał czasowy zapisu logów na dysk.
Działa to tak: Na dysku jest tworzony plik logi.0.txt do którego w czasie rzeczywistym wrzucane są zapisy połączeń realizowanych przez nasze komputery, następnie co jakiś okres czasu określony przez interwał uruchamiania skryptu w schedulerze, dane z pliku logi.0.txt archiwizowane są w do pliku .txt który w nazwie ma datę, godzinę, minutę i sekundę utworzenia.
Skrypt schedulera umieściłem na dole tej strony.
// Utwórz w /System Script trzy skrypty z nazwami logi, set1, set65535 Nazwa:logi /log print file=([:pick [/system clock get date] 0 3 ] . "_" . [:pick [/system clock get date ] 4 6 ] . "_" . [:pick [/system clock get date ] 7 12 ] . "_godzina_" . [:pick [/system clock get time] 0 8 ]) Nazwa:set1 /system logging action set disk disk-lines=1 Nazwa:set65535 /system logging action set disk disk-lines=65535 // Umiesc w /System Sheduler jako jeden skrypt pod nazwą logi i ustaw interwał czasowy, np. 00:10:00 (10 minut) { /system script run logi :delay 2 /system script run set1 :delay 2 /system script run set65535 }