Configurazione automatica del proxy

From RVM Wiki
Jump to navigation Jump to search


Di seguito verrà spiegatoc come configurare automaticamente un proxy selezionando nel Browser "Configurazione Automatica"

Settaggio A Record

  • Settare sul dns un A record che punti ad un web server che conterrà il file di autoconfigurazione:
wpad.domain.tld 192.168.10.254


  • C'è chi dice che si debba mettere anche il record TXT e queste altre cose, ma basta l'A record:
wpad.damain.tld         IN      A       192.168.10.254
                                IN      TXT     "service: wpad:!http://wpad.domain.tld:80/wpad.dat"
wpad.tcp                        IN      SRV     0 0 80 wpad.domain.tld

Settaggio opzione DHCP

  • È possibile settare sul client l'opzione di utilizzo WPAD anche passando un'opzione DHCP. Non viene trattato qui.

Creazione del file di Autoconfigurazione

  • Vedi:
  • Creare la directory per il virtualhost:
cd /var/www/
sudo mkdir wpad
cd wpad
  • Creare lo script di configurazione:
cat | sudo tee /var/www/wpad/wpad.dat > /dev/null <<EOFile
function FindProxyForURL( url, host )  {
        if(     isPlainHostName( host )
                dnsDomainIs( host, ".domain.tld" )
           )         
                return "DIRECT"; 
        else
                return  "PROXY proxy.domain.tld:3128";
}
EOFile
  • Linkarlo per Firefox
sudo ln -s wpad.dat proxy.pac
cd /var/www
sudo ln -s wpad/wpad.dat wpad.dat

TEST E DEBUG DELLO SCRIPT WPAD

  • Per testare la sintassi
sudo ln -s wpad/wpad.dat wpad.js
  • Oppure testarlo col tool pactester:
sudo apt-get install libpacparser1 
pactester -p wpad.dat -u https://www.google.com -c 192.168.10.11
PROXY proxy.example.com:3128; PROXY 192.168.10.254:3128;
  • PROCEDERE SOLO SE LO SCRIPT È CORRETTO

Definizione Virtual Host

  • Definire il virtual host wpad

Per Apache 1.3

cat > /etc/apache/conf.d/wpad.conf <<EOFile
<VirtualHost ip.ad.dr.es>
        ServerName wpad.yourdomain.tla
        ServerAlias ip.ad.dr.ess
	DocumentRoot /var/www/wpad
        AddType application/x-ns-proxy-autoconfig .dat
</VirtualHost>
EOFile

Per Apache 2

Defineire il nome del server web:

sudoedit /etc/apache2/apache2.conf

ServerName mywebserver

Creare il file di configurazione di apache

cat | sudo tee /etc/apache2/sites-available/wpad.conf > /dev/null <<EOFile
NameVirtualHost *:80

<VirtualHost *:80>
        ServerName wpad.domain.tld
        ServerAlias wpad
        DocumentRoot /var/www/wpad
        AddType application/x-ns-proxy-autoconfig .dat
</VirtualHost>

<VirtualHost *:80>
        ServerName wpad
        ServerAlias wpad
        DocumentRoot /var/www/wpad
        AddType application/x-ns-proxy-autoconfig .dat
</VirtualHost>
EOFile
  • Abilitare il sito
sudo a2ensite wpad.conf
  • Riavviare Apache
sudo invoke-rc.d apache2 restart
  • Controllare di riuscire a leggere il file da Internet explorer
http://wpad/wpad.dat
http://wpaddomain.tld/wpad.dat

Configurazione di Internet Explorer

Test dello script

  • Settare l'impostazione di test. Configurare Internet explorer in
Strumenti ... Opzioni Internet ... Connessioni ... Impostazioni LAN
  • Spuntare SOLO:
Utilizza script di configurazione automatica
  • Inserire
http://wpad/wpad.dat
  • Chiudere e riaprire Internet Explorer e verificare che le impostazioni siano applicate

Impostazione definitiva

  • Ora settare l'impostazione definitiva. Configurare Internet explorer in
Strumenti ... Opzioni Internet ... Connessioni ... Impostazioni LAN
  • Spuntare SOLO:
Rileva automaticamente impostazioni
  • ATTENZIONE: Avviare IE cliccando sull'icona sul Desktop, altrimenti la risoluzione wpad non avviene. Se si lancia IE dal collegamento sulla task bar non funziona. In particolare, non viene creata la chiave HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\DefaultConnectionSettings
  • Se si hanno difficoltà, impostare la prima volta il percorso dello script nelle opzioni di IE e poi disabilitarlo. questo provvederà a creare la chiave.
  • La prima connessione impiega un pò di tempo, perchè IE deve configurarsi, dopodichè fa una cache delle impostazioni e parte subito.

Riferimenti