В настоящее время мы используем Sophos SG230 в качестве межсетевого экрана / восходящего маршрутизатора, и управление конфигурацией - настоящий ужас. Даже ручное резервное копирование конфигурации после каждого изменения приведет к неизменяемым двоичным изменениям в файле резервной копии.
Существует ли де-факто стандарт конфигурации маршрутизации / брандмауэра в виде кода? Я посмотрел на pfsense, но он тоже довольно привязан к графическому интерфейсу. По крайней мере, существует файл конфигурации, доступный для чтения человеком, но сгруппировать правила в семантические пакеты сложно.
Мы начали использовать REST api: s, которые становятся все более распространенными в инфраструктурных устройствах. Это работает настолько хорошо, что REST api теперь стал основным требованием при покупке инфраструктуры.
Получение конфигурации в формате json для хранения в svn или git упрощает сравнение конфигурации и удобочитаемость. То же самое и с созданием кодовых блоков json для загрузки на устройство из svn или git.
По крайней мере, похоже некоторые межсетевые экраны Sophos поставляются с REST api, может, и твой тоже?
Построение рабочего набора вызовов для каждого устройства может занять некоторое время. Я предлагаю использовать Почтальон клиент для изучения методов REST устройства и для хранения рабочих вызовов. Когда у вас есть небольшая библиотека, содержащая все вызовы REST, которые вы хотите сделать против устройства, преобразование их в код выполняется быстро.
Да, старые iptables - вы можете редактировать файл конфигурации напрямую или создать его из bash / python / других или различных приложений с графическим интерфейсом.
Стоит взглянуть на UFW и firewalld. Я думаю, что Centos по умолчанию поставляется с firewalld, но я вернулся к iptables в качестве временного исправления, и однажды я посмотрю, как переключиться обратно и узнаю, как это должно работать. Честный.