На просторах интернета есть множество решений по файрволам и прочему администрированию сети, я работал в организации где использовали продукт Kerio - Kerio Winroute Firewall (нынче Kerio Control) и мне понравилось работать с этим продуктом.
Раньше я им пользовался активно, даже дома (сеть 3-4 компьютера), т.к. с интернетом были сложности приходилось изворачиваться для экономии трафика...
В общем много могу писать, но перейду к сути:
У нас страна маленькая, и работает такое понятие как пиринг, т.е. трафик между провайдерами в нашей стране по льготной цене, и в общем для некоторых целей проходилось группировать подсети наших провайдеров, а потом уже файрволить эту группу...
Количество подсетей у нас около 30-40, и когда они меняются приходилось глазками сверять текущие подсети в группе, и те что напилили... это очень неудобно в данном случае, так и родилась небольшая обработка которая облегчила мне жизнь.
Сразу предупрежу!
Не нужно обсуждений по поводу применяемого софта и какая плохая виндовз, статья предназначена для тех кому это будет полезно, есть миллион решений по файрволинью сетей, это мы не обсуждаем!
Переходим к теме:
Все что я описываю применяется мною, все могут это делать по-разному, я опишу для своей ситуации.
Один из местных провайдеров выкладывает так называемые Диапазоны IP-адресов провайдеров, выглядят в моем случае так:
Наименование провайдера | Подсеть | Маска подсети
Этапы задачи таковы:
1) Помещаем сведения по диапазонам IP-Адресов в таблицу Excel (использую этот способ т.к. на сайте выкладывается табличка с нужной информацией) и мне удобно это сделать.
Для удобства можно применить функцию Excel -"Обновляемый web запрос...". Тут подробнее информация.
Таблица готова. Для моей обработки не страшно наличие шапки таблицы... Сохраняем таблицу Excel (я сохраняю в версии 97-2003)
2) Открываем и настраиваем обработку.
a) Выбираем созданный нами файл *.xls, диапазон ячеек можно не указывать, автоматически будет подставлено с 1 по 1000 (1000 думаю хватит).
b) Указываем Допустимое количество ошибок. Для чего? В обработке стоит проверка по колонке с указанием маски подсети, Если в ячейке есть подстрока "255.255." тогда это то что нужно нам, а если например там шапка таблицы или какие-нибудь разделители скопированные с таблицы сайта, или лень указать диапазон строк, и чтобы не перебирать 1000 строк -стоит счетчик ошибок, как он переполняется -цикл прекращается.
c) Поле "Id" это как бы "Код" элемента, если в вашем файрволе будет только тот диапазон ip-адресов который импортируем, то нумерация пусть будет с 1, а если у вас уже есть внесенные ip-адреса то укажите нумерацию с которой нужно начать.
d) Флажок "Enabled". В файрволе можно отключать подсеть в группе, тогда он не будет участвовать в правилах файрвола, а просто будет внесен в группу. Если он установлен, то всем подсетям будет установлено значение "активно".
e) Поле "Desc" - имя группы. Т.к. мы добавляем подсети в 1 группу, то указываем имя этой группы.
f) Поле "Name" - номер колонки в которой находится название провайдера.
g) Поле "Value" состоит из Номера колонки в которой находятся адреса подсетей, и после слэша номер колонки в которой обозначены маски для этих подсетей.
Жмем кнопку "Выполнить". Процесс завершается и открывается поле с блоком текста для вставки в конфигурационный файл Kerio Winroute Firewall.
3) Сгенерированный текст нужно добавить в конфигурационный файл Kerio Winroute Firewall (Kerio Control), который находится в папке с установленной программой.
a) Останавливаем файрвол.
b) Открываем блокнотом файл winroute.cfg (если Win7, то обязательно от имени администратора).
Ищем блок "IpAccessList", если у вас уже внесены какие-то подсети, то структура будет в таком виде:
Тогда добавляем новые блоки из обработки
А если ничего не было, то вставляем все скопированное из обработки между тэгами <list name="IpAccessList"> и </list>
с) Сохраняем файл winroute.cfg
d) Запускаем файрвол, идем в консоль администрирования и смотрим раздел "Определения - Группы IP-Адресов"
P.S. Файлик конечно можно и xml генерить, но не стал заморачиваться, сделал простым текстом...
Если найдет применение у пользователей, то второй релиз можно соорудить еще и с добавлением групп web адресов (обычно для блокировки доступа используются)... ну и т.д.