GEOIP и Блокировка стран
Добавлено: 19 авг 2017, 23:34
Здравствуйте, решил я добавить для вас тему по блокировки стран. Многие и не знаю как ей пользоваться. Модуля на GEOIP как многие уже в курсе - на самом деле нету. Но есть альтернативное решение. Mikrotik предоставили нам БД для IP диапазонов всех стран.
Вносим все IP адреса в ЧС(черный список)
Начнем с CN - китай и республики Гон-конг HK
Коды стран для GEOip можно взять тут - ассортимент всех стран мира
https://www.artlebedev.ru/country-list/
Сами же правила тут http://www.iwik.org/ipcountry/mikrotik/HK Ичем через первую ссылку нужную вам страну для блокироваки или наоборот для открытия доступа к роутеру. Далее заменяем HK например на ID индию - или на DE германию например.
Далее все по сторой ссылке - вставляем в терминал весь диапапозон ( я делаю через Winbox )
Копирую с первой ссылки нужное количество IP диапазонов или просто на просто все IP
И вставляю в терминал правым кликом и "Paste"
Далее задаю правила
которые я описал в другой статье для защиты от DDoS атак http://forum.mikrotik.by/viewtopic.php?f=2&t=327
Кстати не забудьте закрыть водящий UDP трафик с помощью reject!
Так как мы внесли список address-list = HK , то пропишем для него правило.
Этим правилом мы закрыли доступ для Гонконга. Это был метод блокировки IP диапазона определенной страны.
А теперь второй метод :
Вы можете облегчить себе задачу если вам надо впускать только РФ, Украину, Казахстан и тд а остальные заблокировать - ведь тех кого хотите заблокировать больше чем тех кого хотите впустить.
Добавим правило DROP на все соединения перед правилом блокировки UDP соединений:
Далее создаем arress-list методом copy+paste для RU, UA, BY, KZ
Открываем им доступ
А потом уже прописываем правила фильтрации и защиты от DDoS атак http://forum.mikrotik.by/viewtopic.php?f=2&t=327
Всего доброго, так же для чайников: Если вы закрыли UDP как я сказал и думаете - о боже что делать тогда с UDP приложением которое требует входящий порт UDP??? Ничего страшного - например у вас Teamspeak3 сервер udp port 9987. Что бы открыть ему доступ - лучшая защита под него это добавить Layer7 протокол. Добавьте его regexp c именем ts3
И откройте порт :
Список regexp ов http://l7-filter.sourceforge.net/protocols
Так же прочтите мою тему по Layer7 http://forum.mikrotik.by/viewtopic.php?f=2&t=329
Всего вам доброго.
Вносим все IP адреса в ЧС(черный список)
Начнем с CN - китай и республики Гон-конг HK
Коды стран для GEOip можно взять тут - ассортимент всех стран мира
https://www.artlebedev.ru/country-list/
Сами же правила тут http://www.iwik.org/ipcountry/mikrotik/HK Ичем через первую ссылку нужную вам страну для блокироваки или наоборот для открытия доступа к роутеру. Далее заменяем HK например на ID индию - или на DE германию например.
Далее все по сторой ссылке - вставляем в терминал весь диапапозон ( я делаю через Winbox )
Код: Выделить всё
"new terminal" > ip firewall address-list
Код: Выделить всё
add address=220.232.136.0/21 list=HK
add address=220.232.144.0/21 list=HK
add address=220.232.152.0/22 list=HK
add address=220.232.160.0/23 list=HK
add address=220.232.166.0/23 list=HK
add address=220.232.168.0/21 list=HK
Далее задаю правила
которые я описал в другой статье для защиты от DDoS атак http://forum.mikrotik.by/viewtopic.php?f=2&t=327
Кстати не забудьте закрыть водящий UDP трафик с помощью reject!
Так как мы внесли список address-list = HK , то пропишем для него правило.
Код: Выделить всё
Chani = forward ; Protocol = 6 (tcp) ; Scr. Address List = HK ; Action = DROP
А теперь второй метод :
Вы можете облегчить себе задачу если вам надо впускать только РФ, Украину, Казахстан и тд а остальные заблокировать - ведь тех кого хотите заблокировать больше чем тех кого хотите впустить.
Добавим правило DROP на все соединения перед правилом блокировки UDP соединений:
Код: Выделить всё
Chani = forward ; Protocol = 6 (tcp) ; Action =DROP
Открываем им доступ
Код: Выделить всё
Chani = forward ; Protocol = 6 (tcp) ; Scr. Address List = RU; Action = ACCEPT
Chani = forward ; Protocol = 6 (tcp) ; Scr. Address List = UA; Action = ACCEPT
Chani = forward ; Protocol = 6 (tcp) ; Scr. Address List = BY; Action = ACCEPT
Chani = forward ; Protocol = 6 (tcp) ; Scr. Address List = KZ; Action = ACCEPT
Всего доброго, так же для чайников: Если вы закрыли UDP как я сказал и думаете - о боже что делать тогда с UDP приложением которое требует входящий порт UDP??? Ничего страшного - например у вас Teamspeak3 сервер udp port 9987. Что бы открыть ему доступ - лучшая защита под него это добавить Layer7 протокол. Добавьте его regexp c именем ts3
Код: Выделить всё
^\xf4\xbe\x03.*teamspeak
Код: Выделить всё
Chani = forward ; Protocol = udp 98777 ; Layer 7 protocol = ts3 ; Action = Accept
Так же прочтите мою тему по Layer7 http://forum.mikrotik.by/viewtopic.php?f=2&t=329
Всего вам доброго.