GonetsDocs/Documentation/Tech-docs/api/services/ufw_service.md
2025-10-14 16:19:35 +05:00

3.4 KiB
Raw Blame History

UFW Service

class services.ufw_service.UFWService

Bases: object

Сервис взаимодействия с UFW (Uncomplicated Firewall).

Назначение:
  • Чтение статуса и списка правил брандмауэра.
  • Добавление, удаление и массовая обработка правил с поддержкой диапазонов портов, комментариев и выбором протоколов.
Детали реализации:
  • Команды выполняются через sudo ufw …; вывод парсится в модели pydantic.
  • Для операций удаления соблюдается порядок с конца, чтобы не нарушать нумерацию.

add_rules(rules: List[UFWRule]) → dict

Добавляет правила UFW.

  • Parameters: rules – Список правил для добавления
  • Returns: Результат добавления правил
  • Return type: dict

add_rules_base(rules: List[UFWRule], direction: str = '') → bool

Базовый метод для добавления правил UFW.

  • Parameters:
    • rules – Список правил для добавления
    • direction – Направление трафика (“in” или “out”)
  • Returns: True если все правила были успешно добавлены, False в противном случае
  • Return type: bool

add_ufw_in_rules(rules: List[UFWRule]) → bool

Добавляет входящие (in) правила UFW.

  • Parameters: rules (List *[*UFWRule ]) – Список правил для добавления
  • Returns: True если все правила были успешно добавлены, False в противном случае
  • Return type: bool

add_ufw_out_rules(rules: List[UFWRule]) → bool

Добавляет исходящие (out) правила UFW.

  • Parameters: rules (List *[*UFWRule ]) – Список правил для добавления
  • Returns: True если все правила были успешно добавлены, False в противном случае
  • Return type: bool

delete_rules(rule_numbers: List[int]) → dict

Удаляет правила UFW по их номерам.

  • Parameters: rule_numbers (List *[*int ]) – Список номеров правил для удаления
  • Returns: Результат операции удаления
  • Return type: dict

disable_ufw() → bool

Выключает UFW.

  • Returns: True если успешно выключен, False в противном случае
  • Return type: bool

enable_ufw() → bool

Включает UFW.

  • Returns: True если успешно включен, False в противном случае
  • Return type: bool

get_ufw_rules() → UFWRulesResponse

Получает список правил UFW.

  • Returns: Объект, содержащий статус UFW и список правил
  • Return type: UFWRulesResponse

get_ufw_status() → UFWStatus

Проверяет статус UFW.

  • Returns: Объект с информацией о статусе UFW
  • Return type: UFWStatus