Моя шпаргалка :)

Мануалы и настройки => Сетевое оборудование => mikroTik => Тема начата: George от Март 11, 2024, 11:55

Название: Настройка Firewall Mikrotik
Отправлено: George от Март 11, 2024, 11:55
Сначала дропаем всё подозрительное, ненормальное, и противоестественное, такое как invalid connection, запросы на мой DNS, листы DROP и так далее.
Далее защиты от сканера портов, от DDoS и Syn атак и т.д.
Следом правила по разграничиванию доступа, запрет ненормалых подключений по VPN....
Потом разрешающие и запрещающие правила для конкретных сетей и пользователей
Последнее правило для запрета всего остального, что не попало под правила выше.
Блокировка любителей сканировать порты:

>/ip firewall filter add chain=input psd=21,3s,3,1 action=add-src-to-address-list address-list=psd
/ip firewall raw add chain=prerouting src-address-list=psd action=drop
Так мы дропнем его навсегда

блокировка DDoS

/ip firewall address-listadd list=ddos-attackersadd list=ddos-target/ip settings set tcp-syncookies=yes/ip firewall filteradd chain=forward connection-state=new action=jump jump-target=detect-ddosadd action=return chain=detect-ddos dst-limit=32,32,src-and-dst-addresses/10sadd action=return chain=detect-ddos dst-limit=32,32,src-and-dst-addresses/10s protocol=tcp tcp-flags=syn,ackadd action=add-dst-to-address-list address-list=ddos-target address-list-timeout=10m chain=detect-ddosadd action=add-src-to-address-list address-list=ddos-attackers address-list-timeout=10m chain=detect-ddos/ip firewall rawadd action=drop chain=prerouting dst-address-list=ddos-target src-address-list=ddos-attackers1-3 создаем два списка адресов, в которые будут попадать спамеры и жертвы (ведь спам может быть направлен и не на вас, а на сторонний ресурс).

4 включаем кэш для отслеживания SYN-ACK пакетов.

5-10 правила определяющие кто и как часто пытается нас или через нас спамить кого-либо малыми пакетами. Если это не спам, то пакетик считается легитимным и продолжает обрабатываться в обычном режиме.

11-12 отдельная цепочка прероутинга, в которой спам начинает отбрасываться.

Особенно разжевывать или тюнить эту схему не вижу смысла - у всех будут разные задачи и разный результат, который должен получиться. В моем случае мне этого вполне достаточно. Не забудьте в IP -> Firewall поднять эти правила в самый верх. У меня еще выше этих правил стоят правила BLOCK и WhiteList - где, соответственно, черный список - это те адреса, которые мне совсем не нравятся, а белый - это список моих внешних адресов, которые нет смысла пропускать через все остальные правила фаервола. Далее должны расположиться вот эти 4 правила по отсеиванию флуда, а далее уже все остальные с пробросом к внутренним ресурсам.

Название: От: Настройка Firewall Mikrotik
Отправлено: George от Март 11, 2024, 01:05
Входим в редактирование FW
/ip firewall filterПакеты проходят по списку правил по порядку, сверху вниз. Если пакет соответствует какому-то правилу, то он прекращает движение по цепочке. Из этого следует важный вывод - первыми в цепочке должны быть правила, которые охватывают максимальный объем трафика, чтобы он дальше не обрабатывался устройством. Примером такого правила является разрешение пакетов уже установленных (established) или связанных (related) соединений, которые ранее были разрешены каким-то правилом. Повторно проверять по всем правилам их не нужно. Сделаем такое правило для цепочки input - входящие соединения роутера.
add action=accept chain=input comment="accept establish & related" connection-state=established,relatedОтбрасываем все неверные (Invalid) пакеты
add action=drop chain=input comment="drop invalid" connection-state=invalidРазрешаем ICMP (ping). У меня он обычно закрыт (drop)
add action=accept chain=input comment="accept ICMP" protocol=icmpСоздаем заключительное правило для цепочки input, которое будет блокировать все запросы, пришедшие не из локальной сети. В моем примере у меня локальная сеть подключена к бриджу bridge1-lan. В него входят все порты, подключенные в локалку.
add action=drop chain=input comment="drop all not from lan" in-interface=!bridge1-lanНа текущий момент мы запретили все запросы из вне к роутеру, кроме пингов. При этом доступ из локальной сети полный. Настроим теперь правила для транзитного трафика цепочки forward. Здесь по аналогии с input первыми идут правила для established, related, invalid пакетов.
add action=accept chain=forward comment="accept established,related" connection-state=established,relatedadd action=drop chain=forward comment="drop invalid" connection-state=invalidТеперь запретим все запросы из внешней сети, связь с которой через интерфейс ether1-wan к локальной сети. dstnat это проброс портов, о нем отдельная тема.
add action=drop chain=forward comment="drop all from WAN to LAN" connection-nat-state=!dstnat connection-state=new in-interface=ether1-wanРазрешаем 80 и 443 порты из локальной сети:
add action=accept chain=forward comment="accept http & https from LAN" dst-port=80,443 in-interface=bridge1-lan out-interface=ether1-wan protocol=tcpИ разрешаем 53 (DNS) порт
add action=accept chain=forward comment="accept dns from LAN" dst-port=53 in-interface=bridge1-lan out-interface=ether1-wan protocol=udpВсе остальное отбрасываем
add action=drop chain=forward comment="drop all from LAN to WAN" in-interface=bridge1-lan out-interface=ether1-wan