Поделиться через


Настройка параметров прокси-сервера для локальной среды Azure

Область применения: Azure Local 2311.2 и более поздних версий

В этой статье описывается настройка параметров прокси-сервера для развертывания локального облака Azure, если сеть использует прокси-сервер для доступа к Интернету.

Сведения о требованиях к брандмауэру для исходящих конечных точек и внутренних правил и портов для локальной среды Azure см. в разделе "Требования к брандмауэру для локальной сети Azure".

Перед началом

Прежде чем приступить к настройке параметров прокси-сервера, убедитесь, что:

  • У вас есть доступ к локальной службе Azure, для которой требуется настроить параметры прокси-сервера. У вас также есть учетные данные локального администратора для доступа к компьютерам в локальной среде Azure.
  • Вы знаете имя прокси-сервера или IP-адрес и порт (необязательно). Если у вас нет этих сведений, обратитесь к администратору сети.

Ниже приведены некоторые важные рекомендации, которые следует учитывать перед настройкой параметров прокси-сервера.

  • Узнайте, что параметры прокси-сервера разделены для различных компонентов и функций локальной среды Azure (WinInet,WinHTTPи Environment Variables). Необходимо настроить параметры прокси-сервера для всех необходимых компонентов и любых других функций, которые планируется использовать.
  • Хотя каждый компонент имеет определенные параметры команды и требования к строке обхода прокси-сервера, рекомендуется сохранить одну конфигурацию прокси-сервера в разных компонентах и функциях.
  • Прошедшие проверку подлинности прокси с использованием имени пользователя и пароля не поддерживаются из-за ограничений безопасности.
  • Если вы используете проверку SSL в прокси-сервере, необходимо обойти Azure Local и его основные компоненты (такие как Arc Resource Bridge, Служба Azure Kubernetes (AKS) и т. д.) исходящие URL-адреса.
  • Каждый из трех компонентов прокси-сервера в операционной системе имеет определенные требования к строке списка обхода. Не используйте одну и ту же строку для всех трех компонентов.
  • Файлы автоматической настройки прокси-сервера (PAC) не поддерживаются.

Настройка параметров прокси-сервера для WinInet

Настройте WinInet параметры прокси-сервера, прежде чем регистрировать компьютеры с помощью Azure Arc.

WinInetProxy Установите модуль для выполнения команд в этом разделе. Сведения о модуле и его установке см. в PowerShell Gallery | WinInetProxy 0.1.0. Дополнительные сведения о скрипте WinInetProxy PowerShell см. в статье WinInetProxy.psm1.

Если вы не можете установить WinInetProxy модуль на компьютер из-за отсутствия доступа к Интернету, рекомендуется скачать модуль на компьютер управления, а затем вручную перенести его на компьютер, где вы хотите запустить модуль. Вы также можете использовать командлет Start-BitsTransfer PowerShell для передачи одного или нескольких файлов между системой управления и компьютером.

Чтобы настроить параметры прокси-сервера для операционной системы Azure Stack HCI, выполните следующую команду PowerShell от имени администратора на каждом компьютере в системе:

  1. Подключитесь к azure Local через протокол удаленного рабочего стола (RDP) и откройте сеанс PowerShell.

  2. Чтобы настроить параметры прокси-сервера после установки WinInetProxy модуля, выполните следующий командлет:

    Set-WinInetProxy -ProxySettingsPerUser 0 -ProxyServer http://<Proxy_Server_Address:Proxy_Port> -ProxyBypass <URLs to bypass>
    

    Параметры описаны в следующей таблице.

    Параметр Описание
    Настройки прокси-сервера на пользователя Указывает, являются ли параметры прокси-сервера для каждого компьютера или пользователя:

    — 0 — параметры прокси-сервера устанавливаются отдельно для каждого компьютера.
    — 1 (по умолчанию) — параметры прокси-сервера являются для каждого пользователя.
    — Если значение не задано, ProxySettingsPerUser вместо этого используется переменная среды, если она присутствует.
    ProxyServer Указывает конечную точку прокси-сервера в формате http://[Proxy_Server_Address]:[Proxy_Port]. Например, http://proxy.contoso.com:8080.
    ProxyBypass Указывает список URL-адресов узлов, которые обходят прокси-сервер, заданный параметром -ProxyServer . Например, можно настроить -ProxyBypass “localhost” для обхода URL-адресов локальной интрасети. В вашем локальном Azure в списке должно быть включено следующее:

    — по крайней мере IP-адрес каждого компьютера.
    — По крайней мере IP-адрес системы.
    — По крайней мере IP-адреса, которые вы определили для своей инфраструктурной сети. Arc Resource Bridge, AKS и будущие службы инфраструктуры, использующие эти IP-адреса, требуют исходящего подключения.
    — Или можно обойти всю подсеть инфраструктуры.
    — NetBIOS-имя каждого компьютера.
    — NetBIOS-имя системы.
    — доменное имя или доменное имя с подстановочным знаком звездочки * для любого узла или поддомена.

Ниже приведен пример использования команды:

Set-WinInetProxy -ProxySettingsPerUser 0 -ProxyServer http://192.168.1.250:8080 -ProxyBypass "localhost;127.0.0.1;*.contoso.com;node1;node2;192.168.1.*;s-cluster"

Рекомендации по строкам списка исключений для прокси-сервера WinInet

При настройке списка обхода WinInet прокси-сервера следует учитывать следующие моменты:

  • Параметры должны быть разделены запятыми , или точкой с запятой ;.
  • Нотация CIDR для обхода подсетей не поддерживается.
  • Звездочка может использоваться в качестве подстановочных знаков для обхода подсетей или доменных имен. Например, 192.168.1.* для подсетей или *.contoso.com доменных имен.
  • Имя прокси-сервера должно быть указано с http:// и портом. Например, http://192.168.1.250:8080.
  • Рекомендуется использовать ту же строку обхода при настройке WinInet и WinHTTP.
  • Использование строк <local> не поддерживается в списке исключений для прокси-сервера.

Просмотр и удаление конфигурации прокси-сервера WinInet

  • Чтобы просмотреть или проверить текущую WinInet конфигурацию прокси-сервера, в командной строке введите:

    PS C:\> Get-WinhttpProxy -Advanced
    
    Current WinHTTP proxy settings:
    
    Proxy Server(s) :  http://192.168.1.250:8080
    Bypass List     :  localhost;127.0.0.1;*. contoso.com;node1;node2;192.168.1.*;s-cluster
    
    PS C:\>
    
  • Чтобы удалить WinInet конфигурацию прокси-сервера для локальных обновлений Azure и облачного следящего сервера, в командной строке введите:

    PS C:\> Set-WinInetProxy
    Start proxy Configuration
    Proxy is Per User
    AutoDetect is 0
    PACUrl is
    ProxyServer is
    ProxyBypass is
    Entered WriteProxySettingsHelper
    Entered WriteProxySettingsHelper
    
    Successfully set proxy
    PS C:\> Get-WinhttpProxy -Advanced
    

Настройка параметров прокси-сервера для WinHTTP

Перед тем как зарегистрировать компьютеры в Azure Arc, необходимо настроить WinHTTP параметры прокси-сервера.

Чтобы настроить прокси-сервер WinHTTP для локальных обновлений Azure и облачного свидетеля, выполните следующую команду PowerShell от имени администратора на каждом компьютере в системе:

Set-winhttpproxy -proxyserver http://<Proxy_Server_Address:Proxy_Port> -BypassList <URLs to bypass>

Параметры описаны в следующей таблице.

Параметр Описание
ProxyServer Указывает конечную точку прокси-сервера в формате http://[Proxy_Server_Address]:[Proxy_Port]. Например, http://proxy.contoso.com:8080.
Обходной список Указывает список URL-адресов узлов, которые обходят прокси-сервер, заданный параметром -ProxyServer . Например, можно задать -ProxyBypass "localhost", чтобы обходить URL-адреса локальной интрасети. В вашей локальной установке Azure список должен содержать следующее:

— по крайней мере IP-адрес каждого компьютера.
— По крайней мере IP-адрес системы.
— По крайней мере IP-адреса, назначенные для вашей инфраструктурной сети. Arc Resource Bridge, AKS и будущие службы инфраструктуры, использующие эти IP-адреса, требуют исходящего подключения.
— Или можно обойти всю подсеть инфраструктуры.
— NetBIOS-имя каждого компьютера.
— NetBIOS-имя системы.
— доменное имя или доменное имя с подстановочным знаком звездочки * для любого узла или поддомена.

Ниже приведен пример использования команды:

Set-winhttpproxy -proxyserver http://192.168.1.250:8080 -BypassList "localhost;127.0.0.1;*.contoso.com;node1;node2;192.168.1.*;s-cluster"

Вопросы учета строк в списке обхода прокси-сервера WinHTTP

При настройке WinHTTP строки списка обхода прокси-сервера следует учитывать следующие моменты:

  • Параметры должны быть разделены запятыми , или точкой с запятой ;.
  • Нотация CIDR для обхода подсетей не поддерживается.
  • Звездочка может использоваться в качестве подстановочных знаков для обхода подсетей или доменных имен. Например, 192.168.1.* для подсетей или *.contoso.com доменных имен.
  • Имя прокси-сервера и порт должны быть указаны с http://. Например, http://192.168.1.250:8080.
  • При настройке WinInet и WinHTTP рекомендуется использовать ту же строку обхода.
  • Использование строк <local> не поддерживается в списке обхода прокси-сервера.

Просмотр и удаление конфигурации прокси-сервера WinHTTP

  • Чтобы просмотреть или проверить текущую WinHTTP конфигурацию прокси-сервера, в командной строке введите:

    PS C:\> Get-WinhttpProxy -Default
    
    Current WinHTTP proxy settings:
    
    Proxy Server(s) :  http://192.168.1.250:8080
    Bypass List     :  localhost;127.0.0.1;*.contoso.com;node1;node2;192.168.1.*;s-cluster
    
    PS C:\>
    
  • Чтобы удалить WinHTTP конфигурацию прокси-сервера для локальных обновлений Azure и свидетеля в облаке, в командной строке введите:

    PS C:\> Reset-WinhttpProxy -Direct
    Current WinHTTP proxy settings:
    Direct access (no proxy server). 
    PS C:\>
    

Настройка параметров прокси-сервера для переменных среды

Перед регистрацией компьютеров в Azure Arc необходимо настроить прокси-сервер для Azure Resource Bridge и AKS.

Чтобы задать переменную среды прокси-сервера, выполните следующие команды от имени администратора на каждом компьютере в системе:

# If a proxy server is needed, execute these commands with the proxy URL and port.
[Environment]::SetEnvironmentVariable("HTTPS_PROXY","http://ProxyServerFQDN:port", "Machine")
$env:HTTPS_PROXY = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY","Machine")
[Environment]::SetEnvironmentVariable("HTTP_PROXY","http://ProxyServerFQDN:port", "Machine")
$env:HTTP_PROXY = [System.Environment]::GetEnvironmentVariable("HTTP_PROXY","Machine")
$no_proxy = "<bypassliststring>"
[Environment]::SetEnvironmentVariable("NO_PROXY",$no_proxy,"Machine")
$env:NO_PROXY = [System.Environment]::GetEnvironmentVariable("NO_PROXY","Machine")

Параметры описаны в следующей таблице.

Параметр Описание
переменная HTTPS_PROXY Указывает конечную точку прокси-сервера в формате http://[Proxy_Server_Address]:[Proxy_Port]. Например, http://proxy.contoso.com:8080.
переменная HTTP_PROXY Указывает конечную точку прокси-сервера в формате http://[Proxy_Server_Address]:[Proxy_Port]. Например, http://proxy.contoso.com:8080.
переменная NO_PROXY Строка для обхода URL-адресов, доменов и подсетей локальной интрасети. На вашем локальном экземпляре Azure в список должно входить следующее:

— по крайней мере IP-адрес каждого компьютера.
— По крайней мере IP-адрес системы.
— По крайней мере IP-адреса, которые вы определили для вашей инфраструктурной сети. Arc Resource Bridge, AKS и будущие службы инфраструктуры, использующие эти IP-адреса, требуют исходящего подключения.
— Или можно обойти всю подсеть инфраструктуры.
— NetBIOS-имя каждого компьютера.
— NetBIOS-имя системы.
— доменное имя или доменное имя с подстановочным знаком точки . для любого узла или поддомена.
- .svc для внутреннего трафика службы Kubernetes.

Ниже приведен пример использования команды:

[Environment]::SetEnvironmentVariable("HTTPS_PROXY", "http://192.168.1.250:8080", "Machine")
$env:HTTPS_PROXY = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine")
[Environment]::SetEnvironmentVariable("HTTP_PROXY", "http://192.168.1.250:8080", "Machine")
$env:HTTP_PROXY = [System.Environment]::GetEnvironmentVariable("HTTP_PROXY", "Machine")
$no_proxy = "localhost,127.0.0.1,.svc,192.168.1.0/24,.contoso.com,node1,node2,s-cluster"
[Environment]::SetEnvironmentVariable("NO_PROXY", $no_proxy, "Machine")
$env:NO_PROXY = [System.Environment]::GetEnvironmentVariable("NO_PROXY", "Machine")

Рекомендации по обходу строк списка переменных среды

При настройке строки списка обхода переменных среды прокси-сервера следует учитывать следующие моменты:

  • Параметры должны быть разделены запятыми ,.
  • Нотация CIDR для обхода подсетей должна использоваться.
  • Звездочка * как подстановочные знаки для обхода подсетей или доменных имен не поддерживаются.
  • . Точки должны использоваться в качестве подстановочных знаков для обхода доменных имен или локальных служб. Например, .contoso.com или .svc.
  • Имя прокси-сервера и порт должны быть указаны для переменных HTTP_PROXY и HTTPS_PROXY. Например, http://192.168.1.250:8080.
  • .svc обход обеспечивается для взаимодействия внутренних служб AKS в формате Linux. Это необходимо для Arc Resource Bridge и AKS.
  • AKS требует обхода следующих подсетей. 10.0.0.0/8, 172.16.0.0/12 и 192.168.0.0/16. Эти подсети будут добавлены в список обхода переменных среды автоматически, если они не определены.
  • Использование строк <local> не поддерживается в списке исключения прокси.

Подтверждение и удаление конфигурации прокси-сервера переменных среды

  • Чтобы подтвердить, что конфигурация прокси через переменные среды применена, выполните следующую команду:

    echo "https :" $env:https_proxy "http :" $env:http_proxy "bypasslist " $env:no_proxy
    
  • Чтобы удалить конфигурацию прокси-сервера, выполните следующие команды от имени администратора на каждом компьютере в системе:

    [Environment]::SetEnvironmentVariable("HTTPS_PROXY", $null, "Machine")
    $env:HTTPS_PROXY = [System.Environment]::GetEnvironmentVariable("HTTPS_PROXY", "Machine")
    [Environment]::SetEnvironmentVariable("HTTP_PROXY", $null, "Machine")
    $env:HTTP_PROXY = [System.Environment]::GetEnvironmentVariable("HTTP_PROXY", "Machine")
    

Настройка параметров прокси-сервера для агента серверов с поддержкой Arc

Чтобы настроить агент серверов с поддержкой Azure Arc для обмена данными через прокси-сервер, выполните следующую команду:

azcmagent config set proxy.url "http://ProxyServerFQDN:port"

Вы можете использовать IP-адрес или простое имя узла вместо полного доменного имени (FQDN), если это требуется вашей сетью. Если ваш прокси-сервер работает на порту 80, в конце можно не указывать ":80".

Чтобы проверить, настроен ли URL-адрес прокси-сервера в параметрах агента, выполните следующую команду:

azcmagent config get proxy.url

Чтобы остановить обмен данными агента через прокси-сервер, выполните следующую команду:

azcmagent config clear proxy.url

При перенастройки параметров прокси-сервера с azcmagent config помощью команды не требуется перезапускать службы.

Ознакомьтесь со страницей агента серверов с поддержкой Arc, чтобы получить дополнительные сведения об управлении агентом подключенного компьютера и обслуживании.

Настройка параметров прокси-сервера для служб Azure

Если вы используете или планируете использовать любую из следующих служб Azure, ознакомьтесь со следующими статьями, чтобы узнать, как настроить параметры прокси-сервера для каждой службы Azure:

Дальнейшие действия

Дополнительные сведения см. в разделе: