Firewalld Service

Сервис для управления firewalld через D-Bus.

Назначение:

  • Обёртка над интерфейсами org.fedoraproject.FirewallD1 для выполнения типовых операций по зонам: просмотр/изменение дефолтной зоны, добавление и удаление сервисов, портов, источников, перезагрузка конфигурации.

Примечания:

  • Используется pydbus.SystemBus для доступа к системной шине.

  • Методы генерируют дружелюбные исключения при ошибках, содержащие контекст операции.

class services.firewalld_service.FirewalldService[source]

Bases: object

add_port(zone: str, port: int, protocol: str, timeout: int | None = 0) → None[source]

Add a port to a zone.

add_service(zone: str, service: str, timeout: int | None = 0) → None[source]

Add a service to a zone.

add_source(zone: str, source: str) → None[source]

Add a source to a zone.

get_default_zone() → str[source]

Get the default zone.

get_ports(zone: str) → List[str][source]

Get list of ports in a zone.

get_services(zone: str) → List[str][source]

Get list of services in a zone.

get_sources(zone: str) → List[str][source]

Get list of sources in a zone.

get_zone_settings(zone: str) → Dict[source]

Get all settings for a zone.

get_zones() → List[str][source]

Get list of all zones.

reload() → None[source]

Reload firewall rules.

remove_port(zone: str, port: int, protocol: str) → None[source]

Remove a port from a zone.

remove_service(zone: str, service: str) → None[source]

Remove a service from a zone.

remove_source(zone: str, source: str) → None[source]

Remove a source from a zone.

set_default_zone(zone: str) → None[source]

Set the default zone.