← Cloudflare One / cloudflare-one / networks / connectors / cloudflare-tunnel / deployment-guides
Azure
В этом руководстве рассказано, как подключить виртуальную машину Azure к Cloudflare с помощью нашего облегчённого коннектора, cloudflared.
Мы развернем:
- Виртуальная машина Azure, на которой работает простой HTTP-сервер.
- Cloudflare Tunnel, позволяющий пользователям подключаться к сервису либо через публичное имя хоста, либо через приватный IP-адрес.
Предварительные требования
Чтобы выполнить следующую процедуру, вам нужно будет:
- Добавьте веб-сайт в Cloudflare
- Разверните Cloudflare One Client на устройстве конечного пользователя
1. Создайте инстанс VM в Azure
-
В портале Azure перейдите в Виртуальные машины > Создание > Виртуальная машина Azure.
-
Выберите Группа ресурсов или создать новый.
-
Введите имя виртуальной машины и выберите регион. Например, Изображение, выберите Ubuntu Server 24.04 LTS. Для Размер, выберите подходящий размер (например, Standard_B1s).
-
В разделе Учётная запись администратора, выберите Открытый ключ SSH и введите свою пару ключей.
-
В разделе Правила для входящих портов, разрешите SSH (
22). Для целей тестирования также разрешите HTTP (80) и HTTPS (443).
-
Выберите Review + create, затем Создание.
-
После запуска ВМ скопируйте её Публичный IP-адрес со страницы обзора виртуальной машины. Также запишите Частный IP-адрес : Azure по умолчанию использует
10.0.0.0/8подсеть. -
Подключитесь по SSH к инстансу:
ssh -i "your-key.pem" azureuser@<PUBLIC_IP> -
Запустите
sudo suчтобы получить полные права администратора на ВМ. -
Для тестирования вы можете развернуть базовый веб-сервер Apache на порту
80:apt update apt -y install apache2 cat <<EOF > /var/www/html/index.html <html><body><h1>Hello Cloudflare!</h1> <p>This page was created for a Cloudflare demo.</p> </body></html> EOF -
Чтобы проверить, что сервер Apache запущен, откройте браузер и перейдите по адресу
http://<PUBLIC_IP>(обязательно подключайтесь черезhttp, а неhttps). Вы должны увидеть Hello Cloudflare! тестовая страница.
2. Создайте Cloudflare Tunnel
Создайте Cloudflare Tunnel и запустите его на виртуальной машине Azure.
-
Войдите в панель управления Cloudflare и перейдите в Сеть > Tunnels.
Перейдите в Tunnels ↗ -
Выберите Создать туннель.
-
Введите имя туннеля (например,
azure-tunnel). -
Выберите Create Tunnel.
-
Выберите операционную систему (нажмите Debian для вашей ВМ Azure). Скопируйте команду установки и выполните её на вашей ВМ Azure.
-
Дождитесь подключения туннеля. После установления соединения выберите Продолжение.
3. Подключитесь, используя общедоступное имя хоста
Опубликованные приложения позволяют любому пользователю интернета подключаться к HTTP-ресурсам, размещённым в вашем виртуальном частном облаке (VPC). Чтобы добавить опубликованное приложение для вашего Cloudflare Tunnel:
- На Маршруты вкладке выберите Добавить маршрут, затем выберите Опубликованное приложение.
- Введите имя хоста приложения (например,
hellocloudflare.<your-domain>.com). - В разделе Сервис, введите
http://localhost:80. - Выберите Добавить маршрут.
- Чтобы протестировать, откройте браузер и перейдите в
http://hellocloudflare.<your-domain>.com. Вы должны увидеть Hello Cloudflare! тестовая страница.
При желании вы можете создание приложения Access чтобы управлять тем, кто может получить доступ к сервису.
4. Подключитесь с помощью частного IP-адреса
Маршруты приватной сети позволяют пользователям подключаться к вашей Azure Virtual Network (VNet) через Cloudflare One Client. Чтобы добавить маршрут приватной сети для вашего Cloudflare Tunnel:
-
В панели управления Cloudflare перейдите в Сеть > Маршруты.
Перейдите в Маршруты ↗ -
Выберите Создать маршрут > Tunnel CIDR. Выберите только что созданный туннель, введите Частный IP-адрес вашей ВМ Azure (например,
10.0.0.4), и выберите Создать маршрут. При необходимости вы можете расширить диапазон IP-адресов позже. -
В вашем Конфигурация Split Tunnel, убедитесь, что частный IP-адрес маршрутизируется через Cloudflare One Client. Например, если вы используете Split Tunnels в Exclude режиме удалите
10.0.0.0/8. Рекомендуем повторно добавить IP-адреса, которые явно не используются вашей виртуальной машиной Azure.Чтобы определить, какие IP-адреса нужно добавить обратно, вычтите IP-адреса ваших виртуальных машин Azure из
10.0.0.0/8:Добавьте результаты обратно в список режима Split Tunnel Exclude.
-
Чтобы протестировать на устройстве пользователя:
- Войдите в Cloudflare One Client.
- Откройте окно терминала и подключитесь к сервису, используя его частный IP-адрес:
curl 10.0.0.4<html><body><h1>Hello Cloudflare!</h1> <p>This page was created for a Cloudflare demo.</p> </body></html>
При желании вы можете создать сетевые политики Gateway чтобы управлять тем, кто может получить доступ к ВМ Azure через её частный IP-адрес.
Настройка межсетевого экрана
Чтобы защитить свою Azure VM, можно настроить Network Security Group (NSG) ↗ чтобы запретить весь входящий трафик и разрешить только исходящий трафик к IP-адреса Cloudflare Tunnel. Все правила NSG обрабатываются по приоритету. Трафик, не соответствующий ни одному разрешающему правилу, блокируется правилами запрета по умолчанию. Поэтому вы можете удалить все пользовательские входящие правила и оставить только нужные исходящие.
После настройки правил NSG убедитесь, что доступ к сервису через Cloudflare Tunnel по-прежнему возможен через его публичное имя хоста или частный IP-адрес. Сервис больше не должен быть доступен извне Cloudflare Tunnel, например, прямой доступ к публичному IP-адресу ВМ больше не должен работать.