Автоматическое обнаружение прокси wpad.example.com не работает
Я пытаюсь настроить автоматический метод обнаружения моего прокси-сервера Squid в локальной сети, установив в браузерах "Автоматическое обнаружение".
Прокси работает нормально и работает, если я указываю IP: порт вручную в клиентских браузерах, также скрипт wpad работает, если указать URL-адрес скрипта в клиентских браузерах.
Но я хочу настроить автоматическое обнаружение для каждого браузера в локальной сети, и он не работает, браузер сразу показывает страницу squid с сообщением "Отказано в доступе" и не запрашивает у пользователя / пароля доступ.
Прокси-сервер, как я уже сказал, работает нормально, это прозрачный прокси-сервер Squid 3.1.
Прокси-сервер
IP: 192.168.1.252
/etc/squid3/squid.conf соответствующие настройки
http_port 3128 transparent
Настройки правил брандмауэра Shorewall
REDIRECT lan 3128 tcp 80 - !192.168.1.0/24
Мой DNS-сервер установил это
Итак, wpad.example.com/wpad.dat хорошо разрешен в локальных сетях, проверено. Вот соответствующая документация об этом
apacheserver A 192.168.1.25
wpad CNAME apacheserver
Apacheserver имеет это:
/ и т.д. / apache2 / сайты включить / WPAD
# Auto Proxy Configuration
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /srv/custom/wpad
ServerName wpad.example.com
AddType application/x-ns-proxy-autoconfig .dat
AddType application/x-ns-proxy-autoconfig .pac
</VirtualHost>
# vim:ft=apache:
/ SRV / заказ / WPAD /
-rw-r--r-- 1 root root 346 oct 2 11:59 wpad.dat
lrwxrwxrwx 1 root root 8 oct 2 10:52 proxy.pac -> wpad.dat
lrwxrwxrwx 1 root root 8 oct 2 10:52 proxy.dat -> wpad.dat
/srv/custom/wpad/wpad.dat
function FindProxyForURL(url,host) {
if(isInNet(host,"127.0.0.1","255.0.0.0"))
return "DIRECT";
if(isPlainHostName(host))
return "DIRECT";
if(isInNet(host,"192.168.1.0","255.255.255.0"))
return "PROXY 192.168.1.252:3128; DIRECT";
else
return "PROXY 192.168.1.252:3128; DIRECT";
}
что мне здесь не хватает?
1 ответ
Решил сам.
Нашел это в логах доступа к серверу apache
192.168.1.70 - - [02/Oct/2014:16:20:02 -0300] "GET /wpad.dat HTTP/1.1" 404 493 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36"
Firefox пытается извлечь файл из http://wpad/wpad.dat
вместо http://wpad.example.com/wpad.dat
Создание файла wpad.dat на сервере apache DocumentRoot
о с ServerAlias wpad
решать проблему
# Auto Proxy Configuration
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /srv/custom/wpad
ServerName wpad.example.com
ServerAlias wpad
AddType application/x-ns-proxy-autoconfig .dat
AddType application/x-ns-proxy-autoconfig .pac
</VirtualHost>
# vim:ft=apache:
И на всякий случай я помещаю символическую ссылку в / var / www, указывающую на /srv/custom/wpad/wpad.dat
#ls -l /var/www
lrwxrwxrwx 1 www-data www-data 25 oct 2 16:45 wpad.dat -> /srv/custom/wpad/wpad.dat
Новые журналы:
192.168.1.196 - - [02/Oct/2014:16:22:37 -0300] "GET /wpad.dat HTTP/1.1" 200 606 "-" "Mozilla/5.0 (compatible; IE 11.0; Win32; Trident/7.0)"