Особенности работы с межсетевыми экранами: подводные камни и способы решения. Март 2025
Ниже я рассмотрю ряд моментов, напрямую связанных с удобством работы с межсетевыми экранами. Текст не является попыткой продвинуть или выделить какое-либо решение и основан на опыте работы, который безусловно не охватывает всех вариаций того, как реализованы те или иные настройки от производителя к производителю.
## Объекты для политики безопасности
### Специальные символы и буквы
Очень часто в полях для ввода текста, администраторы используют специальные символы, начиная от всевозможных: ' / — _ и заканчивая буквами из других языков. В повседневной работе наличие специальных символов может никак не проявляться. Проблемы подобные настройки рождают когда нужно что-то куда-то скопировать или перенести и желательно автоматизированно. Появляются ошибки конвертации, чтения или задачи завершаются с предупреждениями, узнать истинную причину проблемы, почему выполняемая задача выдала ошибку, бывает сложно и одной из них бывают как раз специальные символы.

Возможные последствия:
— Ошибки при автоматизированном копировании/переносе данных
— Скрипты выдают ошибки конвертации и чтения
— Влияние на работу правил и настроек
Решение:
— Внедрение проверки полей ввода на допустимые символы
— Автоматическая замена специальных символов при выгрузке данных
### Дублирование объектов
Использование дублирующих друг друга объектов является повсеместным. Необходимость использования подобных объектов в политике так же является неоспоримой. Наличие таких объектов в базе и политиках всегда имеет обратную сторону в виде проблем, которые возникают время от времени. Чаще всего можно встретить дублирование следующих параметров:
— разное имя объекта, но одинаковый IP адрес;
— разные IP, но одинаковые имена;
— одинаковые имена и разные сетевые маски;
— одинаковые порты;
— т.п.

Возможные последствия:
— Использование неправильного объекта в правилах и настройках
— Проблемы при миграции конфигураций
— Сложности при анализе правил
Решение:
Внедрение механизмов анализа и контроля дублирующихся объектов.
### Разрастание базы объектов и их устаревание
Почти всегда база объектов разрастается в силу того, что новые сущности создаются, а старые и не востребованные остаются и не удаляются, поскольку не известно используется ли ещё объект или нет. Увеличение количества объектов влияет на производительность устройства, на скорость работы с базой объектов и понимание логики работы.

Возможные последствия:
— Снижение производительности устройства
— Сложность в управлении объектами
— Затруднённый поиск нужных объектов
Решение:
— Создание механизма поиска использования объектов
— Автоматизированный анализ объектов и правил
— Регулярный аудит и очистка неиспользуемых объектов
### Длинные строки
Порою причиной возникающих проблем являются ситуации, когда у объекта в политике безопасности слишком длинная строка в том или ином поле. Иногда люди вставляют строку из заявки, иногда при автоматических процедурах программы пишут в поля совокупность значений и размер строки кратно увеличивается. Мало кто обращает внимание на размер строки и возможные последующие проблемы.

Возможные последствия:
— Проблемы в работе системы
— Сложности при обработке данных
— Ошибки при экспорте/импорте
Решение:
— Внедрение проверки длины строк в полях
— Ограничение максимальной длины строк
— Разделение длинных значений на логические составляющие
## Правила в политиках безопасности
### Удобство визуальной работы
Ввиду того, что политики безопасности состоят из большого числа правил, их размещение на одном экране невозможно в силу объективных причин. При этом есть необходимость видеть всю политику в едином окне, чтобы оценивать, что есть, а чего нет и куда именно добавить то или иное правило.

Решение:
Часто, решением является возможность группировки правил в логические группы с тем, чтобы все правила входящие в группу можно было свернуть, оставив только название группы. Таким образом, путём группировки, можно добиться чтобы на экране оставались только названия групп, что, как правило, позволяет существенно сократить визуальный размер и быстро понять в какую группу надо добавить то или иное правило.
### Быстрый переход к правилу через строку поиска
Почти всегда нет возможности найти нужное правило достаточно оперативно, и строка поиска, через которую фильтруются правила, бывает очень полезной. Разумеется строка поиска должна позволять находить все правила где встречается то или иное значение, или их совокупность чтобы можно было быстро найти именно целевое правило.

Решение:
Сама по себе строка поиска очень часто не выполняет целевую функцию. Необходимо чтобы фильтр был сделан удобно, когда можно писать любое доступное поле и указать желаемое значение и при этом сохранялась возможность искать по любой строке.
### Поле времени для работы правила
Очень часто в политиках требуется наличие правил, которые работают по определённым дням или часам. Некоторые компании таким образом разграничивают доступ к сервисам не только по привычным полям и значениям, но и по времени. Очень часто это используется чтобы автоматически отключить правило по истечении срока заявки.

Решение:
Правила должны поддерживать использование параметра времени. Время должно задаваться с учётом часов, дней и лет.
### Автоматическая подстановка в правило объектов не позволяющих его применить
При создании нового правила, почти всегда, оно создаётся со значениями Any-Any в большинстве полей. Это приводит к тому, что часть полей по тем или иным причинам остаются не заполненными. В свою очередь наличие Any не является хорошей практикой для правил и при последующем анализе правила, восстановить первоначальную логику, которая была при его создании невозможно.

Решение:
Не позволять применить правило сразу после его создания со значениями, которые в правиле указаны по умолчанию. Этого можно достичь, например выставив в поля пустые значения или какой-то объект, который будет требовать замены при попытке сохранить правило в первоначальном виде.
Примечание: Данный текст не является полным, предполагается его дальнейшее дополнение.