Страница 1 из 2

Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 24 янв 2017, 17:07
sergeytit
Добрый день коллеги.

Стоит такая задача:

Нужно настроить авторизацию (в идеале через http) пользователей по результатам которой добавится запись в firewall\address lists.
Будет вообще шикарно, если в качестве логина ввести номер телефона, а пароль будет приходить по СМС. Версия Mikrotik 6.37.1
С СМС это конечно в идеале, но для начала нужно каким-либо простым способом при помощи авторизации добавлять запись в firewall\address lists.

Для чего это нужно - проброшен порт при подключении через WAN для RDP клиентов. Если IP прописан в firewall\address lists то ОК. Если IP нет в списке, в address lists падает запись про бан этого IP... Проблема в том что есть клиенты с динамическим IP и со временем их количество растет, пока вопрос решается звонком по телефону и редактированием нужной записи вручную.

Очень хочу как-то автоматизировать этот процесс. Можно сделать PPtP соединения, но это не так изящно и нужно делать много телодвижений на стороне клиента.

Железо стоит в офисе и выпускает планктон в просторы интернета, каждый прайд со своими потребностями. Задействованы 2 интерфейса WAN и LAN.

Спасибо за внимание. Жду предложений.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 24 янв 2017, 18:02
Vlad-2
1) Самое первое - всё же предложение изменить подход к задачи, переложить её видение
2) Блокировать все не подтверждённые IP - бессмысленно,их очень много и тому прочее, попросту просто будет расти список чёрный.
2.1) проще закрыть порт по-умолчанию для всех, а если IP подтверждён - тогда его в белый список и доступ к порту есть у IP с белого списка.
3) Опять же проблема с динамическими и с адресами от сотовых операторов - там с одного адреса могут приходить,
кто будет считаться желанным, а кто не очень?
4) Почему из роутера хотят сделать стражника и ещё с "умом"? Роутер обязан делать маршрутизацию и свою работу, проброс порта он сделал,
а уже кому и как на этот порт и по каким критериям попадать - надо делать или на стороне клиента или на стороне сервера
5) Тут уже был похожий вопрос, там предложили сделать Веб-сервер авторизации, который и будет "логику" делать,
и после успешного прохождения - сервер должен дать добро или не дать (процесс стыковки роутера и логики не прост, язык скриптов и т.д.)
6) Также всё же правильно делать это всё в рамках производного от ВПН - подключился (а подключиться может только свой (на основании логина/пароля/ключа/шифра),
попал в сеть или в DMZ-сеть, и работай, и порты не надо пробрасывать, всё доступно в пределах сетей/маршрутов)
7) Может что-то ещё, но вроде всё что пришло в голову - поделился.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 24 янв 2017, 18:35
sergeytit
Vlad-2 писал(а):1) Самое первое - всё же предложение изменить подход к задачи, переложить её видение
2) Блокировать все не подтверждённые IP - бессмысленно,их очень много и тому прочее, попросту просто будет расти список чёрный.
2.1) проще закрыть порт по-умолчанию для всех, а если IP подтверждён - тогда его в белый список и доступ к порту есть у IP с белого списка.

Сути это особо не меняет. IP у меня без веб-сервера, порт нетривиальный - кто попало не ломится.
Vlad-2 писал(а):3) Опять же проблема с динамическими и с адресами от сотовых операторов - там с одного адреса могут приходить,
кто будет считаться желанным, а кто не очень?
4) Почему из роутера хотят сделать стражника и ещё с "умом"? Роутер обязан делать маршрутизацию и свою работу, проброс порта он сделал,
а уже кому и как на этот порт и по каким критериям попадать - надо делать или на стороне клиента или на стороне сервера
5) Тут уже был похожий вопрос, там предложили сделать Веб-сервер авторизации, который и будет "логику" делать,
и после успешного прохождения - сервер должен дать добро или не дать (процесс стыковки роутера и логики не прост, язык скриптов и т.д.)
6) Также всё же правильно делать это всё в рамках производного от ВПН - подключился (а подключиться может только свой (на основании логина/пароля/ключа/шифра),
попал в сеть или в DMZ-сеть, и работай, и порты не надо пробрасывать, всё доступно в пределах сетей/маршрутов)
7) Может что-то ещё, но вроде всё что пришло в голову - поделился.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 24 янв 2017, 20:05
podarok66
Ну реализация авторизации по SMS - дело небесплатное однозначно. Тут уж вам решать, готовы ли вы потратить энную сумму на подобное мероприятие. А если по простому делать и почти руками, то попробуйте задействовать DHCP-сервер. Пункт Leases позволит вам зафиксировать нужные пары МАС+IP , достаточно удобный инструмент. В самом сервере есть окошко Lease Script, в котором очень даже просто написать свой скриптик, который будет отправлять незафиксированных пользователей в нужный адрес-лист. У меня дома подобная связка стоит, как лишняя преграда для особо склонных к халяве соседей:

Код: Выделить всё

{
    :local t [/system clock get time];
    :local d [/system clock get date];
    :foreach i in=[/ip dhcp-server lease find] do={
        :if ([/ip dhcp-server lease get $i status]="bound" && [/ip dhcp-server lease get $i comment]="" && [/ip dhcp-server lease get $i server]="DHCP") do={
        :local g [("Guest" . "-" . $d . "-" . $t)]
        /ip dhcp-server lease set $i comment=$g;
        /ip firewall address-list add address=[/ip dhcp-server lease get $i address] list="Drop" timeout=1d

        }
    }   
 }

Скрипт ищет записи без комментариев и отправляет их в бан-лист сроком на сутки (равно сроку аренды на сервере), сопровождая комментарием со временем подключения.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 06:39
Dragon_Knight
Как выше сказал podarok66, такое реализуется, но не за бесплатно, ибо проект явно комерческий.
Можем или натолкнуть на мысль, или стучите мне в личку, обсудим условия работы :)

В принципе не сложно сделать и через sms, используя sms шлюз, только учтите что за него нужно будет платить, в зависимости от тарифа.
Также для работы всей системы нужен сервер http с php и любой базой.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 09:59
sergeytit
Сколько не задаю этот вопрос, все почему-то цепляются за СМС. СМС это уже как идеальное решение, мне для начала нужна сама схема, принцип так сказать.

По поводу коммерческого проекта - в день планируется не больше 2-4 обращений, так что затраты на СМС практически нулевые, а СМС-ки сможет отправлять даже обычный GSM-модем на любом USB порту, но еще раз повторюсь - это не основное.

Связка с сервером http/php пока даже не представляю как это можно реализовать. Честно говоря надеялся что это как-то можно сделать через страницу авторизации для хотспота, т.е. не вылезая за пределы микротика либо каким-то плагином...

hdcp сервер задействовать не получится, т.к. клиенты подключаются извне, т.е. со стороны WAN интерфейса с белыми IP-шниками, соответственно речи о мак-адресе не идет.

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 10:32
sergeytit
podarok66 писал(а):Ну реализация авторизации по SMS - дело небесплатное однозначно. Тут уж вам решать, готовы ли вы потратить энную сумму на подобное мероприятие. А если по простому делать и почти руками, то попробуйте задействовать DHCP-сервер.

Кстати, интересная мысль пришла в голову - как сделать так, что-бы всякие "андроиды" не засоряли адресное пространство. Можно-ли сделать бан лист для DHCP сервера, что-бы он не обрабатывал запросы из этого списка?
Возможно эту тему нужно вынести отдельно, или она не настолько оригинальна?

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 10:34
podarok66
sergeytit писал(а):hdcp сервер задействовать не получится, т.к. клиенты подключаются извне, т.е. со стороны WAN интерфейса с белыми IP-шниками, соответственно речи о мак-адресе не идет.

И как же происходит авторизация сейчас? Они же используют какой-то профиль?
sergeytit писал(а): Можно-ли сделать бан лист для DHCP сервера, что-бы он не обрабатывал запросы из этого списка?

Из какого списка? Как маршрутизатор будет определять, какая система на том устройстве, что подключается?
sergeytit писал(а):По поводу коммерческого проекта - в день планируется не больше 2-4 обращений, так что затраты на СМС практически нулевые, а СМС-ки сможет отправлять даже обычный GSM-модем на любом USB порту

Да при чем здесь расходы на СМС. Сам проект и его реализация - коммерческие. Никто вам за красивые глазки его на блюдечке не преподнесет. Авторы подобных проектов за это берут деньги. :-)

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 12:04
sergeytit
podarok66 писал(а):
sergeytit писал(а):hdcp сервер задействовать не получится, т.к. клиенты подключаются извне, т.е. со стороны WAN интерфейса с белыми IP-шниками, соответственно речи о мак-адресе не идет.

И как же происходит авторизация сейчас? Они же используют какой-то профиль?

ip находится в белом листе
podarok66 писал(а):
sergeytit писал(а): Можно-ли сделать бан лист для DHCP сервера, что-бы он не обрабатывал запросы из этого списка?

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

по МАС-адресу, пока речь идет о принципе, для начала можно особо доставучих ручками добавлять, в конце концов можно мобильные устройства отфильтровать по маске.
podarok66 писал(а):
sergeytit писал(а):По поводу коммерческого проекта - в день планируется не больше 2-4 обращений, так что затраты на СМС практически нулевые, а СМС-ки сможет отправлять даже обычный GSM-модем на любом USB порту

Да при чем здесь расходы на СМС. Сам проект и его реализация - коммерческие. Никто вам за красивые глазки его на блюдечке не преподнесет. Авторы подобных проектов за это берут деньги. :-)


Неужели прошли времена когда на форуме люди просто делились знаниями? Я не прошу писать готовые скрипты и команды. Прошу просто дать пинок в правильном направлении, а в ответ слышу только теоретический шум...

Re: Добавление записи в firewall\address lists при помощи авторизации

Добавлено: 25 янв 2017, 12:06
sergeytit
Dragon_Knight писал(а):Как выше сказал podarok66, такое реализуется, но не за бесплатно, ибо проект явно комерческий.
Можем или натолкнуть на мысль, или стучите мне в личку, обсудим условия работы :)

Вот именно "натолкнуть на мысль" меня вполне устраивает.