Home » Mikrotik » Mikrotik логирование на удаленный сервер rsyslog

Mikrotik логирование на удаленный сервер rsyslog

Возникло желание собирать логи с роутера Mikrotik. Была нужна информация о подключенных по pptp абонентах и логи firewall для настройки. По-умолчанию, Mikrotik пишет все логи в лог журнал, который можно просмотреть через winbox. Стандартно, там хранятся последние 100 строк лога.

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Все подробности читайте ниже.

Mikrotik logging

Настраиваем удаленный сервер rsyslog

У меня в хозяйстве имелся сервер Debian. Решил хранить логи с микротиков именно на нем. В составе Debian уже имеется сервис сбора логов с удаленных источников rsyslog. Необходимо только включить в нем необходимый функционал. Правим файл /etc/rsyslog.conf:

Раскомментируем строки

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514

чтобы получать логи по UDP, либо

# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

чтобы получать логи по TCP

И в секцию RULES добавим несколько строк для удобного хранения файлов логов от разных удаленных источников:

# Зададим шаблон создания имен файлов (на основании IP адреса клиента)
$template FILENAME,"/var/log/!remote/%fromhost-ip%/syslog.log"
# Укажем сохранять сообщения от любого источника (*) с любым приоритетом (*) в файл, заданный шаблоном
# Например, клиенты (10.0.0.2,10.0.0.3...) будут раскладываться в соответствующие каталоги /var/log/10.0.0.2/syslog.log
 *.* ?FILENAME

Перезапускаем rsyslog для применения настроек:

/etc/init.d/rsyslog restart

Теперь наш сервер готов принимать логи с удаленных источников. Хранить он их будет в папке /var/log/!remote Для каждого источника будет создана папка с именем IP адреса этого источника.

Настраиваем пересылку логов в Mikrotik

Теперь настраиваем в роутере хранение логов на удаленном сервере. Для этого заходим в раздел System -> Logging, выбираем закладку Actions, два раза щелкаем по строчке remote. Открывается окно настроек. В нем вводим адрес удаленного сервера сбора логов. Порт на свое усмотрение либо оставляем по-умолчанию, либо меняем на свой. Больше ничего добавлять не надо.

настройка логов в mikrotik

Дальше в разделе Rules создаем необходимое правило хранения:

Правила для логов в mikrotik

Все готово. Теперь все наши логи будут храниться на удаленном сервере. Необходимо не забыть настроить ротацию логов, дабы в один прекрасный день они не заняли все свободное место.

запись логов с mikrotik в rsyslog

Если вы используете ELK Stack для централизованного сбора логов, то у меня есть статья по отправке логов mikrotik в elk stack.

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте Курсы по ИТ. Стоимость обучения весьма демократична, хорошая возможность получить новые знания в актуальной на сегодняшний день предметной области.

Помогла статья? Есть возможность отблагодарить автора

Рекомендую полезные материалы по схожей тематике:

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству.

8 комментариев

  1. Аватар

    Добрый день!
    Подскажите поднял на CentOS Syslog в настройках указал только две строки:
    $template FILENAME,»/var/log/!remote/%fromhost-ip%/syslog.log»
    *.* ?FILENAME
    В Mikrotik указал какие логи слать на удаленный сервер и тишина ничего не падает…514 порт на CentOs открыт не подскажите куда копать?

  2. Аватар

    Можно ли копить статистику на самом роутере и выкачивать её на внешний ресур только по необходимости, раз в неделю например? Или просматривать логи прямо на роутере?

  3. Аватар
    Владимир

    Добрый день.
    Настроил сбор логов в сети 192.168.65.0/24 все прекрасно работает. Так же имеется микротик в сети другого офиса 192.168.70.0/24, впн туннел настроен, пинги идут. Но логи не отправляются на сервер rsyslog 192.168.65.93. Не подскажете в чем может быть причина?

    • Zerox

      В чем угодно :) Так разве скажешь. Настройки firewall в первую очередь проверяйте. Дальше в rsyslog смотрите, нет ли там ограничение на прием по ip адресам.

      • Аватар
        Владимир

        В фаерволе разрешающие входящие правила для порта и ip были добавлены, получилось только после того, как добавил правильно в NAT (chain dstnat, dst.port 514, action=netmap 192.168.65.93 to ports 514). Я думал, что и без него микротик должен отправлять пакеты.

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.