105 lines
3.8 KiB
Markdown
105 lines
3.8 KiB
Markdown
|
|
# 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).
|