Невозможно получить правила брандмауэра через API плагина брандмауэра
У меня проблемы с загрузкой правил fw. Я прочитал док и посмотрел примеры на странице https://docs.opnsense.org/development/api/plugins/firewall.html, но у меня все еще есть проблемы. Я пытаюсь использовать API searchRule через python, и я не могу ничего вернуть простым вызовом без каких-либо атрибутов, вот мой код
import json, requests
KEY = "my_key"
SECRET = "my_secret"
url = "https://192.168.2.1/api/firewall/filter/searchRule"
r = requests.get(url, verify=False, auth=(KEY, SECRET))
print(r.text)
результат всегда
{"rows":[],"rowCount":0,"total":0,"current":1}
Что ж, я попытался добавить некоторые атрибуты к вызову, но ничего не изменилось, обратите внимание, что я установил "icmp_dummies_rule" в качестве описания правила, потому что я думал, что searchPhrase соответствует этому полю (также нет доступного уникального имени, насколько я видно) Пробовал:
url = 'https://192.168.2.1/api/firewall/filter/searchRule?searchPhrase="icmp_dummies_rule"'
url = 'https://192.168.2.1/api/firewall/filter/searchRule?searchPhrase=icmp_dummies_rule'
url = 'https://192.168.2.1/api/firewall/filter/searchRule?current=1&searchPhrase="icmp_dummies_rule"'
url = 'https://192.168.2.1/api/firewall/filter/searchRule?current=1&searchPhrase=icmp_dummies_rule'
Также я не могу передать какой-либо UUID, потому что я не знаю UUID правила (но я предпочитаю извлекать все правила по причине гибкости и более чистого кода).
Есть идеи здесь?
Спасибо.
1 ответ
Решено,
обратите внимание, что об этом поведении НЕ СООБЩАЕТСЯ в api doc.
Добавление модуля firewall-plugin добавит голос автоматизации в раздел Firewall
Теперь в разделе " Голосовой фильтр" вы можете создавать, управлять и удалять правила, эти правила будут доступны через запросы API.
Обратите внимание, что правила, добавленные в режиме RULE voice (по умолчанию), недоступны через интерфейс API.