firewall-cmd Генератор команд
Сгенерировать команды firewall-cmd для настройки зон, сервисов и портов firewalld (RHEL/CentOS/Fedora)
Начало работы с firewall-cmd
## Что такое firewall-cmd?
`firewall-cmd` — это клиент командной строки для `firewalld`, динамического менеджера брандмауэра, используемого в RHEL, CentOS, Fedora и других дистрибутивах семейства Red Hat. Он группирует правила в **зоны** (например, `public`, `home`, `dmz`) и применяет изменения либо немедленно (во время работы системы), либо постоянно с использованием `--permanent`.
## Как использовать
1. **Выберите действие**: `add-service`, `add-port`, `remove-service`, `remove-port`, `list-all`, `reload` или `permanent-query`. 2. **Укажите значения**: Для действий, связанных с сервисами/портами, заполните поле `service` (например, `http`) или `port` (например, `80/tcp`). 3. **Выберите зону** (необязательно): по умолчанию используется стандартная зона (обычно `public`). 4. **Сохраните изменения навсегда**: отметьте `--permanent`, чтобы изменения сохранялись после перезагрузки, затем выполните `reload`. 5. **Копирование и выполнение**: добавьте в начало команды `sudo`.
Общие действия и опции
### `--add-service=NAME` / `--remove-service=NAME` Открыть или закрыть названную службу, определённую в `/usr/lib/firewalld/services` (например, `http`, `https`, `ssh`). Служба знает свой протокол и порт.
### `--add-port=PORT/PROTO` / `--remove-port=PORT/PROTO` Открыть или закрыть произвольный порт, например, `8080/tcp`. Используйте этот вариант, когда определение службы отсутствует.
### `--list-all` Отобразить всё, что активно в зоне: службы, порты, источники, интерфейсы и значение по умолчанию для цели.
### `--reload` Перезагрузить постоянную конфигурацию во время работы системы — выполняйте это после изменений в `--permanent`, чтобы они сразу вступили в силу.
### `--zone=NAME` Указать конкретную зону (`public`, `home`, `internal`, `dmz`, `block`, `trusted`). При отсутствии этого параметра firewalld использует стандартную зону.
### `--permanent` Записать изменения на диск, чтобы они сохранялись после перезагрузки. Изменения, сделанные без `--permanent`, действуют только во время работы системы и теряются при перезагрузке. Рекомендуемая практика: применять правило дважды — один раз с использованием `--permanent`, а другой раз без него — или сначала использовать `--permanent`, затем `--reload`.
▶Как firewalld связан с iptables и nftables?
▶Почему мое правило --permanent не вступило в силу сразу?
▶Как я могу постоянно включить HTTP и HTTPS в общей зоне?
Если этот инструмент оказался полезным для вас, подумайте о том, чтобы подарить мне кофе.
Купите мне кофе.