19.14. Stabilire un collegamento IPsec

IPsec è l'acronimo di Internet Protocol Security. Esso rappresenta un Virtual Private Network sul quale viene stabilito un collegamento cifrato tra due sistemi (host-to-host) o due reti (network-to-network).

SuggerimentoSuggerimento
 

Per maggiori informazioni su IPsec, andate su http://www.ipsec-howto.org/.

19.14.1. Collegamento Host-to-Host

Un collegamento IPsec host-to-host è un collegamento cifrato tra due sistemi che eseguono IPsec con la stessa chiave di autenticazione. Con un collegamento IPsec attivo, qualsiasi traffico di rete tra due host è cifrato.

Per configurare un collegamento IPsec host-to-host, usare le seguenti fasi per ogni host;

  1. Avvio di Strumento di amministrazione di rete

  2. Dalla tabella IPsec, selezionare Nuovo.

  3. Fate clic su Avanti, per iniziare a configurare un collegamento IPsec host-to-host.

  4. Fornite al collegamento un nickname composto da una parola come ad esempio ipsec0, e selezionate se il collegamento deve essere attivato automaticamente o durante l'avvio del computer. Fate clic su Avanti.

  5. Selezionate cifratura Host to Host come tipo di collegamento. Fate clic su Avanti.

  6. Selezionate il tipo di codifica da usare: manuale o automatica.

    Se selezionate il modo manuale, una chiave per la cifratura deve essere fornita più avanti nel processo. Se avete selezionato il modo automatico, viene usato allora il demone racoon per gestire la chiave di cifratura. Se viene usato racoon, bisogna installare il pacchetto ipsec-tools.

    Fate clic sul pulsante Avanti per continuare.

  7. Specificate l'indirizzo IP per l'altro host.

    Se non conoscete l'indirizzo IP dell'altro sistema, eseguite il comando /sbin/ifconfig <device> su di esso, dove <device> è il dispositivo Ethernet usato per collegare l'altro host. Se nel sistema esiste solo una scheda Ethernet, il nome del dispositivo è eth0. L'indirizzo IP viene rappresentato dal numero seguito dall'etichetta inet addr:.

    Fate clic sul pulsante Avanti per continuare.

  8. Se durante la fase 6 è stato selezionato il tipo di cifratura manuale, specificare la chiave di cifratura da usare o fate clic su Crea per crearne una.

    Specificare una chiave di autenticazione o fate clic su Crea per crearne una. Può essere una combinazione qualsiasi di lettere e numeri.

    Fate clic sul pulsante Avanti per continuare.

  9. Verificare l'informazione sulla pagina IPsec — Summary, e fate clic suApplica.

  10. Selezionare File => Salva per salvare la configurazione.

  11. Selezionate il collegamento IPsec dall'elenco, e fate clic sul pulsante Activate.

  12. Ripetere per l'altro host. È molto importante che le stesse chiavi della fase 8, vengano usate sugli altri host. Altrimenti IPsec non funzionerà.

Dopo aver configurato il collegamento IPsec, verrà visualizzato sull'elenco come riportato in Figura 19-22.

Figura 19-22. Collegamento IPsec

Vengono creati due file in /etc/sysconfig/network-scripts/ifcfg-<nickname> e keys-<nickname>. Se avete scelto la cifratura automatica, viene creato anche /etc/racoon/racoon.conf.

Quando viene attivata l'interfaccia, vengono creati <remote-ip>.conf e psk.txt in /etc/racoon/, e racoon.conf viene modificato in modo da includere <remote-ip>.conf.

Consultate la Sezione 19.14.3 per determinare se il collegamento IPsec è stato stabilito.

19.14.2. Collegamento Network-to-Network (VPN)

Un collegamento IPsec network-to-network usa due router IPsec, uno per ogni rete, attraverso il quale viene direzionato il traffico della rete per le sottoreti private.

Per esempio, come mostrato in Figura 19-23, se la rete privata 192.168.0/24 desidera inviare il traffico di rete alla rete privata 192.168.2.0/24, i pacchetti attraversano il gateway0, a ipsec0, attraverso internet, a ipsec1, gateway1, e alla sottorete 192.168.2.0/24 .

I router IPsec devono avere degli indirizzi IP 'publically addressable', e un altro dispositivo Ethernet collegato alla propria rete privata. Il traffico viaggia attraverso il router IPsec solo se è inteso per l'altro IP sec router con il quale ha un collegamento cifrato.

Figura 19-23. IPsec Network-to-Network

Le opzioni di configurazione della rete alternata, includono un firewall tra ogni router IP e internet e un firewall intranet tra ogni router IPsec e il gateway della sottorete. Il router IPsec e il gateway per la sottorete, possono essere un solo sistema con due dispositivi Ethetrnet, uno con l'indirizzo IP pubblico che si comporta come un router IPsec, e l'altro con un indirizzo IP privato che si comporta come il gateway per la sottorete privata. Ogni router IPsec può usare il gateway per la propria rete privata o un gateway pubblico, per inviare i pacchetti all'altro router IPsec.

Per configurare un collegamento IPsec network-to-network, usare le seguenti fasi:

  1. Avvio di Strumento di amministrazione di rete

  2. Dalla tabella IPsec, selezionare Nuovo.

  3. Fate clic su Avanti, per iniziare la configurazione di un collegamento IPsecnetwork-to-network.

  4. Fornite al collegamento un nickname composto da una parola come ad esempio ipsec0, e selezionate se il collegamento deve essere attivato automaticamente o durante l'avvio del computer. Fate clic su Avanti.

  5. Selezionare Codifica Network to Network (VPN), per poi cliccaresu Avanti.

  6. Selezionate il tipo di codifica da usare: manuale o automatica.

    Se viene selezionato manuale, bisogna fornire più in avanti nel processo una chiave di cifratura. Se invece viene selezionato automatico, viene usato il demone racoon, per gestire la chiave di cifratura. Se viene usato racoon, bisogna installare il pacchetto ipsec-tools. Per continuare fate clic su Avanti.

  7. Sulla pagina Rete Locale, inserire le seguenti informazioni:

    • Local Network Address — L'indirizzo IP del dispositivo sul router IPsec collegato alla rete privata.

    • Local Subnet Mask — La maschera della sottorete dell'indirizzo IP della rete locale.

    • Local Network Gateway — Il gateway per la sottorete privata.

    Fate clic sul pulsante Avanti per continuare.

    Figura 19-24. Informazioni della rete locale

  8. Sulla pagina Rete remota, inserire la seguente informazione:

    • Indirizzo IP remoto — L'indirizzo IP 'publically addressable' del router IPsec per l'altra rete privata. Nel nostro esempio, per ipsec0, inserire l'indirizzo IP 'publically addressable' di ipsec1, e viceversa.

    • Indirizzo di rete remoto — L'indirizzo di rete della sottorete privata dietro l'altro router IPsec. Nel nostro esempio, inserire 192.168.1.0 se si configura ipsec1, e 192.168.2.0 se si configura ipsec0.

    • Maschera remota della sottorete — La maschera della sottorete dell'indirizzo IP remoto.

    • Gateway remoto della rete — L'indirizzo IP del gateway per l'indirizzo di rete remoto.

    • Se nella fase 6 è stata selezionata la cifratura manuale, specificare la chiave di cifratura da usare o fare clic su Genera per crearne una.

      Specificare una chiave di autenticazione o fate clic su Crea per crearne una. Può essere una combinazione qualsiasi di lettere e numeri.

    Fate clic sul pulsante Avanti per continuare.

    Figura 19-25. Informazione della rete remota

  9. Verificare l'informazione sulla pagina IPsec — Summary, e fate clic suApplica.

  10. Selezionare File => Salva per salvare la configurazione.

  11. Selezionate il collegamento IPsec dall'elenco, e fate clic sul pulsante Activate.

  12. Come utente root al prompt della shell, abilitare l'inoltro IP:

    1. Modificare /etc/sysctl.conf e impostare net.ipv4.ip_forward su 1.

    2. Eseguire il seguente comando per abilitare il cambiamento:

      sysctl -p /etc/sysctl.conf

Per attivare il collegamento IPsec, lo script di rete crea dei sentieri di rete in modo da inviare, se necessario, i pacchetti attraverso il router IPsec.

Consultate la Sezione 19.14.3 per determinare se il collegamento IPsec è stato stabilito.

19.14.3. Provare il collegamento IPsec

Usare la utility tcpdump per visualizzare i pacchetti di rete durante la loro trasmissione tra gli host (o le reti), e verificare che essi siano cifrati tramite IPsec. Il pacchetto dovrebbe includere un testo AH, e dovrebbe essere mostrato come pacchetti ESP. ESP significa che è cifrato. Per esempio:

17:13:20.617872 pinky.example.com > ijin.example.com: \
	    AH(spi=0x0aaa749f,seq=0x335): ESP(spi=0x0ec0441e,seq=0x335) (DF)

19.14.4. Avviare e terminare un collegamento

Se il collegamento IPsec non è stato configurato in modo tale da avviarsi al momento dell'avvio, avviatelo e fermatelo, come utente root, tramite la linea di comando.

Per iniziare il collegamento, eseguire il seguente comando come utente root su ogni host per IPsec host-to-host, o su ogni router IPsec per IPsec network-to-network (sostituire <ipsec-nick> con un nickname composto da una sola parola configurato precedentemente, come ad esempio ipsec0):

/sbin/ifup <ipsec-nick>

Per fermare il collegamento, eseguire il seguente comando come utente root su ogni host per IPsec host-to-host, o su ogni router IPsec per IPsec network-to-network (sostituire <ipsec-nick> con un nickname composto da una sola parola configurato precedentemente, come ad esempio ipsec0):

/sbin/ifdown <ipsec-nick>