- Настройка Web Proxy Automatic Discovery WPAD: всё, что нужно знать
- Настройка Web Proxy Automatic Discovery (WPAD): всё, что нужно знать
- Что такое WPAD?
- Как создать свой WPAD-сервер?
- Одноранговая сеть
- WPAD или автоматическая настройка параметров прокси
- PAC-файл
- Сети Active Directory
- Записки IT специалиста
- Видео:
- Что такое прокси-сервер за 7 минут
Настройка Web Proxy Automatic Discovery WPAD: всё, что нужно знать
Когда вы находитесь в сети, ваш компьютер или устройство должен знать, как обратиться к прокси-серверу для получения доступа к Интернету. Обычно это происходит напрямую, но когда вы находитесь в сети, под управлением прокси-сервера, особенно в больших организациях, настройка Web Proxy Automatic Discovery (WPAD) может быть необходима.
WPAD — это метод, позволяющий вашему компьютеру или устройству автоматически обнаруживать прокси-сервер, с которым оно должно общаться. Это особенно полезно, когда вы работаете в сети, где настройки прокси-сервера могут меняться динамически.
Компания Holdingcom хочет использовать преимущества этого механизма на своей корпоративной сети. У них есть веб-сервер, на котором расположены несколько PAC-файлов (Proxy Auto-Configuration). В настройках DHCP-сервера они установили дополнительную опцию «Web Proxy Autodiscovery Protocol (Option 252)», чтобы узлы в сети могли обращаться к WPAD.
Ниже мы рассмотрим, как установить и настроить WPAD для ваших сетей. В небольших сетях вы можете создать PAC-файл и расположить его на вашем локальном веб-сервере или добавить его на общий сервер в вашем домене. Затем вы можете добавить ссылку на PAC-файл в настройках вашего веб-прокси-сервера или вручную настроить ваши устройства.
Настройка Web Proxy Automatic Discovery (WPAD): всё, что нужно знать
В этой статье мы рассмотрим, как создать и настроить свой собственный WPAD-сервер с использованием сервера lighttpd. Вам потребуются навыки работы в командной консоли и некоторые базовые знания в области сетевых технологий.
Что такое WPAD?
WPAD — это протокол, который позволяет клиентским устройствам автоматически находить настройки прокси-серверов в локальной сети. Когда клиентская программа (например, браузер) запрашивает ресурс в сети, она автоматически перенаправляет запрос к WPAD-серверу, чтобы получить информацию о настройках прокси.
WPAD-сервер должен быть доступен по определенному IP-адресу или домену, чтобы клиентская программа могла найти его. Обычно эту задачу выполняет локальный DNS-сервер, который возвращает IP-адрес WPAD-сервера в ответ на запросы клиентских устройств.
Как создать свой WPAD-сервер?
Для создания своего WPAD-сервера мы будем использовать сервер lighttpd. Этот сервер позволяет нам хранить файлы и предоставлять их клиентам через HTTP-протокол.
Прежде всего, установите и настройте сервер lighttpd на вашем хосте или виртуальной машине.
Далее создайте файл с расширением «.pac» (например, wpad.pac) с помощью любого текстового редактора.
В этом файле вы можете определить несколько правил для настройки прокси-серверов в разных сетях или для разных хостов. Каждый блок настроек должен начинаться со строки «if (isInNet(myIpAddress(), ‘IP-адрес’, ‘Маска подсети’))». Замените ‘IP-адрес’ и ‘Маска подсети’ на соответствующие значения для вашей сети или хоста.
Для каждого блока настроек прокси возможно 2 варианта:
- В случае автоматического обнаружения прокси-сервера добавьте строку «return ‘PROXY ip-адрес:порт’;», где ‘ip-адрес’ и ‘порт’ — это адрес и порт вашего прокси-сервера.
- В случае отключения прокси добавьте строку «return ‘DIRECT’;».
Пример ниже показывает, как может выглядеть файл wpad.pac:
wpad.pac |
---|
|
Сохраните файл wpad.pac и переместите его в каталог /var/www (или аналогичный) на вашем сервере lighttpd.
Теперь добавим параметры конфигурации для сервера lighttpd. Откройте файл конфигурации lighttpd (обычно он находится в каталоге /etc/lighttpd/) и добавьте следующие строки:
$HTTP["url"] =~ "^/wpad.pac$" {
server.document-root = "/var/www"
}
Сохраните файл конфигурации lighttpd и перезапустите сервер.
Теперь ваш WPAD-сервер доступен по URL-адресу http://ваш_хост/wpad.pac. Вы можете проверить его, перейдя по этому адресу в браузере.
Теперь, чтобы указать клиентским устройствам использовать ваш WPAD-сервер, вы должны настроить DNS или DHCP на вашем домене или роутере, чтобы они возвращали IP-адрес вашего WPAD-сервера в ответ на запросы клиентов.
Таким образом, когда клиентская программа ищет прокси-сервер, она будет обращаться к серверу WPAD по адресу, который возвращает DNS или DHCP, чтобы получить настройки прокси.
Взгляните на следующий пример:
Пример настроек DNS (Linux) | Пример настроек DHCP (Windows) |
---|---|
| |
В обоих случаях мы указываем IP-адрес нашего WPAD-сервера (192.168.0.10) в настройках DNS или DHCP. Таким образом, клиентские устройства будут обращаться к этому IP-адресу для получения настроек прокси.
Теперь, когда клиентская программа запрашивает ресурс в сети, она автоматически найдет WPAD-сервер по адресу, который возвращает DNS или DHCP, и получит настройки прокси из файла wpad.pac.
Поздравляю! Вы успешно настроили Web Proxy Automatic Discovery (WPAD) на вашем собственном сервере!
Одноранговая сеть
Для настройки Web Proxy Automatic Discovery (WPAD) в одноранговой сети необходимо выполнить несколько шагов, для чего потребуется специалист области настройки сетей.
WPAD — это механизм, который позволяет автоматически настраивать прокси-сервер в браузере пользователя, исходя из его нахождения в сети. При правильной настройке, браузер автоматически будет выполнять запросы к прокси-серверу вместо прямых запросов в интернет.
Для начала, выберем расположение WPAD-файла на локальной сети. Обычно, файл размещается на сервере в домене (например, в директории «wpad» в корне веб-сервера), но можно использовать и другие варианты, например, разместить файл на роутере или на сервере управления DNS-зоной.
Следующим шагом будет настройка сервера, который будет использоваться для раздачи WPAD-файла. В зависимости от домена, в котором вы работаете, это может быть Active Directory (AD), DNS-сервер, Forefront, или другие серверы.
Если вы используете AD в качестве домена, то вам потребуется доступ к DNS-серверу. Если вы не знаете IP-адрес DNS-сервера, вы можете узнать его с помощью команды «ipconfig /all» в командной строке на вашем компьютере.
Для установки WPAD на DNS-сервере локальной зоны DNS, воспользуемся инструкцией. На сервере откроем консоль DNS-сервера и перейдем к разделу «Записи обратной зоны». Внутри этого раздела создадим новую запись типа «Domain Name» (DN) и выберем пустой IP-адрес для записи.
В качестве имени записи выберем «wpad», а в поле «Адрес» укажем IP-адрес прокси-сервера. Важно правильно указать IP-адрес прокси-сервера, иначе WPAD не будет работать.
После создания записи, перейдем на вкладку «Data» данной записи, и в поле «wpad» вводим адрес к pac-файлу на сервере. Этот адрес должен ссылаться на FQDN (полное доменное имя) вашего сервера. Например, если ваш сервер называется «arraysconnect.local», то адрес может выглядеть следующим образом: «http://fpcroot.arraysconnect.local/wpad.dat».
Теперь разместим сам wpad.dat файл на сервере. Создадим файл с таким именем, и его содержимое запишем в следующем формате:
function FindProxyForURL(url, host) { var proxy_direct = "DIRECT"; var proxy_http = "PROXY 192.168.1.1:8080"; var proxy_https = "PROXY 192.168.1.1:8080"; if (shExpMatch(url, "*.intranet/*") || dnsDomainIs(host, "local")) { return proxy_direct; } else { return proxy_http; } }
Используя данный скрипт, можно настроить wpad с различными условиями доступа, например, использовать прокси только для определенных адресов или доменов.
Осталось только проверить, что WPAD работает корректно. Для этого запустите Internet Explorer и перейдите на страницу «О настроенности прокси». Если все было сделано правильно, вы должны увидеть сообщение о том, что прокси-сервер настроен автоматически.
В случае, если прокси-сервер не настроен автоматически, можно проверить следующие дополнительные настройки:
- Убедитесь, что сервер, на котором размещен файл wpad.dat, доступен по адресу, указанному в записи DNS.
- Проверьте файл wpad.dat на наличие ошибок в синтаксисе или опечаток.
- Убедитесь, что браузер использует правильную конфигурацию сети, включая использование DNS-сервера, где размещен wpad.dat файл.
- Проверьте правильность указания DNS-сервера на клиентском компьютере.
WPAD или автоматическая настройка параметров прокси
При использовании WPAD настройки прокси-сервера автоматически передаются браузеру или другим приложениям на устройстве. Это особенно полезно в случаях, например, когда у вас есть несколько прокси-серверов и вам приходится переключаться между ними в зависимости от местоположения или требований.
WPAD ссылается на определенные файлы на сервере, которые содержат информацию о настройках прокси-сервера. Например, файл wpad.dat содержит скрипт, который определяет правила автоматической настройки. Эти файлы могут быть размещены на веб-сервере или в локальной сети.
Взглянем на процесс автоматической настройки параметров прокси более подробно:
- Настройки WPAD должны быть произведены на сервере, который хостит файл wpad.dat.
- Вы должны определить расположение файла wpad.dat. Например, это может быть http://servername/wpad.dat.
- Затем необходимо настроить DNS-сервера, чтобы они возвращали правильные записи wpad. Обычно это делается с помощью записи вида wpad IN A IP_адрес. Для локальных сетей можно также использовать DNS-имена, например, wpad.example.com.
- В настройках прокси-сервера необходимо установить опцию «Авто-настройки» на значение wpad:
или arraysconnect: , где — это порт, на котором будет слушать сервер автоматической настройки. Например, wpad:8080. - Теперь браузеры и другие приложения, поддерживающие автоматическую настройку, будут направлять запросы на сервер автоматической настройки, используя DNS-имя «wpad» или DNS-имя, основанное на доменном имени хоста. Например, wpad.example.com. Они получат файл wpad.dat, который будет содержать правила автоматической настройки.
Хосты в других сетях или областях могут также использовать WPAD, но им необходимо быть в общей доменной зоне или иметь доступ к файлу wpad.dat через VPN или другие сетевые технологии.
Всего несколько небольших шагов, и у вас будет настроена автоматическая настройка параметров прокси на устройстве. Материалы и инструкции по настройке WPAD можно найти в документации различных сервисов, браузеров, таких как Microsoft Forefront, Firefox, Opera и дополнительные статьи и записки.
Осталось только добавить, что сервер, хостящий файл wpad.dat, должен предоставлять его по протоколу HTTP или HTTPS, чтобы браузеры и другие приложения могли получить его.
PAC-файл
Когда пользователь пытается подключиться к веб-ресурсу, браузер выполняет проверку PAC-файла, чтобы определить, должно ли подключение происходить напрямую или через прокси-сервер. Если подключение нужно выполнить через прокси-сервер, то браузер отправляет запрос к прокси-серверу, указанному в PAC-файле.
Автоматическая настройка прокси-сервера особенно полезна в случае работы с большим количеством компьютеров или в сетях с несколькими подсетями. Вместо того чтобы настраивать каждый компьютер индивидуально, можно настроить PAC-файл и разместить его на сервере. Теперь все компьютеры могут с помощью данного PAC-файла автоматически настраивать прокси-сервер для своих подключений.
Для создания PAC-файла вы можете использовать любой текстовый редактор или, для упрощения работы, специальные инструменты, такие как Notepad++. Ниже приведен пример простого PAC-файла, который определяет прокси-сервер в зависимости от имени хоста и типа подключения:
function FindProxyForURL(url, host) {
// Расшифруйте запись ниже
...
}
ПАК-файл состоит из нескольких строк кода на языке JavaScript. В этом примере «url» — это адрес веб-сайта, на который происходит запрос, «host» — имя хоста (то есть доменное имя).
Для использования PAC-файла вам необходимо разместить его на веб-сервере или на сервере защиты и получить его адрес. После этого вы должны настроить Web Proxy Automatic Discovery (WPAD) на всех компьютерах с помощью DNS (при необходимости используйте команду DNscmd или подобные для создания записи с именем «wpad» в соответствующем домене).
Когда вы настраиваете прокси-сервер, вам может понадобиться помощь специалиста по подключению к серверу. Вы можете выполнить эту задачу совсем несложно с помощью простой информации, например, информации о веб-производительности или о проникновении в сеть Windows. В этом случае просто добавьте информацию о прокси-сервере в PAC-файл и настройте браузеры клиентов вручную или с помощью GPO.
Вот пример PAC-файла с записями о прокси-серверах «proxy.local» и «proxy2.local» для определенных адресов:
function FindProxyForURL(url, host) {
// Прокси-серверы для определенных адресов
if (url == "http://www.example.com/") {
return "PROXY proxy.local:8888";
}
if (host == "subdomain.example.com") {
return "PROXY proxy2.local:8888";
}
// Прокси-сервер по умолчанию
return "DIRECT";
}
Созданный файл PAC (например, example.pac) поместите в папку /var/www/html или в любую другую папку, которую веб-сервер может обслуживать в каталоге /etc/httpd/conf или /etc/apache2. Затем настройте HTTP-сервер для применения PAC-файла, например, в файле /etc/httpd/conf/httpd.conf добавьте следующую запись:
AddType application/x-ns-proxy-autoconfig .pac
Если у вас есть DNS-сервер и вы управляете его, вы можете настроить DNS-сервер для DNS-имени wpad вашего домена на сервере, где размещается PAC-файл. Например, вы можете добавить запись в файл /etc/dnsmasq.conf:
address=/wpad.yourdomain.com/192.168.1.1
Здесь «192.168.1.1» — это IP-адрес веб-сервера, где находится файл PAC.
Теперь, когда пользователь пытается подключиться к веб-сайту, браузер автоматически получает PAC-файл, выполняет его и определяет прокси-сервер для подключения. Если PAC-файл не доступен или не определен специальным образом, браузер будет пытаться подключаться напрямую без использования прокси-сервера.
Сети Active Directory
Настройка Web Proxy Automatic Discovery (WPAD) в сети Active Directory требует некоторых дополнительных шагов. Здесь мы рассмотрим, как настроить прокси-сервер с помощью этого метода.
В доменной сети Active Directory, настройка автоматического получения прокси-конфигурации делается с использованием записи в Реестре и расположением PAC-файла на веб-сервере. Чтобы настроить данный вариант, перейдем к следующим шагам:
- Добавьте на веб-сервере файл PAC-файла. Расположение этого файла должно быть доступно по прямому HTTP-пути, чтобы браузер мог получить доступ к нему напрямую.
- На DNS-сервере добавьте запись WPAD в зону вашего домена. Значение записи должно быть в формате «wpad.domain.com», где «domain.com» — имя вашего домена.
- Настройте ваш прокси-сервер, чтобы он слушал на соответствующем IP-адресе и порту, указанном в PAC-файле.
- Перейдите к вашему DNS-серверу и добавьте запись ISATAP в зоне вашего домена. Значение этой записи должно быть IP-адресом вашего прокси-сервера.
- В Реестре на вашем клиентском компьютере добавьте следующую запись: reg add «HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings» /v «AutoConfigURL» /t «REG_SZ» /d «http://wpad.domain.com/proxy.pac» /f.
- Перезагрузите ваш браузер.
Когда вы настраиваете WPAD для вашей сети Active Directory, необходимо обратить внимание на некоторые дополнительные вещи:
- Opera и Mozilla не поддерживают WPAD.
- Проверьте, что ваш DNS-сервер настроен на обслуживание зоны вашего домена.
- Если у вас есть несколько прокси-серверов, добавьте соответствующие записи в ваш PAC-файл.
- Убедитесь, что ваш сервер WPAD имеет правильное значение FQDN (полное доменное имя).
- Если вы используете DNSmasq для настройки своих DNS-серверов, добавьте опцию «arraysconnect» в файл настройки.
Вам может понадобиться помощь специалиста, чтобы настроить WPAD для вашей сети Active Directory, так как это требует некоторых знаний и опыта в настройке сетевых служб. Но когда настройка будет завершена, вы сможете настроить автоматическое получение прокси-конфигурации для всех клиентских компьютеров в сети.
Записки IT специалиста
Чтобы настроить сервер для выполнения функций WPAD, добавьте опцию WPAD=Метод:Порт/ИмяДомена1/ИмяДомена2
в строку настройки сервера. Указанный метод будет использоваться в DNS-запросах WPAD, где ИмяДомена1 является именем хоста и ИмяДомена2 — именем домена. Если хост использует DNS, добавьте запись CNAME для имен WPAD и направьте их на сервер WPAD.
Вместо сервера можно использовать файл PAC для получения настроек прокси-сервера. Для этого в настройках клиента добавьте ссылку на PAC-файл. Например, в Mozilla Firefox можно указать путь к PAC-файлу во вкладке «Сеть» в меню «Настройки».
Для применения PAC-файла можно также воспользоваться групповой политикой Active Directory. Добавьте файл PAC в библиотеку групповых политик (Group Policy Library) и задайте его путь в параметре «Автоматическая настройка доступа и прокси» в свойствах групповой политики.
Еще один вариант использования PAC-файла — настройка сервера на обработку запросов клиентов. В директории /var/www
или в другой области, доступной для сервера, разместите PAC-файл и настройте сервер Apache или Nginx для обработки запросов по этому файлу.
После настройки WPAD клиенты будут автоматически получать настройки прокси-сервера. Когда клиент отправляет DNS-запрос с именем «wpad», он будет перенаправлен на сервер WPAD. Если имя хоста уже занято, можно использовать другое имя, например, «wpadinfo», и настроить DNS-сервер или маршрутизатор для перенаправления запросов на сервер WPAD.
Есть некоторые важные моменты при настройке WPAD:
- Для клиентов в сети, где dhcp-сервера не поддерживают опцию WPAD, можно использовать команду
dnscmd
для добавления записи CNAME для имени WPAD и направления его на сервер WPAD. - PAC-файл обычно имеет имя
wpad.dat
. Однако, вы можете использовать любое другое имя для PAC-файла в зависимости от ваших настройках. - Имя сервера WPAD должно содержать подстроку «wpad» или быть указано в настройках клиента, чтобы клиент мог сделать запрос к серверу WPAD.
- WPAD по умолчанию использует порт 80 для HTTP и порт 443 для HTTPS. Если вы хотите использовать другие порты, укажите их в настройках сервера.
- Если вы используете протокол ISATAP, WPAD может использовать адрес сервера ISATAP для получения PAC-файла. Укажите адрес сервера ISATAP в опции
WPAD=ИмяХоста/ISATAP-IP
. - Не забудьте проверить и настроить настройки безопасности учетных записей на сервере WPAD для обеспечения безопасного доступа.
Видео:
Что такое прокси-сервер за 7 минут
Что такое прокси-сервер за 7 минут by Listen IT 132,099 views 1 year ago 7 minutes, 28 seconds