Привет всем, мне нужно интегрировать мой роутер Mikrotik с Ossec на http://www.ossec.net. Кто-нибудь уже это делал? Я хочу собрать все логи, которые генерирует мой роутер. Какой лучший способ это сделать? У меня домашняя настройка, поэтому я думал о том, чтобы сохранять все на внешний диск. У меня роутер Rd 751G-2HnD. Версия RouterOS 6.4. Кроме того, есть ли место, где описан формат логов Mikrotik? Я видел что-то в вики, где формат был: дата, категории, а затем событие. Это стандартный формат? Следует ли роутер спецификации bsd syslog rfc 3164? Pranav
Привет. Да, я помню, что записывал в syslog, когда у меня была эта настройка. Мой текущий набор действий выглядит так. Флаги: X - отключено, I - недействительно, * - по умолчанию ТЕМЫ ДЕЙСТВИЕ ПРЕФИКС 0 * info memory 1 * error memory 2 * warning memory 3 * critical echo 4 critical disk 5 firewall disk 6 firewall memory 7 e-mail memory 8 !async remote
Что я в итоге сделал — добавил префикс «mikrotik» к сообщениям, которые отправляю на «remote», и создал пользовательский декодер, который ищет «mikrotik:» в сообщении. Оттуда я создал другие дочерние декодеры для интерпретации попыток входа (успешных и неудачных) и соответствующих правил. Декодер: <decoder name="mikrotik"><prematch>mikrotik:</prematch></decoder>
<decoder name="mikrotik-successful-login"> <parent>mikrotik</parent> <prematch>^system,info,account mikrotik: user </prematch> <regex offset="after_prematch">^(\S+) logged in from (\S+) via (\S+)</regex> <order>user,srcip,extra_data</order> </decoder>
<decoder name="mikrotik-failed-login"> <parent>mikrotik</parent> <prematch>^system,error,critical mikrotik: login failure for user </prematch> <regex offset="after_prematch">^(\S+) from (\S+) via (\S+)</regex> <order>user,srcip,extra_data</order> </decoder> Правила: <group name="local,syslog,">
<rule id="102000" level="2"> <decoded_as>mikrotik</decoded_as> <description>Неизвестное сообщение mikrotik</description> <options>alert_by_email</options> </rule>
<rule id="102002" level="0"> <description>игнорировать сообщения о разрешении dns</description> <if_sid>1002</if_sid> <decoded_as>mikrotik</decoded_as> <match>QUERY 'no error'</match> </rule>
<rule id="102003" level="7"> <description>сообщить о успешном входе в систему mikrotik</description> <decoded_as>mikrotik</decoded_as> <match>logged in from</match> <group>authentication_success,</group> </rule>
<rule id="102004" level="7"> <description>сообщить о сбое аутентификации mikrotik.</description> <decoded_as>mikrotik</decoded_as> <match>login failure for user</match> <group>authentication_failed,</group> </rule> ... </group> Теперь мне нужно разобраться с активным откликом ossec — я собираюсь посмотреть, смогу ли создать скрипт/программу для добавления IP-адресов в список адресов брандмауэра, чтобы смоделировать что-то вроде fail2ban.
Привет, спасибо за эту идею. У меня больше не установлен ossec, но возможно, я снова его поставлю. Как ты добавил префикс к сообщениям syslog от Mikrotik?
Это просто: для тем, которые вы отправляете в свою удалённую систему, существует настройка префикса: /system logging add action=remote prefix=mikrotik topics=!debug