---
title: 'Облачный файрвол'
sidebar_label: 'Облачный файрвол'
sidebar_position: 1
toc_max_heading_level: 2
description: 'Как работает облачный файрвол, виды трафика, которые он фильтрует, ограничения и стоимость'
---

import Formbricks from '@theme/MDXComponents/Formbricks'

# Облачный файрвол

Облачный файрвол — бесплатный файрвол, который позволяет настроить сетевую безопасность для [приватных подсетей](/cloud-servers/cloud-networks/private-networks-and-subnets.mdx) и [публичных плавающих IP-адресов](/cloud-servers/cloud-networks/public-floating-ip-addresses.mdx) в облачной платформе.

Облачный файрвол работает в режиме stateful — с учетом состояния сессий. Если трафик прошел через порт и сессия установилась, ответный трафик в рамках этой сессии пройдет даже без правила.

Работать с облачным файрволом можно в [панели управления](https://my.selectel.ru/vpc/default/fwaas/), с помощью [OpenStack CLI](/cloud-servers/tools/openstack-cli/) или [Terraform](/terraform/providers/).

Облачный файрвол фильтрует только трафик, проходящий через порт облачного роутера, подробнее в подразделе [Фильтруемый трафик](#traffic). Если трафик приходит напрямую на порт облачного сервера, его нельзя фильтровать с помощью файрвола, для фильтрации такого трафика используйте [группы безопасности](/cloud-servers/security-groups/) или утилиты операционной системы, например `iptables`. Подробнее в статье блога [Настройка iptables в Linux](https://selectel.ru/blog/setup-iptables-linux/).

В облачном файрволе поддерживаются [типы и роли пользователей](/access-control/access-management.mdx).

Записи об операциях с облачным файрволом сохраняются в [аудит-логах](/audit-logs/about-audit-logs.mdx).

## Фильтруемый трафик \{#traffic}

С помощью файрвола можно настроить фильтрацию IPv4-трафика для приватной подсети, открыть и закрыть определенные порты или их диапазон, разрешить и запретить доступ с определенных IP-адресов или из подсетей.

### Какой трафик фильтруется \{#what-traffic-is-filtered}

Облачный файрвол фильтрует весь IPv4-трафик, проходящий через порт [облачного роутера](/cloud-servers/cloud-networks/cloud-routers.mdx), на который он назначен:

* входящий трафик в приватную подсеть из другой приватной подсети. Приватные подсети должны принадлежать разным приватным сетям:

:::note

Например, приватная подсеть `192.168.0.0/24` находится в приватной сети `network_1`, а приватная подсеть `10.0.0.0/24` находятся в приватной сети `network_2`. Трафик между устройствами в этих подсетях будет фильтроваться.

:::

Подробнее о приватных сетях и подсетях в инструкции [Сети облачной платформы](/cloud-servers/cloud-networks/about-networks.mdx);

* входящий трафик в приватную подсеть из интернета, идущий на публичные плавающие IP-адреса устройств (облачных серверов и балансировщиков), которые ассоциированы с их приватным адресом через NAT 1:1;
* исходящий трафик — трафик из приватной подсети в интернет или другую приватную сеть.

### Какой трафик не фильтруется \{#what-traffic-is-not-filtered}

* трафик между устройствами внутри приватной подсети;

* трафик между устройствами из разных приватных подсетей внутри одной приватной сети:

:::note

Например, приватная подсеть `192.168.0.0/24` и приватная подсеть `10.0.0.0/24` находятся в одной приватной сети `network_1`. Трафик между устройствами в этих подсетях фильтроваться не будет.

:::

* трафик для публичных подсетей и прямых публичных IP-адресов. Такие адреса назначаются прямо на устройства, и трафик не проходит через порт облачного роутера.

## Принцип работы \{#principle-of-operation}

Облачный файрвол не является отдельным устройством. Он назначается на внутренний порт облачного роутера в приватной подсети, которая подключена к роутеру. Файрвол можно переиспользовать и назначить на несколько портов роутеров одновременно. На один порт роутера нельзя назначить более одного файрвола.

Файрвол по добавленным [правилам фильтрации](#rules) анализирует и фильтрует [трафик](#traffic): входящий, который проходит в приватную подсеть через облачный роутер, и трафик, исходящий из этой подсети. Правила файрвола действуют не на облачный сервер или балансировщик нагрузки, а на IP-адрес. Если вы подключили к устройству другой публичный плавающий IP-адрес или пересоздали его с другим публичным плавающим IP, [измените IP-адрес в правиле](/cloud-servers/firewalls/manage-rules.mdx#edit-rule), чтобы трафик продолжил фильтроваться.

В облачном файрволе используется модель OpenStack:

* Firewall Groups (файрволы) — содержат политики. Один файрвол может содержать только одну политику ingress для входящего трафика и одну egress для исходящего трафика;
* Firewall Policies (политики файрвола) — списки правил файрвола в определенном порядке;
* Firewall Rules (правила файрвола) — набор параметров, по которым фильтруется трафик: протоколы, IP-адреса и порты. Правила выполняются в указанном порядке. Подробнее о правилах и параметрах в подразделе [Правила](#rules).

Подробнее о модели OpenStack в разделе [FWaaS](https://docs.openstack.org/neutron/latest/admin/fwaas.html) документации OpenStack.

### Пример сети с облачным файрволом, который фильтрует трафик в приватную подсеть из интернета и трафик из подсети в интернет \{#cloud-firewall-that-filters-traffic-to-private-subnet}

![](https://423.selcdn.ru/kb/cloudfwaas-about-firewalls-example-external-LANG-THEME.png)

### Пример сети с двумя облачными файрволами на одном облачном роутере, которые фильтруют трафик между двумя приватными подсетями \{#two-cloud-firewalls-on-one-cloud-router}

При фильтрации трафика между приватными подсетями, подключенными к одному роутеру, для исходящего трафика применяются правила файрвола, который назначен на порт роутера в этой подсети. Если для файрвола в другой подсети настроены правила для входящего трафика из первой подсети, они игнорируются.

![](https://423.selcdn.ru/kb/cloudfwaas-about-firewalls-example-internal-LANG-THEME.png)

:::note

Например, для файрвола 1 создано разрешающее правило для исходящего трафика из подсети `192.168.0.0/24` в любые подсети. Даже если на файрволе 2 в подсети `10.10.0.0/24` есть запрещающее правило для входящего трафика из подсети `192.168.0.0/24`, оно будет проигнорировано. Чтобы доступ в подсеть `10.10.0.0/24` из подсети `192.168.0.0/24` был запрещен, нужно создать на файрволе 1 запрещающее правило для исходящего трафика в эту подсеть.

:::

## Правила \{#rules}

Для облачного файрвола настраиваются две политики (два списка правил в определенном порядке) — для входящего и для исходящего трафика.

Правила выполняются по порядку в списке — сверху вниз. Если первое правило разрешает прохождение трафика, то трафик будет разрешен, даже если в правилах ниже настроен запрет.

Файрвол анализирует трафик на основании параметров в правилах:

* направление трафика (политика) — входящий или исходящий;
* разрешение или запрет трафика;
* протокол — поддерживаются протоколы TCP, UDP, ICMP;
* source — IP-адрес или подсеть источника трафика;
* source port — порт или диапазон портов источника трафика;
* destination — IP-адрес или подсеть назначения трафика;
* destination port — порт или диапазон портов назначения трафика.

У облачного файрвола есть базовое свойство: весь входящий и исходящий трафик, который не разрешен, — запрещен. Например, вы создали файрвол без правил и назначили на порт облачного роутера. Пока вы не добавите разрешающие правила, будут запрещены: трафик, входящий в приватную подсеть, которая подключена к роутеру; трафик, исходящий из этой подсети.

Политики и правила файрвола можно переиспользовать только при работе через OpenStack CLI и Terraform — назначать их на несколько файрволов (Firewall Groups) одновременно. В панели управления можно использовать заранее настроенные шаблоны с правилами для фильтрации трафика, например открыть 22 порт (SSH/TCP), 80 порт (HTTP/TCP), 443 порт (HTTPS/TCP), 1194 порт (OpenVPN/UDP), 3389 порт (RDP/TCP), 20-21 порт (FTP/TCP); открыть стандартные порты для IPsec или WireGuard и другие правила.

## Ограничения \{#limitations}

На один порт роутера нельзя назначить более одного файрвола.

В одном [проекте](/access-control/projects/about-projects.mdx) можно создать не более 10 файрволов. В одном файрволе — две политики, по одной для каждого направления трафика. В одной политике — не более 100 правил.

Если вы [настроили NAT (проброс портов)](/cloud-servers/cloud-networks/public-floating-ip-addresses.mdx#configure-nat), то сначала будет выполняться проброс, а затем действовать правила файрвола.

В Selectel по умолчанию [заблокированы некоторые TCP/UDP-порты](/infrastructure/blocked-ports.mdx).

## Стоимость \{#price}

Облачный файрвол предоставляется бесплатно.

<Formbricks />
