GonetsDocs/Documentation/Tech-docs/api/endpoints/ufw.md

105 lines
3.8 KiB
Markdown
Raw Normal View History

2025-10-14 16:14:11 +05:00
# api.v1.ufw
### *class* api.v1.ufw.RuleNumbers(, numbers: List[int])
Bases: `BaseModel`
#### model_config *: ClassVar[ConfigDict]* *= {}*
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
#### numbers *: List[int]*
### *async* api.v1.ufw.add_ufw_in_rules(rules: List[UFWRule])
Добавляет входящие (in) правила UFW.
* **Parameters:**
**rules** (*List* *[**UFWRule* *]*) – Список правил, определяющих направления,
порты/диапазоны/протоколы и действия (allow/deny/reject).
* **Returns:**
Итог выполнения с количеством успешно добавленных правил и деталями
по каждому правилу.
* **Return type:**
dict
* **Raises:**
* **HTTPException** – Если UFW отключен (status_code=400) или при внутренних
* **ошибках** **(****status_code=500****)****.** –
### *async* api.v1.ufw.add_ufw_out_rules(rules: List[UFWRule])
Добавляет исходящие (out) правила UFW.
* **Parameters:**
**rules** (*List* *[**UFWRule* *]*) – Список правил исходящего трафика для добавления.
* **Returns:**
Объект статуса с сообщением об успешном добавлении.
* **Return type:**
dict
* **Raises:**
* **HTTPException** – Если UFW отключен (status_code=400) или при внутренних
* **ошибках** **(****status_code=500****)****.** –
### *async* api.v1.ufw.delete_ufw_rules(rule_numbers: RuleNumbers)
Удаляет правила UFW по их номерам.
* **Parameters:**
**rule_numbers** (*RuleNumbers*) – Номера правил, подлежащих удалению (как в
выводе ufw status numbered).
* **Returns:**
Информация об общем количестве удаляемых правил, числе успешных и
возможной ошибке.
* **Return type:**
dict
* **Raises:**
**HTTPException** – При ошибках удаления (status_code=500).
### *async* api.v1.ufw.disable_ufw()
Выключает UFW.
* **Returns:**
Словарь с ключами status и message при успешном выполнении.
* **Return type:**
dict
* **Raises:**
**HTTPException** – Если выключение завершилось неуспешно (status_code=500).
### *async* api.v1.ufw.enable_ufw()
Включает UFW.
* **Returns:**
Словарь с ключами status и message при успешном выполнении.
* **Return type:**
dict
* **Raises:**
**HTTPException** – Если включение завершилось неуспешно (status_code=500).
### *async* api.v1.ufw.get_ufw_rules()
Возвращает все правила UFW.
Осуществляет обращение к сервису UFWService для чтения текущего списка
правил брандмауэра и возвращает результат в сериализованном виде для клиента.
* **Returns:**
Структура с коллекцией правил и сопутствующей
информацией о состоянии.
* **Return type:**
UFWRulesResponse
* **Raises:**
**HTTPException** – В случае ошибок взаимодействия с UFW (status_code=500).
### *async* api.v1.ufw.get_ufw_status()
Возвращает текущий статус UFW.
* **Returns:**
Объект со сведениями о включенности UFW и деталями статуса.
* **Return type:**
UFWStatus
* **Raises:**
**HTTPException** – Если не удалось получить статус (status_code=500).