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

GCP

В этом руководстве описано, как подключить виртуальную машину Google Cloud Platform (GCP) к Cloudflare с помощью cloudflared и опубликуйте веб-приложение через Cloudflare Tunnel.

Предварительные требования

1. Создайте экземпляр ВМ

  1. В вашем Google Cloud Console ↗, создать новый проект ↗.

  2. Перейдите в Compute Engine > экземпляры ВМ.

  3. Выберите Создать инстанс.

  4. Назовите VM-инстанс. В этом примере мы назовём его http-test-server.

  5. Выберите нужную операционную систему и характеристики. Для этого примера можно использовать следующие настройки:

    • Семейство машин: Общего назначения
    • Серия: E2
    • Тип машины: e2-micro
    • Boot disk image: Debian GNU/Linux 12
    • Межсетевые экраны: Разрешить HTTP- и HTTPS-трафик
  6. В разделе Дополнительные параметры > Управление > Автоматизация, добавьте следующий стартовый скрипт. В этом примере разворачивается базовый веб-сервер 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
  7. Выберите Создание.

  8. Операционная система автоматически запускает сервер Apache HTTP. Чтобы убедиться, что сервер работает:

    1. Скопируйте Внешний IP для экземпляра ВМ.
    2. Откройте браузер и перейдите по адресу http://<EXTERNAL IP>. Вы должны увидеть Hello Cloudflare! тестовая страница.
  9. Чтобы войти в инстанс виртуальной машины, откройте раскрывающийся список рядом с SSH и выберите Открыть в окне браузера.

2. Создайте туннель

  1. В Панель управления Cloudflare ↗, перейдите в Сеть > Tunnels.
  2. Выберите Create Tunnel и введите имя (например, gcp-tunnel).
  3. Выберите Create Tunnel.
  4. В разделе Настройка окружения, выберите Debian 64-bit.
  5. Подключитесь по SSH к виртуальной машине и выполните команды установки, показанные в панели управления.
  6. После подключения туннеля выберите Продолжение.

3. Опубликуйте приложение

  1. В разделе Маршруты, выберите Добавить маршрут > Published application.
  2. Введите имя хоста (например, hellocloudflare.<your-domain>.com).
  3. В разделе Сервис, введите http://localhost:80.
  4. Выберите Добавить маршрут.

Чтобы проверить, откройте браузер и перейдите по настроенному имени хоста.

При желании вы можете добавить Cloudflare Access чтобы контролировать, кто может получить доступ к сервису.

Настройка межсетевого экрана

Чтобы защитить свой экземпляр VM, можно настроить свои правила VPC firewall ↗ чтобы запретить весь входящий трафик и разрешить только исходящий трафик к IP-адреса Cloudflare Tunnel. Поскольку GCP запрещает входящий трафик по по умолчанию ↗, вы можете удалить все правила ingress и оставить только нужные правила egress.

После настройки правил VPC firewall убедитесь, что доступ к сервису через Cloudflare Tunnel по-прежнему возможен через его публичное имя хоста. Сервис больше не должен быть доступен извне Cloudflare Tunnel, например, если вы перейдёте по адресу http://<EXTERNAL IP> тестовая страница больше не должна загружаться.