INTEGRITY Документация

Фильтрация сети

Secure Web Gateway позволяет применять политики на сетевом уровне, чтобы контролировать, к каким веб-сайтам и не-HTTP приложениям может получить доступ пользователь. Это полезно, когда нужно контролировать трафик, отличный от обычного просмотра веб-страниц: например, блокировать подключения к удалённому рабочему столу или ограничивать использование средств передачи файлов в рамках всей организации.

Политики Network проверяют отдельные пакеты TCP и UDP (низкоуровневые единицы данных, передающие весь интернет-трафик), что означает, что вы можете фильтровать трафик, который DNS и HTTP политики не могут получить доступ. Политики DNS видят только запросы к доменам, а политики HTTP видят только веб-запросы. При этом политики Network работают глубже и способны перехватывать такие протоколы, как SSH (удалённый доступ к терминалу), RDP (удалённый рабочий стол), а также пользовательские приложения, работающие на нестандартных портах.

1. Подключитесь к Gateway

Подключите устройства

Чтобы отфильтровать сетевой трафик с устройства, например ноутбука или телефона:

  1. Установите Cloudflare One Client на вашем устройстве.
  2. В настройках Cloudflare One Client войдите через поставщика идентификации вашей организации Экземпляр Cloudflare One.
  3. (Необязательно) Если вы хотите отобразить пользовательская страница блокировки когда пользователи заблокированы, установить корневой сертификат Cloudflare на вашем устройстве. Без сертификата заблокированные пользователи будут видеть обычную ошибку подключения браузера вместо информативной страницы.
  4. Включите Gateway proxy для TCP. Прокси Gateway направляет трафик вашего устройства через Cloudflare, чтобы политики сети могли его проверять: без него ваши политики не будут действовать. При необходимости включите прокси UDP, чтобы также проверять трафик QUIC (более новый протокол, используемый подключениями HTTP/3) на порте 443.

Подключите частные сети

Чтобы отфильтровать трафик из частных сетей (внутренних корпоративных сетей, не доступных из публичного интернета), см. Руководство по Cloudflare Tunnel.

2. Проверьте подключение устройства

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

Чтобы проверить, что ваше устройство подключено к Cloudflare One:

  1. В Панель управления Cloudflare, перейдите в Zero Trust > Политики трафика > Настройки трафика.
  2. В разделе Ведение журнала активности трафика, включите ведение журнала активности для всех логов Network. Это указывает Cloudflare записывать трафик на сетевом уровне, чтобы вы могли убедиться, что ваше устройство отображается в логах.
  3. На устройстве с Cloudflare One Client откройте браузер и перейдите на любой сайт. Это создаст трафик, который должен появиться в журналах.
  4. Определите Исходный IP для вашего устройства (публичный адрес, который Cloudflare видит для вашего подключения):
  1. Откройте Cloudflare One Client.
  2. Перейдите в Профиль.
  3. Обратите внимание на Client Interface IP. Это тот же адрес, который будет отображаться как Source IP в ваших сетевых журналах.
  1. Откройте Cloudflare One Client.
  2. Перейдите в Настройки (значок шестеренки) Настройки > Общее.
  3. Обратите внимание на Публичный IP. Это тот же адрес, который будет отображаться как Source IP в ваших сетевых журналах.
  1. В Панель управления Cloudflare, перейдите в Zero Trust > Insights > Журналы > Журналы сети. Прежде чем создавать сетевые политики, убедитесь, что вы видите сетевые журналы с исходного IP-адреса, назначенного вашему устройству.

Если через несколько минут журналы не появляются, проверьте два момента. Во-первых, убедитесь, что Gateway proxy включён. Во-вторых, убедитесь, что устройство зарегистрировано в вашей организации Zero Trust, проверив статус подключения Cloudflare One Client.

3. Создайте свою первую сетевую политику

Сетевая политика состоит из двух частей: matcher, который выбирает, к какому трафику применять действие (например, все пакеты, предназначенные для порта 22, порта по умолчанию для SSH), и action, который определяет, что делать с этим трафиком (например, заблокировать соединение).

Чтобы создать новую сетевую политику:

  1. В Панель управления Cloudflare, перейдите в Zero Trust > Политики трафика > Политики Firewall.

  2. В Сеть вкладке выберите Добавьте сетевую политику.

  3. Назовите политику.

  4. В разделе Трафик, создайте логическое выражение, определяющее трафик, который нужно разрешить или заблокировать.

  5. Выберите Действие, которое нужно предпринять, когда трафик соответствует логическому выражению. Например, можно использовать список серийные номера устройств чтобы пользователи могли получить доступ к приложению только при подключении с помощью Cloudflare One Client с корпоративного устройства:

    Селектор Оператор Значение Логика Действие
    SNI Domain является internalapp.com И Block
    Пройденные проверки состояния устройства not in Серийные номера устройств
  6. Выберите Создать политику.

  1. Создание API-токена со следующими разрешениями:

    Type Элемент Разрешение
    Аккаунт Zero Trust Изменить
  2. (Необязательно) Настройте переменные окружения API, чтобы включить в них ID аккаунта и токен API.

  3. Отправьте POST запрос к Создайте правило Zero Trust Gateway конечная точка. Например, можно использовать список серийные номера устройств чтобы пользователи могли получить доступ к приложению только при подключении с помощью Cloudflare One Client с корпоративного устройства:

    Создайте правило Zero Trust Gateway
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/gateway/rules" \
    	--request POST \
    	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
    	--json '{
    		"name": "Enforce device posture",
    		"description": "Ensure only devices in Zero Trust organization can connect to application",
    		"precedence": 0,
    		"enabled": true,
    		"action": "block",
    		"filters": [
    				"l4"
    		],
    		"traffic": "any(net.sni.domains[*] == \"internalapp.com\")",
    		"identity": "",
    		"device_posture": "not(any(device_posture.checks.passed[*] in {\"LIST_UUID\"}))"
    	}'
{
	 "success": true,
	 "errors": [],
	 "messages": []
}

API вернёт сводку по политике и результат вашего запроса.

Подробнее см. в сетевые политики.

4. Добавьте необязательные политики

См. наш список распространённые сетевые политики для политик, которые вы, возможно, захотите создать. Среди распространенных дополнений: блокировка трафика к определенным диапазонам IP-адресов, ограничение доступа к нестандартным портам (портам, отличным от общеизвестных, таких как 80 для HTTP и 443 для HTTPS), а также использование определения протокола для выявления таких приложений, как BitTorrent, по характеру трафика, а не только по номеру порта.