Прокси для приватных локаций¶
- Latest Dynatrace
Вы можете использовать прокси, балансировщики нагрузки и обратные прокси в вашем развёртывании Dynatrace. В частности, конфигурация ActiveGate позволяет определить один или несколько прокси для исходящих соединений.
- Для настройки прокси для связи с тестируемым ресурсом отредактируйте файл
custom.propertiesи задайте свойства в разделе[synthetic]. - Для настройки прокси только для внутренней связи с кластером Dynatrace см. настройки только для связи с кластером Dynatrace.
- Для настройки одного прокси как для тестируемого ресурса, так и для кластера Dynatrace задайте свойства в разделе
[http.client].
Свойства конфигурации прокси¶
Вы можете использовать следующие свойства при настройке прокси для вашего ActiveGate с поддержкой Synthetic:
Сценарии подключения через прокси¶
Далее описаны возможные сценарии конфигурации прокси. Доступ к тестируемому ресурсу через прокси поддерживается только для браузерных мониторов и HTTP-мониторов.
Подключение к кластеру Dynatrace¶
[http.client]
proxy-server=<proxy>
proxy-port=8080
proxy-user=username
proxy-password=password
[synthetic]
proxy-off=true
Подключение к кластеру Dynatrace и тестируемому ресурсу¶
Подключение к кластеру Dynatrace и тестируемым ресурсам через разные прокси¶
- Подключение к кластеру Dynatrace
[synthetic]
proxy-server=<proxy between AG and tested resource>
proxy-port=9090
proxy-user=username_two
proxy-password=password_two
Подключение к тестируемому ресурсу и/или Amazon S3¶
ActiveGate с поддержкой Synthetic нуждается в доступе к сервису Amazon S3 для загрузки и доступа к снимкам экрана для браузерных мониторов на приватных локациях.
[synthetic]
proxy-server=<proxy between AG and tested resource>
proxy-port=8080
proxy-user=username
proxy-password=password
Дополнительную информацию см. в разделе Файлы автоматической настройки прокси (PAC).
Настройка синтетического мониторинга с прямым подключением к другим ресурсам¶
[synthetic]
proxy-server=<proxy between AG and tested resource>
proxy-port=8080
proxy-user=username
proxy-password=password
proxy-non-proxy-hosts=my.corp.org|*.gdansk.dynatrace.com
Файлы автоматической настройки прокси (PAC)¶
Вы можете использовать файлы автоматической настройки прокси (PAC) для управления сложной конфигурацией прокси для приватных браузерных мониторов.
Что такое PAC-файл?¶
Файл автоматической настройки прокси (PAC) — это JavaScript-функция, которая определяет, направляются ли запросы веб-браузера (HTTP, HTTPS и FTP) непосредственно к месту назначения или перенаправляются на прокси-сервер (подробности см. в разделе Proxy Auto-Configuration (PAC) file на developer.mozilla.org).
Предоставление PAC-файла для браузерных мониторов¶
- Перейдите в
Synthetic. - (Необязательно) Для фильтрации таблицы по браузерным мониторам выберите Browser в разделе Filter options слева.
- В списке браузерных мониторов выберите монитор, для которого вы хотите предоставить PAC-файл. Справа появится панель предварительного просмотра.
- Нажмите Edit в правом верхнем углу панели предварительного просмотра.
С этого момента вы будете перенаправлены в предыдущую версию Dynatrace, где можете указать URL PAC-файла. 5. Переключитесь в режим скрипта.
- Для сценария clickpath выберите Recorded clickpath > Script.
- Для монитора с одним URL выберите Monitor script.
- Добавьте следующее в объект
configurationJSON-файла:
pacUrl указывает на ваш размещённый PAC-файл.

Дополнительную информацию о режиме скрипта см. в разделе Режим скрипта для настройки браузерного монитора.
Совместимость конфигурации PAC-файлов¶
- Конфигурация PAC-файлов применяется только к приватным локациям Synthetic, а не к публичным.
-
Конфигурация PAC-файлов применяется только к настроенному монитору — для каждого отдельного монитора PAC-файл должен быть настроен в его скрипте; глобальной настройки для использования PAC-файла всеми мониторами не существует.
-
Когда вы задаёте прокси через PAC-файл для одного скрипта синтетического монитора, это применяется только к этому монитору.
-
Если указан PAC-файл, он переопределяет настройки прокси, заданные на уровне ActiveGate для связи с тестируемым ресурсом. В частности, он переопределяет свойства в разделе
[synthetic]. - PAC-файл должен быть доступен по HTTP/S.
Конфигурация прокси для режима FIPS¶
Когда локация Synthetic установлена в режиме FIPS, трафик браузерного монитора должен маршрутизироваться через локальный перехватывающий прокси, чтобы весь трафик, покидающий хост, шифровался с помощью криптографической библиотеки, сертифицированной по FIPS:

В этом примере настройки мы используем прокси Squid, связанный с системной библиотекой OpenSSL, но вы можете использовать другое прокси-ПО, если его криптографическая библиотека сертифицирована по FIPS.
- Установите прокси на том же хосте, что и движок Synthetic:
Red Hat
Ubuntu Pro
2. Предоставьте сертификат ЦС для переподписания перехваченных запросов:Red Hat
Ubuntu Pro
sudo mkdir /etc/squid/ssl_cert
sudo mv ~/prepared_ca_cert.pem /etc/squid/ssl_cert/squid.pem
sudo chown --recursive squid:squid /etc/squid/ssl_cert
sudo chmod 700 /etc/squid/ssl_cert
sudo chmod 600 /etc/squid/ssl_cert/squid.pem
sudo mkdir /etc/squid/ssl_cert
sudo mv ~/prepared_ca_cert.pem /etc/squid/ssl_cert/squid.pem
sudo chown --recursive proxy:proxy /etc/squid/ssl_cert
sudo chmod 700 /etc/squid/ssl_cert
sudo chmod 600 /etc/squid/ssl_cert/squid.pem
Если SELinux включён, может потребоваться настройка меток файлов для предотвращения ошибок доступа. 3. Создайте временный кэш сертификатов:
Red Hat
Ubuntu Pro
sudo /usr/lib64/squid/security_file_certgen -c -s /var/spool/squid/ssl_db -M 4MB
sudo chown --recursive squid:squid /var/spool/squid/ssl_db
sudo /usr/lib/squid/security_file_certgen -c -s /var/spool/squid/ssl_db -M 4MB
sudo chown --recursive proxy:proxy /var/spool/squid/ssl_db
/etc/squid/squid.conf):
acl SSL_ports port 443
acl Safe_ports port 80 443 1025-65535
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
http_port 3128 ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/squid/ssl_cert/squid.pem
acl step1 at_step SslBump1
ssl_bump peek step1
ssl_bump bump all
cache deny all
/var/lib/dynatrace/synthetic/config/user.properties):
Конфигурация прокси для режима FIPS с корпоративным прокси¶
Если ваша организация требует использования корпоративного прокси, необходимо настроить второй локальный экземпляр Squid из-за ограничений Squid:

Если вы используете другое прокси-ПО, это может быть неприменимо к вам.
- Настройте прокси для FIPS, как описано в предыдущем разделе.
Требуется Squid версии 5+, поэтому Red Hat версии 8 и Ubuntu версии 20 не поддерживаются.
2. На том же хосте создайте второе определение сервиса squid:
Red Hat
Ubuntu Pro
/usr/lib/systemd/system/squid2.service
[Unit]
Description=Squid with upstream proxy
After=network.target network-online.target nss-lookup.target
[Service]
Type=notify
LimitNOFILE=16384
PIDFile=/run/squid2.pid
ExecStart=/usr/sbin/squid --foreground -n squid2 -f "/etc/squid/squid2.conf"
ExecReload=/usr/bin/kill -HUP $MAINPID
KillMode=mixed
NotifyAccess=all
[Install]
WantedBy=multi-user.target
/lib/systemd/system/squid2.service
[Unit]
Description=Squid with upstream proxy
After=network.target network-online.target nss-lookup.target
[Service]
Type=notify
PIDFile=/run/squid2.pid
Group=proxy
RuntimeDirectory=squid2
RuntimeDirectoryMode=0775
ExecStart=/usr/sbin/squid --foreground -sYC -n squid2 -f "/etc/squid/squid2.conf"
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
NotifyAccess=all
[Install]
WantedBy=multi-user.target
/etc/squid/squid2.conf) и укажите хост, порт и аутентификацию вашего корпоративного прокси:
acl SSL_ports port 443
acl Safe_ports port 80 443 1025-65535
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
http_port 3129
access_log daemon:/var/log/squid/access2.log squid
cache_log /var/log/squid/cache2.log
pid_filename /run/squid2.pid
cache_peer upstream-proxy.example.com parent 443 0 default no-digest proxy-only login=proxyuser:proxypass tls tls-min-version=1.2 tls-options=NO_SSLv3
never_direct allow all
visible_hostname squid2
cache deny all
/etc/squid/squid.conf), чтобы использовать второй прокси как родительский прокси, добавив следующие строки:
cache_peer localhost parent 3129 0 default no-digest proxy-only
never_direct allow all
visible_hostname squid1
sudo systemctl daemon-reload
sudo systemctl enable squid2
sudo systemctl start squid2
sudo systemctl restart squid
Требования к ресурсам¶
- Каждый сервис Squid требует дополнительно 500 МиБ оперативной памяти, что необходимо учитывать при выборе размера экземпляра для конкретной нагрузки.
- Запросы, проходящие через несколько прокси, будут выполняться дольше, поэтому показатели производительности будут хуже, чем у экземпляра без FIPS.