IIS 6.0 è stato progettato per supportare il protocollo Ipv6. Essendo il protocollo molto giovane, non tutte le funzionalità del web server sono completamente compatibili con esso, anzi soltanto una parte dei servizi offre una completa compatibilità con ipv6. Facendo lavorare IIS in questa configurazione, risponderà ad entrambe le richieste del protocollo in versione 4 e 6. Vediamo come configurare e gestire un web server IIS 6.0 che supporti Ipv6.
Il protocollo Ipv6
Attualmente il funzionamento di internet è basato sul protocollo TCP (Transport Control Protocol) ed IP (Internet Protocol). L'IP in utilizzo è la versione 4, che risale agli anni '80. Ipv4 ha un limite, quello di poter allocare un numero massimo di indirizzi univoci pari a 2^34. Con l'evoluzione di internet si è creato il problema della saturazione di questi indirizzi, pertanto l'associazione IETF (Internet Engineering Task Force) ha deciso di studiare un nuovo protocollo che potesse ovviare a questo problema, oltre che aumentare la sicurezza delle transazioni internet e di altri aspetti tecnici.
In rete si trova molta documentazione relativa al nuovo protocollo Ipv6, ad ogni modo elenchiamo le caratteristiche principali:
- Gli indirizzi ip sono della lunghezza di 128bit: il numero degli indirizzi totale allocabili è di gran lunga superiore all'attuale protocollo e soddisfa la richiesta attuale e quella del futuro.
- Il routing dei pacchetti è stato migliorato notevolmente, consentendo ai router di memorizzare tabelle di routing minori.
- La configurazione degli host è stata semplificata.
- È stato adottato un sistema built-in di sicurezza chiamato IPSec (Internet Protocol Security).
- È stato migliorato il supporto del QoS, quality of service, cioè l'insieme di metodi e processi che consentono alle organizzazioni basate sui servizi di mantenere un determinato tasso qualitativo.
- L'estensione degli header dei pacchetti è stata modificata per consentire una serie di innovazioni relative al nuovo protocollo.
- IIS Manager
- La restrizione degli indirizzi ip
- Il Bandwith throttling
- IIS 6.0 fornisce un server FTP
- Il protocollo SMTP
- Anche NNTP
- IIS 6.0 consente il reverse DNS lookup
- Dal pannello di controllo, fare doppio click sulla voce "Connessione alla rete locale (LAN)"
- Fare click con il tasto destro sull'icona relativa alla connessione "Local Area Connection" e selezionare la voce dal menù contestuale "Proprietà".
- Dalla schermata che appare, fare click sul bottone "Install".
- Si aprirà una finestra denominata "Componenti di rete", selezionare la voce "Protocolli" ed in seguito "Aggiungi".
- A questo punto selezionare dalla schermata che appare la voce "Microsoft TCP/IP versione 6" e cliccare il tasto "ok".
- Cliccare "Chiudi" per rendere effettive le modifiche.
- Dal pannello di controllo, fare doppio click sulla voce "Connessione alla rete locale (LAN)"
- Fare click con il tasto destro sull'icona relativa alla connessione "Local Area Connection" e selezionare la voce dal menù contestuale "Proprietà".
- Dalla lista dei componenti di rete installati, selezionare "Microsoft TCP/IP versione 6" ed in seguito cliccare sul bottone "Disinstalla".
- Se richiesto, confermare l'operazione premendo il bottone "Si".
- Cliccare "Chiudi" per rendere effettive le modifiche.
- Cliccare "Si" per riavviare il computer e completare il processo.
- I firewall presenti nell'installazione di default di Windows supportano solamente il protocollo ipv4 e non effettuano alcun filtro sui pacchetti ipv6. L'unico sistema per ovviare al problema è quello di installare un firewall di terze parti che supporti tale protocollo.
- In assenza di router di rete che supportino ipv6, è possibile effettuare la tecnica chiamata "spoofing". Si consiglia quindi di verificare che gli apparecchi di rete supportino pienamente ipv6. A tal proposito, anche l'aggiunta di un router non autorizzato può modificare completamente la configurazione dei client ed effettuare un nuovo instradamento dei pacchetti ipv6. In questo caso è necessario verificare che non sia possibile per nessuno, nemmeno per i client wireless, di utilizzare la connessione in maniera non autorizzata.
- È opportuno accompagnare ipv6 con il protocollo IPSEC accennato precedentemente. In questo modo i pacchetti saranno crittografati e quindi non intercettabili ed avranno un checksum che ne identifica la fonte e l'integrità del pacchetto.
Come IIS 6.0 supporta Ipv6
Come accennato poco sopra, Ipv6 è un protocollo ancora molto giovane, pertanto non si può definire stabile. Microsoft ha dimostrato un ampio interesse ma l'implementazione lato server di questo protocollo non è definitiva, anzi, ci sono svariati moduli che non supportano Ipv6 e sono:
Ipv6 e le ISAPI Server Variables
ISAPI (Internal Server API) supporta correttamente Ipv6. ISAPI è la parte del server che si occupa di salvare le variabili d'ambiente come per esempio l'indirizzo ip del richiedente e l'indirizzo ip del server. Come spiegato sopra, gli indirizzi ipv6 sono composti da 128bit di caratteri rispetto ai 32 della versione 4, pertanto occuperanno più spazio in memoria.
Nonostante ciò saranno salvati correttamente all'interno LOCAL_ADDR e REMOTE_ADDR. Leggendo la documentazione ufficiale di IIS, Microsoft ci tiene a sottolineare come i 128bit possano causare errori di buffer overruns, con conseguenti rischi per la sicurezza del server web. Sfruttando questo tipo di errori è possibile infatti prendere delle credenziali sulla macchina da sfruttare per accedere all'account di Amministratore. Microsoft consiglia semplicemente di allocare una stringa di 16 caratteri nel caso di Ipv6, di 57 caratteri nel caso di ipv6.
Installare o disinstallare IPV6
Dopo aver introdotto le caratteristiche principali di IPV6 e di come viene supportato da IIS 6.0, vediamo i passi per installare o rimuovere il supporto a tale protocollo.
Installare IPV6
Potrebbe essere necessario inserire il CD-ROM originale di Windows o di riavviare il computer per rendere effettive le modifiche.
A questo punto, in sei semplicissimi passi, è stato installato il supporto ad IPV6. Per verificare che le impostazioni siano state installate correttamente, è sufficiente aprire il prompt dei comandi e verificare se sono stati installati i nuovi software di diagnostica di rete come "ping6", che consente di effettuare il ping verso host che utilizzano IPV6. Inoltre, è possibile lanciare il comando "ipconfig /all" per verificare che sia stata configurata correttamente l'interfaccia di loop back in versione 6. A questo punto IIS è pronto a supportare il nuovo protocollo: sarà sufficiente riavviare il server web per rendere operative le modifiche.
Disinstallare IPV6
Cenni sulla sicurezza di IPV6
Come ribadito più volte in questo articolo, IPV6 è un protocollo molto giovane e quindi non è ancora stabile e sicuro al 100%. La fase di test non è ancora stata terminata, pertanto si scoprono spesso alcune falle nella sicurezza del protocollo, sopratutto per il fatto che in alcune reti, per essere testato, si utilizza fare "tunneling" sopra la rete ipv4. Per questo motivo si è soggetti ad una serie di rischi che potrebbero intaccare il sistema. Ci sono una lista di accorgimenti da considerare per rendere sicuro al massimo l'utilizzo del protocollo IPV6, vediamoli qui di seguito:
Conclusioni
Sulla base della situazione attuale di internet non è ancora necessario installare il supporto ipv6, anzi, data la freschezza di questo protocollo si rischia di incappare in gravi problemi di sicurezza non ancora risolti o non ancora emersi alla luce. In un ambiente di sviluppo, installare ipv6 può essere un buon metodo per cominciare a prendere dimestichezza con i cambiamenti che avverranno nel giro di pochi anni, in ambienti stabili, soprattutto dove si fornisce un servizio conto terzi in cui la stabilità e la sicurezza sono essenziali, è meglio evitare esplorazioni che potrebbero rivelarsi controproducenti.