Перейти к содержимому

Fortinet FortiOS (FortiGate)

Читает GET /api/v2/monitor/system/status — собственный REST API FortiOS. Проверено на реальном FortiGate 601E с FortiOS 7.4.12.

targets:
- id: fw-edge
product: fortios
address: https://fw.example.com
credentials: fortigate-api

Нужен токен REST API Admin: создайте REST API Admin в веб-интерфейсе FortiGate (System → Administrators) и скопируйте сгенерированный API-ключ — FortiOS показывает его ровно один раз. Он передаётся как обычный bearer-токен: без входа через сессию, без CSRF-токена, без параметра access_token в запросе:

credentials:
fortigate-api:
kind: bearer
value: "${FORTIGATE_API_TOKEN}"

Отсутствующий или неверный токен получает 401 (с HTML-страницей ошибки, а не JSON) — это сообщается как ошибка аутентификации, как и у любой другой пробы. В самой FortiOS REST API Admin можно ограничить доверенными хостами; если вы так делаете, добавьте туда адрес, с которого подключается enodia.

  • version — как её сообщает FortiOS, например v7.4.12 (ведущая v отбрасывается при сравнении, а не при записи)
  • extra.model — например, FG6H1E (это 601E)
  • extra.build — номер сборки FortiOS

Имя хоста устройства есть в том же ответе, но намеренно не записывается.

Сверяется с NVD и БДУ ФСТЭК, если настроен блок cve:.

endoflife:fortios. На странице FortiOS в endoflife.date есть циклы релизов и даты, но ни для одного цикла нет «последней версии», поэтому ось lifecycle работает, а drift показывает LATEST: - и PATCH: unknown — это пробел в исходных данных, а не ошибка пробы.