Palo Alto Networks Panorama. Основы настройки и управления

Сегодня мы кратко расскажем о таком продукте, как Panorama от компании Palo Alto Networks. По какой-то причине на русском языке достаточно мало информации о настройке и основных принципах работы. Что ж, давайте будем заполнять эти пробелы.

Panorama – это система централизованного мониторинга и управления межсетевыми экранами нового поколения (NGFW) Palo Alto Networks, которые в последнее время все больше и больше набирают популярность. В том числе мы в компании Angara Professional Assistance работаем с этим продуктом достаточно часто. В 2019 году аналитическое агентство Gartner 8 раз признало их лидерами в своем Magic Quadrant. С помощью Panorama мы можем агрегировать и хранить логи со всех межсетевых экранов, строить отчеты, управлять настройками (используя гибкое разграничение доступов), лицензиями, обновлениями и даже следить за состоянием аппаратного обеспечения.

Рисунок 1.png

Но давайте по порядку.

Panorama поставляется в качестве ПАК или виртуального апплайнса. Виртуальный апплайнс имеет такой же функционал, как у ПАК. Виртуальный апплайнс можно развернуть на VMware ESXi, Google Cloud Platform, Amazon Web Services, Microsoft Azure. Лицензирование на всех платформах одинаковое. Panorama поддерживает работу в кластере.

Panorama может работать в трех режимах (на самом деле, в четырех, но последний сильно устарел и не рекомендован к новым установкам):

  • Panorama Mode – режим работы по умолчанию. В данном режиме устройство может как управлять другими межсетевыми экранами, так и собирать с них логи.

  • Log Collector Mode – в данном режиме Panorama только собирает логи с соответствующих межсетевых экранов.

  • Management Only Mode – говорит сам за себя. Panorama только управляет устройствами.

Соответственно существует несколько популярных архитектурных решений по интеграции Panorama в сеть.

Рисунок 2.png

Давайте рассмотрим наиболее популярную архитектуру и режим работы Panorama Mode. Данный режим используется по умолчанию, поэтому дополнительных действий по его активации не требуется.

После регистрации устройства на Support Portal подключаемся к Panorama через MGT-интерфейс на IP 192.168.1.252, admin/admin. Если мы используем виртуальный апплайнс, то необходимо задать первоначальные настройки через командную строку:

# set deviceconfig system ip-address <Panorama-IP> netmask <netmask> default-gateway <gateway-IP> dns-setting servers primary <DNS-IP>

Начальный интерфейс очень схож с тем, который вы увидите на межсетевом экране.

Рисунок 3.png

Полный интерфейс будет доступен после конфигурации разделов Template и Device Group, но об этом немного позже.

Лицензирование

Если мы используем виртуальное устройство, то необходимо сгенерировать для него серийный номер на Palo Alto Network Customer Support Portal, после чего ввести его в разделе Panorama > Setup > Management > General Settings. Затем необходимо подгрузить лицензию в разделе Panorama > Licenses > License Management.

Подготовка

На панораме рекомендуется установить версию PAN-OS и Dynamic Updates не ниже тех, которые установлены на межсетевых экранах. Сделать это можно в разделах Panorama > Software и Panorama > Dynamic Updates. В том же разделе желательно настроить автоматическое обновление сигнатур. В целом допускается различие версий Panorama от межсетевого экрана в бОльшую сторону на 5-6 версий в рамках основного релиза. Например, Panorama версии 9.0.6, а межсетевой экран – 9.0.2.

Начальная конфигурация устройства несильно отличается от той, что вы выполните на межсетевом экране. В разделе Panorama > Setup > Management Services прописываем DNS- и NTP-серверы (если мы не сделали это вначале через CLI).

Настройки применяются так же – через меню Commit, которое здесь разделено на три части: Commit to Panorama, Push to Devices, Commit and Push.

  • Commit to Panorama – применение конфигурации только к устройству Panorama.

  • Push to Devices – отправка примененной (Running configuration) Panorama на межсетевые экраны. Кстати, список данных межсетевых экранов и прочие настройки можно выбрать в окне, которое появится после выполнения данного действия.

  • Commit and Push – применение конфигурации к Panorama, а затем отправка ее на подчиненные устройства.

Добавление межсетевых экранов в Panorama

Итак, давайте перейдем к функционалу, ради которого это решение и создавалось, а именно, к добавлению межсетевых экранов для последующего управления.

Происходит это в три шага:

  1. Настройка на межсетевом экране адреса сервера Panorama.

  2. Добавление серийного номера межсетевого экрана в Panorama.

  3. Сохранение всех настроек через Commit.

На межсетевом экране переходим в раздел Device > Setup > Management. После чего в разделе Panorama Settings мы указываем IP-адрес сервера Panorama.

На Panorama переходим в раздел Panorama > Managed Devices > Summary.

Нажимаем на кнопку Add и добавляем серийный номер межсетевого экрана.

Применяем все настройки на межсетевом экране и Panorama.

После чего в этом же меню Panorama > Managed Devices > Summary мы увидим, что статус устройства стал «Connected», а также появилась информация по серийному номеру, IP-адресу, модели, версии баз сигнатур и прочая информация.

Существуют нюансы, когда Вам, например, необходимо добавить уже давно используемый межсетевой экран, перенеся все существующие политики и настройки под управление Panorama. Или когда Вам надо перенести сотни межсетевых экранов и автоматизировать данный процесс. Затрагивать каждый нюанс на данном этапе мы не будем, можно лишь сказать, что процесс – совсем нетрудный.

Templates

Рисунок 4 (002).png

Templates и Device Groups это две ключевые настройки, которые поначалу вызывают наибольшие трудности понимания у тех, кто сталкивается с Panorama.

Templates – это объекты, создаваемые на Panorama, в которых хранятся данные, относящиеся к разделам Network и Device на межсетевых экранах.

Templates создаются в разделе Panorama > Templates. Изначально данный раздел пуст. Нам нужно нажать на кнопку Add и добавить первый Template. Сразу после этого в веб-интерфейсе Panorama появятся два новых раздела (Network и Device).

Template’ов может быть несколько, поэтому, внося изменения в разделы Network и Device на Panorama, необходимо выбирать соответствующий Template.

Рисунок 4_3.png

Меню выбора Template'ов

Template Stacks – набор, который может быть сформирован из восьми Templates. Иерархически это выглядит как 8 слоев. Настройки на верхнем слое распространяются на нижний и имеют больший приоритет. Создаются они в том же разделе, где и обычные Templates.

Рисунок 5.png

Templates Variables

Предположим, что у нас много межсетевых экранов, которые управляются с помощью Panorama и имеют внутренние IP-адреса от 10.0.1.1/24 до 10.0.100.1/24. Чтобы не создавать 100 разных Template’ов для каждого из них, можно воспользоваться функционалом переменных значений.

Давайте разберемся, как это сделать, на примере ситуации выше.

Перейдем в меню Panorama > Templates и создадим Template, который будет отвечать за IP-адреса на интерфейсах межсетевых экранов. Назовем его “Firewall interfaces”. Перейдем в меню Network > Interfaces и, убедившись, что сверху выбран созданный нами Template, перейдем в настройки нужного нам интерфейса, например, ethernet1/1. Перейдя в раздел IPv4, нажмем кнопку Add, чтобы добавить значение IP-адреса, после чего нажмем на New X Variable. Здесь можно создать новую переменную. Дадим ей имя и значение.

Рисунок 6.jpg

Перейдем в меню Panorama > Managed Devices > Summary, где отображены все наши межсетевые экраны, подключенные к Panorama. Выберем межсетевой экран, у которого по задумке должен быть адрес 10.0.2.1/24, и нажмем на кнопку Create в колонке Variables, после чего откроется окно Create Device Variable Definition.

Рисунок 7.jpg

Выберем No и нажмем OK. Откроется окно Template Variables for Device $name.

Дальше выберем созданную нами переменную $Inside_IP и нажмем кнопку Override. Вводим необходимый нам IP-адрес 10.0.2.1/24.

Повторим данные действия для всех необходимых нам межсетевых экраном, после чего применим конфигурацию Commit > Commit and Push.

Данные действия позволили нам с помощью Panorama в рамках одного Template ввести разные значения для нескольких межсетевых экранов. Мы можем пойти и по менее удобному пути, используя функционал Override непосредственно на межсетевых экранах. Если администратор разрешил перезаписывать значения, которые поступают с Panorama, то можно, используя данный функционал локально на межсетевом экране, и перезаписать значение, переданное с Panorama (в данном случае IP-адрес).

В конце концов мы можем вообще не определять IP-адреса интерфейсов на Panorama, а сделать это локально на каждом МСЭ.

Переменные (Templates Variables) можно экспортировать в файл, редактировать, а затем импортировать. Сделать это можно в разделе Panorama > Templates. Для этого необходимо выделить нужный нам Template и, не открывая его, нажать на X Variable CSV > Export. Открыв данный файл, нужно поменять значение для каждого используемого нами межсетевого экрана, а затем импортировать данный файл аналогичным образом. Данный способ однозначно быстрее и позволяет экономить время, если мы управляем большим количеством межсетевых экранов.

Device Groups

Рисунок 8.jpg

Теперь давайте поговорим о схожей концепции – Device Groups.

Device Groups – это объекты, создаваемые на Panorama, в которых хранятся данные, относящиеся к разделам Policies и Objects на межсетевых экранах.

Device Groups создаются в разделе Panorama > Device Groups. Изначально данный раздел пуст. Нам нужно нажать на кнопку Add и добавить первую группу. Сразу после этого в веб-интерфейсе Panorama появятся два новых раздела (Policies и Objects).

Как и Templates, Device Groups закрепляются за определенными межсетевыми экранами. Межсетевой экран также может принадлежать к иерархии групп. Принцип немного отличается от Templates.

Рисунок 9.jpg

Пример иерархии групп

Стоит заметить, что после того как мы создадим первую группу, у нас появится общая группа с названием Shared, настройки которой будут распространяться на все остальные группы.

Что будет, если закрепить за устройством Device Group, но не закреплять Template?

Мы можем столкнуться с трудностями, например, при создании новой политики безопасности (Security Policy): в разделе выбора зон у нас не будет доступно ничего, кроме Any. Это объясняется тем, что за устройством не закреплено ни одного Template, в котором эти зоны были бы обозначены. Один из способов решения данной проблемы – это Reference Templates. Когда вы создаете Device Group и добавляете в нее устройство, у вас так же есть возможность указать ссылку на шаблон.

Рисунок 10.jpg

Reference Templates

Мы можем создать Template, в котором будут обозначены зоны, после чего просто сделать на него ссылку из меню создания или редактирования Device Group.

Policies

Как мы уже знаем, Device Groups также управляет политиками, которые отправляются на межсетевой экран с Panorama. В отличие от обычного редактора политик, здесь у нас появились новые разделы: Pre Rules, Post Rules, Default Rules.

С точки зрения иерархии, все это работает следующим образом (не стоит забывать, что, помимо обычных Device Group, у нас также есть общая группа Shared):

Рисунок 11.png

На первый взгляд это может немного пугать, но, на самом деле, все куда проще. Иерархия политик будет понятна после первых нескольких созданных правил. К тому же, вы всегда можете посмотреть, как итоговые правила будут выглядеть на конечном устройстве. Для этого можно воспользоваться кнопкой Preview Rules в разделе редактирования политик.

Когда вы создаете правило, также имеется возможность выбрать цель (Target) для закрепления политики за определенным устройством. На практике данный функционал автор статьи считает не самым удобным, потому что он может привести к путанице с политиками на разных устройствах при их общем отображении в одном окне. Однако все зависит от человека. Возможно, кому-то это покажется удобным.

Рисунок 12.jpg

Выбор устройств, на которые будут распространяться политики

Есть еще очень интересный функционал для тех, кто любит порядок. В настройках Panorama можно задать необходимые поля, которые нужно заполнять, создавая правила, в противном случае произойдет «Commit fail». Это удобно и, например, приучает администраторов всегда добавлять описания к создаваемым ими правилам или вешать тэги. По описанию мы сможем понять, какой замысел был у того или иного правила, по тэгам мы можем сгруппировать правила, отфильтровав ненужные.

На глобальном уровне это настраивается в меню Panorama > Setup > Management > Policy Rulebase Settings.

На уровне Templates это настраивается в меню Devices > Setup > Management > Policy Rulebase Settings.

Логирование

Теперь давайте пройдемся по логам.

Panorama получает информацию о логах из двух источников: локального и удаленного.

Локальный источник – логи, которые были направлены самим межсетевым экраном на Panorama. Логи, которые Panorama запросила и получила от Log Collector’ов и Cortex Data lake (их мы не будем затрагивать в данной статье).

Удаленный источник – логи, которые запрашиваются у межсетевого экрана.

Также существуют два типа логов: Summary Database и Detailed Logs.

  • Summary Database – межсетевой экран агрегирует логи каждые 15 минут, компонует их (некоторые поля и информация удаляются из логов) и отправляет на Panorama, даже если не настроены правила пересылки логов. В данных логах присутствует информация по статистике приложений, угроз, трафика, туннельной инспекции и URL-фильтрации.

  • Detailed Logs – в данных логах присутствует полная информация и все поля. Данные логи Panorama запрашивает у межсетевого экрана сама. Также для их наличия на межсетевых экранах должны быть выполнены настройки по пересылке логов.

Сам интерфейс просмотра логов, практически, идентичен тому, что вы увидите на межсетевых экранах. Тут присутствует и ACC, и привычный нам Dashboard, и раздел Monitor. И даже разделы формирования отчетов такие же.

Поиск проблем

Теперь давайте на верхнем уровне рассмотрим вопросы отладки.

Стоит почаще проверять раздел Device Summary. Там можно найти информацию о состоянии устройств, подключенных к Panorama. Например, мы можем увидеть следующую ситуацию:

Рисунок 13.jpg

В данном случае мы видим, что конфигурация межсетевого экрана рассинхронизировалась с Panorama из-за того, что произошла ошибка «commit failed». Информацию о причинах данной ошибки можно посмотреть, кликнув на красную ссылку commit failed.

В меню Panorama > Managed Devices > Health можно получить информацию о состоянии устройств: пропускной способности, количестве новых сессий в секунду, общем количестве сессий, загрузке процессора на Data Plane и Management Plane, использовании памяти, количестве логов в секунду, состоянии вентиляторов и блоков питания. Также всю данную информацию можно посмотреть в виде графиков.

Раз уж мы упомянули про ресурсы и отладку, в рамках данной статьи упомянем замечательный плагин для браузера Chrome под названием Pan(w)achrome. Включается он после ввода учетных данных в веб-интерфейсе межсетевого экрана. В плагине можно посмотреть общую информацию о состоянии устройства и получить не только более детальную информацию по загрузке ресурсов, чем мы увидим на Panorama, но и даже посмотреть статистику по тем или иным счетчикам (counters) (полный список не поместился в скриншот):

Рисунок 14.png

Рисунок 15.png

Конечно, данную информацию в куда более развернутом виде и с описанием счетчиков можно узнать через CLI устройства, однако, это отдельная тема для другой статьи, посвященной отладке. Данный же плагин позволит наглядно в графическом формате оценить, что происходит с тем или иным устройством. И для 70% возникающих проблем этого может быть вполне достаточно.

Что ж, вернемся обратно к «земным» проблемам. И одна из наиболее частых проблем связана с подключением Panorama к межсетевым экранам. Для этого нам необходимо проверить доступность следующих портов:

  • 3978 – связь Panorama с межсетевыми экранами и Log Collectors;

  • 28443 – обновление софта с Panorama на подчиненные устройства;

  • 28 – коммуникация между HA-нодами Panorama (зашифрованная);

  • 28260, 28769 – коммуникация между HA-нодами Panorama (незашифрованная).

Также не стоит забывать, что ошибки можно посмотреть на межсетевом экране в разделе Monitor > Logs > System, отфильтровав их через фильтр («description contains Panorama»).

Замена устройств

Напоследок затронем не самую частую ситуацию, такую как замена межсетевых экранов, подключенных к Panorama. Опустим нюансы по переносу лицензий со старого устройства на новое (об этом вы можете почитать в официальных руководствах по запросу «how to transfer licenses to a spare device») и перейдем сразу к последовательности настройки:

  1. Производим базовую настройку нового межсетевого экрана. Нам нужно удостовериться, что мы настроили доступ по mgmt-интерфейсу и, что версии PAN-OS совпадают. Также стоит проверить версии сигнатур в разделе dynamic updates.

  2. Экспортируем «device state» старого устройства через Panorama. Заходим в командную строку и выполняем одну из следующих команд (в зависимости от поддерживаемого протокола на сервере, куда мы будем экспортировать конфигурацию):
    > scp export device-state device <old-serial#> to <login>@<serverIP>:<path>

либо:
> tftp export device-state device <old-serial#> to <login>@<serverIP>:<path>

После того как мы завершили трансфер, необходимо поменять серийный номер старого устройства на новый:
> replace device old <old-serial#> new <new-serial#>

  1. Импортируем «device state» на новый межсетевой экран. На новом межсетевом экране заходим в раздел Device > Setup > Operations > Import device state и загружаем сохраненную нами конфигурацию.

  2. Нажимаем Commit.

Заключение

Конечно же мы прошлись только по самым верхам настройки Panorama и не затронули много нюансов. Однако понимание верхов позволит подключить межсетевые экраны к Panorama, разобраться в ее основных функциях и начать более гранулированную настройку самостоятельно.

Если затронутая тема оказалась для вас интересной, в следующих статьях постараемся более детально осветить вопросы отладки (траблшутинга), которые обычно отдают на решение технической поддержке либо ASC (Authorized Support Center) и которые отсутствуют в официальных руководствах производителя, доступных рядовым клиентам.

Можем затронуть такие темы, как:

  • CLI. Нюансы и лайфхаки.

  • Использование Tech Support File для траблшутинга.

  • Flow Logic.

  • Захват пакетов.

  • Packet Diagnostic.

  • Траблшутинг входящего трафика. VPN, Ike, IPsec.

  • Траблшутинг транзитного трафика.

  • Системные сервисы (DAEMONS).

  • Траблшутинг сертификатов и SSL-инспекции.

  • Траблшутинг User-ID.

  • Траблшутинг GlobalProtect.

Источник: Habr