← Cloudflare Tunnel / tunnel / deployment-guides
GCP
В этом руководстве описано, как подключить виртуальную машину Google Cloud Platform (GCP) к Cloudflare с помощью cloudflared и опубликуйте веб-приложение через Cloudflare Tunnel.
Предварительные требования
1. Создайте экземпляр ВМ
-
В вашем Google Cloud Console ↗, создать новый проект ↗.
-
Перейдите в Compute Engine > экземпляры ВМ.
-
Выберите Создать инстанс.
-
Назовите VM-инстанс. В этом примере мы назовём его
http-test-server. -
Выберите нужную операционную систему и характеристики. Для этого примера можно использовать следующие настройки:
- Семейство машин: Общего назначения
- Серия: E2
- Тип машины: e2-micro
- Boot disk image: Debian GNU/Linux 12
- Межсетевые экраны: Разрешить HTTP- и HTTPS-трафик
-
В разделе Дополнительные параметры > Управление > Автоматизация, добавьте следующий стартовый скрипт. В этом примере разворачивается базовый веб-сервер Apache на порту
80.#!/bin/bash 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. Чтобы убедиться, что сервер работает:
- Скопируйте Внешний IP для экземпляра ВМ.
- Откройте браузер и перейдите по адресу
http://<EXTERNAL IP>. Вы должны увидеть Hello Cloudflare! тестовая страница.
-
Чтобы войти в инстанс виртуальной машины, откройте раскрывающийся список рядом с SSH и выберите Открыть в окне браузера.
2. Создайте туннель
- В Панель управления Cloudflare ↗, перейдите в Сеть > Tunnels.
- Выберите Create Tunnel и введите имя (например,
gcp-tunnel). - Выберите Create Tunnel.
- В разделе Настройка окружения, выберите Debian 64-bit.
- Подключитесь по SSH к виртуальной машине и выполните команды установки, показанные в панели управления.
- После подключения туннеля выберите Продолжение.
3. Опубликуйте приложение
- В разделе Маршруты, выберите Добавить маршрут > Published application.
- Введите имя хоста (например,
hellocloudflare.<your-domain>.com). - В разделе Сервис, введите
http://localhost:80. - Выберите Добавить маршрут.
Чтобы проверить, откройте браузер и перейдите по настроенному имени хоста.
При желании вы можете добавить Cloudflare Access чтобы контролировать, кто может получить доступ к сервису.
Настройка межсетевого экрана
Чтобы защитить свой экземпляр VM, можно настроить свои правила VPC firewall ↗ чтобы запретить весь входящий трафик и разрешить только исходящий трафик к IP-адреса Cloudflare Tunnel. Поскольку GCP запрещает входящий трафик по по умолчанию ↗, вы можете удалить все правила ingress и оставить только нужные правила egress.
После настройки правил VPC firewall убедитесь, что доступ к сервису через Cloudflare Tunnel по-прежнему возможен через его публичное имя хоста. Сервис больше не должен быть доступен извне Cloudflare Tunnel, например, если вы перейдёте по адресу http://<EXTERNAL IP> тестовая страница больше не должна загружаться.