3.4 KiB
3.4 KiB
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