понедельник, 10 октября 2016 г.

Не работают (не считают трафик) правила Simple Queues в Mikrotik.

  Как было раньше, например в версии RouterOS 5.22. Ограничение в правилах не стоят, а подсчет трафика происходит:


  Вы задаете простое правило в  Simple Queues с нужным IP без ограничения скорости и легким движение руки мониторите своих клиентов.
  Но все изменилось, возможно с внедрением Fast Path, возможно с оптимизацией системы, но в версиях 6.х поведение изменилось. Трафик подсчет трафика происходит только тогда, когда стоит ограничение:

Ограничение не стоит - трафик не считаем.

Ограничение стоит - идет подсчет трафика.

  Поэтому, если вы используете Simple Queues как средство мониторинга - добавляйте ограничение. Естественно, оно может быть максимальное и по факту ничего не ограничивать.

воскресенье, 9 октября 2016 г.

Добавляем IP в статический лист через правила в Firewall.

  Возьмем классическое правило добавления IP в address-list в Firewall Mikrotik:
/ip firewall filter
add action=add-dst-to-address-list address-list=1 address-list-timeout=0s chain=forward
  Обратимся к Wiki:
address-list-timeout (time; Default: 00:00:00) - указываем временной интервал, на который мы добавляем IP в адрес-лист. Значение 00:00:00 оставит адрес в списке навсегда.

   Но если взглянуть на скриншот, можно увидеть, несмотря на интервал 00:00:00, правила создаются динамические. А это значит, что после перезагрузки эти листы удалятся. Очень странное поведение RouterOS, но имеем то, что имеем!
  Иногда нам нужно правилом забанить вредоносные IP. Например те, которые подключаются с WAN-интерфейса, и мы определяем их подключения - как небезопасные. При-чем хочется забанить их навсегда - но получается только до перезагрузки. Для этого нам нужно преобразовать динамические записи -  в статические. В этом случае можно использовать скрипт. Скрипт, преобразовывающий динамические записи в адрес-листе в статические я описывал ранее, сейчас я приведу его другую вариацию:
:foreach i in=[/ip firewall address-list find list=1] do={
    :local ipaddress [/ip firewall address-list get $i address]
    :local dynamic [/ip firewall address-list get $i dynamic]
    if ($dynamic = true) do={
        /ip firewall address-list remove $i
        /ip firewall address-list add list=12 address=$ipaddress
    }
}
  Где "1" - имя динамического адрес-листа, а "12" - имя преобразованного статического. Скрипт можно кинуть в планировщик на выполнение раз в минуту. Таким образом ни один IP не пропадает после перезагрузки. Теперь можно создавать правило для дропа статического адрес-листа.


суббота, 8 октября 2016 г.

Loop Protect - защищаем Mikrotik от петель на порту.

  Начиная с версии RouterOS 6.37.1 ввели в интерфейс WinBox настройку Loop Protect защиты:
*) winbox - added loop-protect settings;
  Loop-защита позволяет предотвращать Layer2 петли на интерфейсе путем отправки пакетов в интерфейс и мониторинга пакетов, которые попадают на этот интерфейс. Если все что Mikrotik отправляет в интерфейс возвращается назад - мы считаем, что на интерфейсе петля. Фактически мы проверяем MAC-источника пакетов с MAC-получателя пакетов, если совпадение найдено - порт отключается. В логах пишется сообщение. Такая защита может быть использована на bridged-интерфейсах и ethernet-интерфейсах. Функция доступна из меню:
/interface ethernet
/interface vlan
/interface eoip
/interface eoipv6
  Меню имеет такой вид:


среда, 5 октября 2016 г.

Защищаем сервер FTP за Mikrotik анализируя пакеты опцией "content".

  Недавно в статье "Защита WAN-интерфейса в Mikrotik" я рассказывал как защитить наше устройство и минимизировать атаки из-вне. Но почти во всех конфигурациях мы используем пробросы портов для предоставления сервисов нашим клиентам или для личного пользования. Пробросив порт, защиту мы возлагаем на наш внутренний сервис. Но Mikrotik довольно универсально устройство, которое позволяем защитить даже наши внутренние сервисы, к которым мы можем подключиться из-вне. В текущей статье, на примере FTP-сервера, я покажу вариант такой реализации.
  Имеем FTP-сервер Serv-U File Server, на который проброшен порт 21 с WAN-интерфейсов (их 2) Mikrotik. Сразу скажу, я никогда не использую дефолтный порт, так как это небезопасно, но для примера подойдет.
  Правило проброса порта:
/ip firewall nat
add action=dst-nat chain=dstnat comment=ftp dst-address-list=wan dst-port=21 protocol=tcp to-addresses=10.2.0.7
  Где "wan" - адрес лист наших wan-интерфейсов (их два, с обоих сервер доступен), 10.2.0.7 - адрес нашего ftp-сервера.
  После этого мы попробуем защитить ftp от перебора паролей. Для этого воспользуемся опцией "content" в правилах /ip firewall. Эта опция позволяет проанализировать пакеты которые входят\проходят\выходят из маршрутизатора и найти текстовые соответствия в этих пакетах - если соответствие найдено - выполняется определенное действие.


понедельник, 3 октября 2016 г.

Материалы MUM Россия сентябрь 2016.

Стали доступны материалы с MUM Москва 2016.

Темы, которые были на конференции:

Реализация Policy Routing (PBR) в MikroTik RouterOS
  Как работать с несколькими провайдерами? Как выделить определенный тип трафика и отправить его через шлюз резервного провайдера? Как сделать отказоустойчивый VPN, имея несколько провайдеров, и, вдобавок, суммировать их каналы? На все эти вопросы невозможно получить ответ, не поняв, как работает Policy Routing на оборудовании MikroTik. Также будет представлена схема IP-VPN на основе Policy Routing и протокола OSPF, которая продемонстрирует, что можно настраивать, имея оборудование MikroTik и обладая знаниями.

Безопасность в MikroTik. Защита ресурсов сети и маршрутизатора
  Способы защиты маршрутизатора и сетевых ресурсов от взлома. Реализация защиты с помощью функций RouterOS.

воскресенье, 2 октября 2016 г.

Failover Mikrotik без скриптов: рекурсивные маршруты.

  Подниму заезженную тему. Смотрел прямую трансляцию с MikroTik User Meeting (Moscow, Russia, September 30 - October 01, 2016) и там один докладчик рассказывал как он не любит писать скрипты и старается использовать функционал RouterOS без них. В докладе, кроме всего прочего, говорилось про рекурсивные маршруты для использования в качестве failover. Вспомнил теплое ламповое время когда я использовать такой вариант файловера и решил написать про это. Довольно интересное решение, которое было изобретено для Mikrotik в 2010 году.
  Допустим у нас есть несколько внешних провайдеров. При пропадании одного интернета-переключаемся на резервный, при возобновлении первого - переключаемся назад. Есть несколько вариантов решения.
  Первый - использование check-gateway=ping: