Этот документ предназначен для разработчиков, которые хотят направить весь трафик, использующий теги на стороне сервера, через прокси-сервер.
Подготовка
Прежде чем настраивать маршрутизацию через прокси-сервер, убедитесь, что у вас есть:
Серверный контейнер, развернутый в Cloud Run или с помощью ручной настройки.
Развернутый прокси-сервер, поддерживающий запросы
HTTP CONNECT
.Возможность добавлять в белый список определенный трафик от прокси-сервера, например с помощью VPC, брандмауэра или списков контроля доступа для прокси-сервера.
Как настроить маршрутизацию через прокси-сервер
Cloud Run
Чтобы направить трафик на прокси-сервер для развертываний в Cloud Run, выполните следующие действия:
- Откройте Cloud Run.
- Выберите экземпляр серверного контейнера, развернутого в Cloud Run.
- Нажмите Edit & Deploy New Revision (Изменить и развернуть новую версию) . Появится экран развертывания версии.
- В разделе Containers (Контейнеры) выберите серверный контейнер. Появится новый экран с настройками контейнера.
Чтобы открыть конфигурацию сервиса, выберите вкладку Variables & Secrets (Переменные и секреты). Нажмите кнопку Add Variable (Добавить переменную) и добавьте следующую переменную среды:
- Название:
HTTP_PROXY
. - Значение: URI прокси-сервера (например,
https://proxy.example.com:3333
илиhttp://32.12.83.10
).
- Название:
Нажмите Done (Готово).
Подтвердите версии и нажмите Deploy (Развернуть).
Ручная настройка
Чтобы направить трафик на прокси-сервер для ручной настройки, выполните следующие действия:
Определите переменную среды, доступную для образа Docker:
- Название:
HTTP_PROXY
. - Значение: URI прокси-сервера (например,
https://proxy.example.com
илиhttp://32.12.83.10:1234
).
- Название:
Запустите образ Docker с новой переменной среды.
docker run -p 8080:8080 \ -e CONTAINER_CONFIG=CONTAINER_CONFIG \ -e HTTP_PROXY=PROXY_URL \ gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
Результат: развернутый серверный контейнер будет отправлять весь исходящий трафик в конечную точку прокси-сервера, указанную в переменной среды.
Как проверить настройки прокси-сервера
Чтобы убедиться, что запросы прокси-сервера настроены верно, проверьте конфигурации и Google Менеджера тегов, и прокси-сервера.
Чтобы проверить настройки запросов прокси-сервера в серверном контейнере, выполните следующие действия:
Откройте Google Менеджер тегов.
Откройте серверный контейнер.
Перейдите в режим предварительного просмотра. На вкладке Запросы:
- Проверьте, принимает ли клиент входящие запросы.
- Проверьте, отправляют ли теги и переменные исходящие HTTP-запросы.
- Чтобы узнать, был ли запрос отправлен через прокси-сервер, нажмите на HTTP-запрос и посмотрите Сведения об HTTP-запросе.
Чтобы проверить конфигурацию прокси-сервера, выполните следующие действия:
- Посмотрите сетевые журналы и журналы прокси-сервера. Там должны быть записи об успешно выполненных запросах по крайней мере к следующим конечным точкам:
- Посмотрите, были ли запросы к другим конечным точкам.
- В зависимости от того, какие функции серверного контейнера используются, вы также можете увидеть запросы к другим конечным точкам, например www.google-analytics.com, bigquery.googleapis.com или сторонним. Добавьте в белый список все нужные вам конечные точки.
Как добавить трафик от прокси-сервера в белый список (необязательно)
Если вы блокируете исходящий сетевой трафик или трафик от прокси-сервера, то, чтобы обеспечить правильную работу экземпляра сервера тегов, необходимо добавить домены Google Менеджера тегов в белый список. Способ реализации будет зависеть от сетевой среды и ПО прокси-сервера. Прежде чем добавлять конечные точки в белый список, тщательно изучите топологию своей сети.
Для получения, предварительного просмотра и отладки контейнера Google Менеджера тегов используются следующие домены:
https://www.googletagmanager.com
https://tagmanager.google.com
${Preview server URL}
Если вы разместили прокси-сервер и сервер предварительного просмотра в разных сетях или настроили строгие правила сети, добавьте трафик от прокси-сервера к серверу предварительного просмотра в белый список. URL сервера предварительного просмотра определяется при развертывании серверного контейнера.
Как настроить для прокси-сервера базовую аутентификацию (необязательно)
Если для вашей организации требуется аутентификация, вы можете настроить для всех типов серверов базовую аутентификацию.
Для этого включите в URL прокси-сервера учетные данные (имя пользователя и пароль) в следующем формате:
HTTP_PROXY=http(s)://USER_NAME:PASSWORD@PROXY_URL
При каждом запросе к прокси-серверу учетные данные будут задаваться в заголовке Proxy-Authorization с использованием кодировки Base64.
Если вы используете Cloud Run, настройте хранение учетных данных для конечной точки прокси-сервера в Secret Manager. Secret Manager предоставляет сервису Cloud Run доступ к секрету во время запуска и возвращает значение. Узнайте, как настроить секреты в Cloud Run.
Как закрыть доступ к прокси-серверу отдельным хостам (необязательно)
С помощью переменной среды NO_PROXY
можно определить список имен хостов (разделенных запятыми), которые нельзя будет передавать через прокси-сервер.
Пример:
NO_PROXY=example.com,169.254.169.254,diagnostics.example2.com:3131
Контейнер sGTM не использует прокси-сервер для следующих запросов:
http://example.com
,https://sub.example.com
,https://other.example.com:123
http://169.254.169.254
,https://169.254.169.254
,http://169.254.169.254:123
http://diagonstics.example2.com:3131
,https://diagonstics.example2.com:3131