SSL/TLS - Sito Stek Andaloro

Transcript

SSL/TLS - Sito Stek Andaloro
SSL/TLS
SSL sta per Secure Socket Layer è lo standard più diffuso per la sicurezza. In poca parole aggiunge
ai protocolli di livello sessione un sistema di crittografia capace di garantire la privacy e la
sicurezza.
Come già abbiamo visto e detto in precedenza parlando di crittografia... La sicurezza e la privacy
sono garantite da algoritmi di crittografia simmetrica per la connessione, da algoritmi asimmetrici
per l' autenticazione e da funzioni di hash per garantire l'integrità del dato.
HTTPS
Alcuni siti, come i portali delle banche, delle assicurazioni, siti di aziende private o enti pubblici, o
anche facebook, utilizzano questo protocollo. Questo protocollo utilizza il sistema dei certificati.
Infatti, come si vede nella figura, a sinistra dell'URL compare un lucchetto e cliccandoci possiamo
andare a aprire il certificato.
Sull'etichetta "Generale" vengono visualizzate alcune informazioni di carattere generale.
Cliccando poi su "Dettagli" possiamo verificare i vari algoritmi di cifratura utilizzati (come ad
esempio la chiave pubblica rilasciata dal sito per permettere l'autenticazione).
I certificati vengono rilasciati da enti certificatori (GeoTrust).
TLS
Il TLS, che sta per Transport Layer Security, (è la versione più evoluta dell'SSL) opera subito sopra
il livello di trasporto e permette la suddivisione in blocchi dei dati e la loro cifratura.
In un'architettura client/server, l'autenticazione TLS è unilaterale: è il solo server ad autenticarsi
presso il client. Quando entrambi gli host, messi in comunicazione, utilizzano il TLS allora
l'autenticazione è biunivoca.
Il TLS è composto da due livelli:
• TLS Record Protocol: questo si occupa di prendere i dati dal livello superiore e li divide in
blocchi (magari se necessario li comprime) e al tempo stesso li cifra (esiste anche una
funzione di hash per verificare l'integrità del dato, HMAC);
• Handshake Protocol: negozia i parametri di sicurezza. Le fasi sono:
• messaggio di hello da parte del client
• il server sceglie il protocollo
• il server invia al client il certificato assieme alla sua chiave pubblica
• il client ne verifica l'identità
• il client genera una chiave di sessione casuale
• il client invia al server la chiave di sessione casuale
• il server decifra il messaggio con la proprio chiave privata ottenendo la chiave di
sessione
• il server utilizza la chiave di sessione per cifrare e decifrare, tramite un algoritmo
simmetrico, il traffico di dati a seguire
SET e pagamenti online oggi
Il protocollo SET (Secure Electronic Transaction) è il sistema adottato negli anni 90 da Mastercard
e Visa per garantire lo scambio di informazioni biunivoco nel caso di transazioni di denaro.
Con questa metodologia le transazioni sono sicure perché tutti gli attori coinvolti nello scambio
usano particolari certificati.
In realtà oggi si utilizzano metodi di pagamento diversi, come il Paypal o Vpay etc.
Firewall
Un firewall è un meccanismo di difesa che è capace di bloccare qualsiasi ingresso indesiderato da
parte di malintensionati all'interno di una rete protetta.
Un firewall protegge la rete non solo da attacchi esterni ma anche da pericoli derivanti da computer
presenti nella rete stessa.
Solitamente un firewall può essere costituito da una o più regole impostate su più dispositivi:
• Regole impostate su un router;
• Regole impostate su una macchina o su un server
L'header di ogni pacchetto contiene informazioni riguardanti l'ip del mittente e del destinatario, il
protocollo di rete usato e altre informazioni. In base a queste il firewall deciderà se accettare o meno
il pacchetto.
Un firewall è in grado anche di tradurre i singoli IP interni in modo tale da non poter risalire
dall'esterno alla topologia di rete (NAT network address translation).
Potrebbe ancora bloccare i contenuti di alcune pagine.
Può avere anche una gestione degli utenti tramite crittografia.
Possiamo costruire VPN per rendere ancora più sicura la comunicazione in rete.
Certamente se la configurazione iniziale, che è stabilita da un essere umano, non è buona, il firewall
non può non prescindere da questa.
Oppure se dovesse verificarsi un attacco interno, il firewall in alcuni casi non può intervenire.
Le tre regole base per costruire un firewall sono state raccolte da D. Cheswich e S. Bellovin:
• Il firewall deve essere l'unico punto di contatto tra la rete interna e quella esterna
• Solo i pacchetti considerati accettabili dalle rules stabilite possono essere attraversare il
firewall
• Il firewall deve essere un sistema altamente sicuro
In buona sostanza un firewall non si compra, si costruisce......
Tramite la configurazione di un firewall su router noi abbiamo come vantaggio maggiore velocità
del traffico in rete e maggiore trasparenza, ma ovviamente, come vedremo nei prossimi esempi
laboratoriali, avremo configurazioni fatte a basso livello e quindi non avremo servizi aggiuntivi.
Con una configurazione su macchina abbiamo altre funzioni e la configurazione avviene ad alto
livello, tramite interfaccia grafica.
NAT
Il network address translation è una tecnica che permette a un router di trasformare e nascondere
l'indirizzo IP dei dispositivi connessi ad esso in una rete interna verso l'esterno.
Proxy
Un proxy server è un dispositivo che si interpone tra client e server facendo da tramite o da
interfaccia tra i due host.
DMZ
Una Demilitarized zone è una parte di una rete LAN isolata. Questa sarà raggiungibile sia
dall'esterno che dall'interno, a patto che non ne sia compromessa la sicurezza. Infatti gli host
presenti in questa parte di LAN hanno la possibilità di limitare la connessione ad altri dispositivi
connessi alla rete.
Solitamente in questa porzione di LAN vengono collegati tutti i server che devono giovare
all'accesso pubblico dall'esterno: web, dns, mail.
L'accesso alla DMZ è consentito passando solo per i firewall, che ne costituiscono l'unica via di
entrata e di uscita. Quindi si viene a creare un vero e proprio "vicolo cieco".
A sua volta però la DMZ, non solo deve essere separata dall'esterno da un firewall, ma dovrà essere
separata anche dalla rete interna sempre da un dispositivo di filtraggio.
Classificazione dei firewall
• Ingress firewall: controllano il flusso esterno alla LAN
• Egress firewall: controllano il flusso interno verso l'esterno
Oppure li possiamo classificare a secondo del numero di host:
• personal firewall: se proteggono solo un dispositivo
• network firewall: se protegge una intera rete
Oppure a seconda di cosa filtrano:
• filtri di pacchetto a seconda dell'IP, delle porte o dei protocolli usati
• server proxy: offrono una connessione intermediaria per conto di altri dispositivi.
ALC
I comandi per settare le Access List Control variano a seconda del sistema operativo o marca di
router che voi usate.
Esistono due tipi di ALC:
• standard: servono a filtrare l'accesso controllando il traffico in entrata alla destinazione
access-list access-list-number {permit | deny} source-address [wildcard mask]
• estese: servono a filtrare l'accesso controllando il traffico in uscita dal mittente
access-list access-list-number {permit | deny} protocol source source-wildcard [operator port]
destination destination-wildcard [operator port] [established] [log]
• l'access-list-number è un numero identificativo che va solitamente da 101 a 199 per le estese
o da 1 a 99 per le standard
• permit o deny indica se stiamo permettendo o escludendo qualcosa
• protocol indica il protocollo sul quale stabiliamo la regola
• source o destination indicano l'indirizzo IP
• gli altri campi li analizziamo con degli esempi
ALC standard
Per prima cosa impostiamo la nostra ALC in modo tale da impedire a un host l'accesso a una rete
mentre gli sarà permesso accedere a tutto il resto. Con questo tipo di ALC dovremo in pratica
andare a configurare la porta del router più vicina alla destinazione e filtrarne il traffico in entrata.
Laboratorio 1 Packet Tracer
Costruiamo una rete come nella figura seguente.
Cioè avremo quattro reti di classe A:
10.0.0.0/8 con due PC collegati che avranno IP .2 e .3 (il default getway sarà .1)
Faccio lo stesso per le reti 20.0.0.0/8, 30.0.0.0/8 e 40.0.0.0/8.
Per collegare i due router utilizzo la rete 50.0.0.0/8 dove l'interfaccia di sinistra sarà la .1, mentre
quella di destra .2 (utilizzo le porte seriali).
Come protocollo di routing uso un dinamico RIP.
A questo punto devo configurare la ALC per non permettere l'accesso alla rete 40.0.0.0/8 da parte
dell'host 10.0.0.3.
Da configure terminal sul router di destra (cioè quello collegato direttamente alla 40.0.0.0/8):
access-list 1 deny host 10.0.0.3 (oppure access-list 1 deny 10.0.0.3 0.0.0.0)
access-list 1 permit any
Quindi o indichiamo host e l'indirizzo IP del dispositivo da bloccare oppure mettiamo direttamente
l'indirizzo IP più la wildcard mask. Questo è un numero di 32 bit diviso in 4 ottetti, simile alla
subnet-mask; indica quali bit devono essere controllati in una ALC: 1 se il bit corrispondente deve
essere ignorato, 0 se deve essere controllato.
Andiamo ora sull'interfaccia del router di destra che è collegata direttamente alla 40.0.0.0/8 (nel mio
caso la fa0/0).
ip access-group 1 out
Ora se proviamo a pingare la 40.0.0.0/8 sarà raggiungibile da qualsiasi host, tranne che dal 10.0.0.3.
Difatti se noi proviamo a simulare l'invio di un pacchetto con la modalità "simulation" (in basso a
destra) e editiamo solo i pacchetti ICMP, vediamo che i pacchetti escono dalla rete 40.0.0.0 verso
l'host 10.0.0.3 ma non fanno il percorso inverso....
Laboratorio 2 Packet Tracer
L'obiettivo ora è non permettere all'intera rete 10.0.0.0/8 di raggiungere la 40.0.0.0/8.
Consiglio: per far bene...ad ogni nuovo esercizio vi consiglio di cancellare il router di destra e di
installarne un altro nuovo, per poter così partire da una configurazione nuova... Oppure calcellare le
regole appena impostate usando il comando no access-list 1 (se è la regola 1 che vogliamo
cancellare....).
Per far ciò usiamo la wildcard mask che non sarà altro che l'inverso della subnet mask usata. Cioè
se noi stiamo usando la 255.0.0.0 allora la sua wildcard mask sarà 0.255.255.255.
I comandi saranno molto simile all'esercizio precedente:
access-list 2 deny 10.0.0.0 0.255.255.255
access-list 2 permit any
Andiamo ora sull'interfaccia del router di destra che è collegata direttamente alla 40.0.0.0/8 (nel mio
caso la fa0/0).
ip access-group 2 out
Infatti provando a pingare....
Laboratorio 3 Packet Tracer
Impediamo invece l'accesso alla rete 40.0.0.0/8 da parte dell'intero range di IP 10.3.16.0 –
10.3.31.255.
Per trovare la mask facciamo l'IP più alto meno quello più basso:
10.3.31.255 10.3.16.0=
0.0.15.255
Quindi sempre dal router di destra:
access-list 2 deny 10.3.16.0 0.0.15.255
access-list 2 permit any
Poi invece sulla solita interfaccia collegata alla 40.0.0.0/8:
ip access-group 2 out
Oss. In poche parole con una ALC possiamo limitare l'ingresso sull'intera rete la non sul singolo
host.
ALC estese
Ora proviamo a impostare le ALC estese, quindi il traffico che deve essere filtrato dovrà essere
quello in uscita dalla sorgente.
Laboratorio 4 Packet Tracer
Vogliamo bloccare l'accesso dell'host 10.0.0.3 all'host 40.0.0.3.
Come sempre prima però cancelliamo la configurazione precedente tramite il comando no accesslist 1 (cancellare anche la regola 2...).
Volendo usare le ALC estese dobbiamo ora andare a configurare l'interfaccia del router di sinistra
più vicina all'host 10.0.0.3 (che per me è fa 1/0).
access-list 101 deny ip host 10.0.0.3 40.0.0.3 0.0.0.0
access-list 101 permit ip any any
E poi quindi sulla mia interfaccia fa 1/0:
ip access-group 101 in
Notiamo quindi che a differenza di prima:
• l'access-list-number ha un altro range:
• per ALC standard è 1-99
• per ALC estese è 101-199
• poi vediamo come andiamo a configurare questa volta l'access-group sulla porta in modalità
in piuttosto che out come prima (controlliamo il traffico che viene da dentro.... prima quello
che entrava... provate anche questa volta con una simulazione come fatto in precedenza)
Laboratorio 5 Packet Tracer
Ora proviamo sempre tramite ALC estesa a bloccare l'host 10.0.0.3 verso la rete 40.0.0.0/8.
Il comando da inserire sempre nel router di sinistra sarà il seguente:
access-list 102 deny ip host 10.0.0.3 40.0.0.0 0.255.255.255
access-list 102 permit ip any any
Poi entriamo sempre nella fa 1/0:
ip access-group 102 in
Laboratorio 6 Packet Tracer
Ora blocchiamo sempre con una ALC il traffico da tutta la rete 10.0.0.0 a tutta la rete 40.0.0.0.
Bene sempre dalla CLI del router a sinistra:
access-list 103 deny ip 10.0.0.0 0.255.255.255 40.0.0.0 0.255.255.255
access-list 103 permit ip any any
Mentre all'interfaccia dò il comando:
ip access-group 103 in
Laboratorio 7 Packet Tracer
Blocchiamo con una ALC estesa il traffico da tutta la rete 10.0.0.0 al host 40.0.0.3.
Bene sempre dalla CLI del router a sinistra:
access-list 104 deny ip 10.0.0.0 0.255.255.255 40.0.0.3 0.0.0.0
access-list 103 permit ip any any
Mentre all'interfaccia dò il comando:
ip access-group 103 in
Laboratorio 8 Packet Tracer
Vogliamo ora configurare una rete con un server http collegato. Dobbiamo permettere che il server
sia raggiungibile da un protocollo tcp che usa la porta www (praticamente che possiamo aprire la
pagina tramite l'http). Ma il server non deve essere raggiungibile tramite ping.
Usiamo come rete per tre PC collegati ad uno switch la 192.168.1.0/24 e invece come rete per
collegare il server al router la 10.0.0.0/8 e come indirizzo per l'interfaccia del router collegata alla
rete 192.168.1.1 mentre quella collegata al server la 10.10.10.11. Il server avrà indirizzo IP
10.10.10.10 mentre i tre PC saranno 192.168.1.11, 192.168.1.12, 192.168.1.13.
Non abbiamo bisogno di configurare tabelle di routing visto che per questo tipo di configurazione
va bene l'indirizzamento diretto.
Andiamo sulla CLI del nostro router e mettiamo quindi:
access-list 101 deny icmp any any
access-list 101 permit tcp any any eq www
Sulla fa0/0:
ip access-group 101 in
Tramite la stringa host-unreachable comunichiamo un messaggio all'utente.
Proviamo infatti ad aprire la pagina che c'è sul server e possiamo visualizzarla, mentre il server non
dà risposta al ping.
Laboratorio 9 Packet Tracer
Ora vediamo come impostare il firewall direttamente da PC. Questa volta sarà un po' più semplice
in quando avremo una modalità grafica per inserire le ALC.
Creiamo una rete così fatta:
L'assegnazione dell'IP avviene attraverso DHCP (quindi dinamico grazie al server che ha IP
10.0.0.1).
Vogliamo imporre delle regole direttamente da PC in modo tale da poter comunque permettere il
DHCP, ma il PC0 non dovrà essere raggiungibile tramite ping.
Basterà configurare solo il PC0, quindi andiamo sull'etichetta desktop e poi clicchiamo su firewall:
A questo punto possiamo impostare le regole come in figura:
Ricordiamoci di attivare il servizio in alto a destra.
Ora proviamo a assegnare l'IP in maniera dinamica tramite il dhcp e poi a effetuare ping oppure ad
aprire una pagina sul server.
Laboratorio 10 Packet Tracer
Vogliamo ora configurare due reti 192.168.0.0/24 e 172.16.0.0/16 collegate da un router che a sua
volta è collegato direttamente con un server 10.0.0.1/8.
Il collegamento risulta abbastanza banale anche perche le tre reti comunicano attraverso
l'indirizzamento diretto, quindi non abbiamo bisogno di stabilire le route.
Vogliamo quindi che la rete 192.168.0.0/24 possa avere i servizi di WEB e DNS mentre devono
essere negati ICMP e FTP.
La configurazione della rete 172.16.0.0/16 dovrà essere opposta, WEB e DNS no mentre saranno
permessi ICMP e FTP.
Prima cosa impostiamo il servizio DNS che farà corrispondere al nome www.miosito.it l'indirizzo
10.0.0.1 tramite il DNS. Ne verifichiamo il funzionamento da uno qualsiasi dei PC.
Successivamente ci accertiamo che tutti i dispositivi possano pingare all'interno della rete e che il
servizio FTP sia funzionante (di default avrà user: cisco e pw: cisco).
Ora le ALC saranno impostate direttamente da server e in modalità grafica.
Per procedere a questa impostazione andremo a cliccare sull'etichetta desktop (come fatto in
precedenza per il PC).
Noteremo che questa volta non stiamo bloccando i pacchetti in uscita dai PC ma andremo a filtrare i
pacchetti in entrata al server.
Ricordando di attivare il servizio firewall:
Nega il ping da parte della rete 192.168.0.0/24 al server
Nega il servizio FTP da parte della rete 192.168.0.0/24 al server (FTP è un servizio su TCP che usa
la porta 21)
Permette il servizio DNS da parte della rete 192.168.0.0/24 al server (DNS è un servizio su UDP
che usa la porta 53)
Permette il servizio HTTP da parte della rete 192.168.0.0/24 al server (HTTP è un servizio su TCP
che usa la porta 80)
Le altre a seguire le regole opposte per l'altra rete:
Da notare che noi in quest'ultime due situazioni abbiamo filtrato i pacchetti direttamente in entrata
del dispositivo stesso.
Nelle situazioni precedenti filtravamo i pacchetti sull'interfaccia e non arrivavano al dispositivo o
alla rete interessata.
Forse la configurazione di firewall da router risulta più sicura.
Laboratorio 11 Packet Tracer
Vogliamo configurare una rete dove i router coinvolti hanno la funzione di nat.
Useremo tre reti:
• 200.10.0.0/24 (la rete con ip pubblico che collega due router)
• 10.0.0.0/8 (rete con ip privato per il server) per la quale useremo il nat static, che permette di
configurare le regole di nat per ogni indirizzo ip
• 192.168.1.0/24 (rete con ip privato per la rete di casa o aziendale) per la quale useremo il nat
overload, che permette di configurare le regole di nat per una rete intera
Andiamo quindi a configurare la rete in questa maniera:
Impostiamo le route in modalità statica:
• sul NAT OVERLOAD (cioè casalingo o aziendale):
ip route 0.0.0.0 0.0.0.0 s2/0
• sul NAT STATIC (cioè del server web);
ip route 0.0.0.0 0.0.0.0 s2/0
In questa maniera si configura una route da una lan verso l'ISP, lo vedremo più avanti con le reti
pubbliche. In poche parole vai a dire al router che tutto quello che non fa parte della tua rete lo
instradi sull'interfaccia che va all'esterno, quindi sulla seriale.
Ora andiamo sul router dell'ISP e digitiamo i seguenti comandi:
• per configurare il nat static dall'IP 10.0.0.254 (privato) con l'ip 200.10.0.2 (pubblico)
• per dire all'interfaccia s2/0 che è il nat outside
• per dire all'interfaccia fa0/0 che è il nat inside
ip nat inside source static 10.0.0.254 200.10.0.2
int s2/0
ip nat outside
int fa0/0
ip nat inside
Ora invece andremo sul router di casa (o aziendale...) e digiteremo:
• per definire una regola di accesso, che in realtà mi server per configurare un range di
indirizzi sui quali interverrà il nat in overload
• per configurare il nat overload dal range di indirizzi appena definito (privato) con l'ip della
porta seriale 2/0 (pubblico)
per dire all'interfaccia s2/0 che è il nat outside
per dire all'interfaccia fa0/0 che è il nat inside
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 interface s2/0 overload
int s2/0
ip nat outside
int fa0/0
ip nat inside
Ora la cosa interessante è andare a catture un pacchetto durante un ping da uno dei due pc al server
(ricordiamo che, avendo definito il nat anche per il server, non dovremo pingare il suo ip privato ma
quello pubblico....). Come potremo notare l'ip di partenza non è l'ip del mittente...
•
•
VPN
Le VPN (Virtual Private Network) costituiscono una rete logica privata che crea una connessione
(con dati cifrati) su una rete pubblica. In poche parole si riesce a creare delle reti private sulla base
della rete internet.
Con i giusti accorgimenti possiamo sniffare dei pacchetti da qualsiasi connessione... Quindi il
pacchetto risulta sempre e comunque visibile durante uno scambio di dati in rete (crittografato o
no). Tramite le VPN noi possiamo creare un "VPN Tunnel" dove i nostri pacchetti entrano e non
saranno più catturabili in chiaro a nessun sniffer. Il meccanismo usato è quello del tunneling.
Il tunneling permette di usare internet per creare connessioni sicure tra user remoti e reti private.
Ogni connessione sicura è chiamata tunnel.
Il tunnel chiaramente è bidirezionale.
Tramite il tunnelling si riesce a creare un'estensione della rete locale. In pratica sarà possibile
collegarsi da remoto, quindi da un dispositivo fisicamente lontano dalla LAN (ma pur sempre a
internet), ad una rete locale in maniera totalmente sicura.
Le reti VPN utilizzano collegamenti che necessitano di autenticazione in modo da garantire
l'accesso ai soli utenti autorizzati; per garantire la sicurezza che i dati inviati in Internet non siano
intercettati o utilizzati da altri non autorizzati, le reti utilizzano sistemi di crittografia.
Vengono usati gli standard dell' IPsec.
IPsec sta per IP security ed è una collezione di protocolli a livello rete:
• IKE: Internet Key Exchange serve per stabilire una security association (una SA è il
contratto che stabiliscono le due entità che scambiano informazioni). In sostanza è il
protocollo utilizzato per lo scambio delle chiavi per la codifica e l'autenticazione. Questo
protocollo genera chiavi di sessione diverse per ogni blocco di dati inviati. Lo scambio di
chiavi avviene attraverso l'algoritmo di Diffie-Hellman
• AH: authentication Header serve a garantire l'autenticazione dell'IP sorgente e l'integrità dei
dati, utilizzando la firma digitale , affinchè il destinatario possa essere certo che il pacchetto
sia stato generato dall'host corrispondente all'IP sorgente
• ESP: Encapsulation Security Payload usato in aggiunta a AH per garantire la riservatezza
attuando una cifratura del pacchetto IP
• NAT Traversal: se uno dei due peer coinvolti opera la funzione di NAT
• ISAKMP sta per Internet Security Association and Key Management Protocol. È un
protocollo per stabilire e creare le chiavi per criptare il traffico nel tunnel. Stabilisce
procedure per attivare o disattivare una SA
In IPsec un peer è un client sicuro e remoto.
Durante la negoziazione i peer stabiliscono prima il tunnel e poi come scambiarsi i dati attraverso il
tunnel.
La fase di negoziazione si divide in due:
• i due dispositivi devo accordarsi su
• l'algoritmo di crittografia (DES o Triple DES)
• l'algoritmo per controllare l'integrità del messaggio (MD5 o SHA-1)
• come autenticare le connessioni
• una volta accordati su questo devono ancora stabilire:
• Se usare AH
• Se usare ESP
• Quale algoritmo di crittografia per ESP e per AH
Possiamo stabile una VPN in due modalità:
• Site to site: la connessione virtuale sarà stabilita tra due router distinti e separati. Verrà
creato un tunnel virtuale che permetterà lo scambio di dati crittografati. I due dispositivi
coinvolti nel tunnelling dovranno essere configurati in modo simmetrico;
• Client user mode: la connessione virtuale sarà stabilita tra un client fisicamente posto
all'esterno e la LAN stessa. Dovrà essere configurato solo il router della LAN da
"virtualizzare". Sul pc che farà da client, che ci permetterà quindi la connessione su la LAN
virtuale, sarà presente un software client. Per avvviare il client l'utente avrà bisogno delle
credenziali che sono state stabilite in chiave di configurazione sul router. Il client potrebbe
trovarsi fisicamente "ovunque".
Laboratorio 12 Packet Tracer
Creiamo una connessione site to site tra due LAN. Prendiamo l'esempio come in figura:
Abbiamo la rete 192.168.0.0/24 e la rete 192.168.1.0/24; le due LAN sono collegate da una
10.0.0.0/8. Dobbiamo stabilire una connessione cifrata (tunnel virtuale) tra i due router.
Il router di sinistra sarà impostato nella seguente maniera:
crypto isakmp policy 10
(stabilisco la priorità ed entro in modalità crypto)
authentication pre-share
(usa chiavi prestabilite)
hash sha
(specifico l'algoritmo di hash)
encryption aes 256
(algoritmo per criptare)
group 2
(identificatore di gruppo del Diffie-Hellman per l'algoritmo di cifratura usato)
lifetime 86400
(stabilisce un tempo per la negoziazione ISAKMP)
exit
crypto isakmp key toor address 10.0.0.2
(stabilisce ISAKMP nell'altra interfaccia e indica quindi l'interfaccia dove termina il tunnel)
crypto ipsec transform-set TSET esp-aes esp-sha-hmac
(definiamo il protocollo IPSEC nominando la trasformazione TSET e l'algoritmo di crittografia da
usare, in questo caso useremo ESP per il controllo dell'integrità del dato)
access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.20.0 0.0.0.255
(dichiaro una regola acl)
crypto map CMAP 10 ipsec-isakmp
(definisco il nome di una funzione di crittografica CMAP)
set peer 10.0.0.2
(imposto anche in questo caso l'estremo del tunnel)
match address 101
(origine-destinazione dei pacchetti tramite le rule appena impostata)
set transform-set TSET
(abilito la trasformazione)
exit
interface fa0/1
crypto map CMAP
(attivo la funzione sull'interfaccia)
Ora salviamo e andiamo a dare le stesse impostazioni sul router di destra:
crypto isakmp policy 10
authentication pre-share
hash sha
encryption aes 256
group 2
lifetime 86400
exit
crypto isakmp key toor address 10.0.0.1
crypto ipsec transform-set TSET esp-aes esp-sha-hmac
access-list 101 permit ip 192.168.20.0 0.0.0.255 192.168.10.0 0.0.0.255
crypto map CMAP 10 ipsec-isakmp
set peer 10.0.0.1
match address 101
set transform-set TSET
exit
interface fa0/1
crypto map CMAP
A questo punto ho attivato il tunnel su entrambi i router e risultano connessi.
Infatti su questo canale (grazie alla rule impostata) non sarà possibile alcun collegamento se non
quello tra le due LAN e i pacchetti che viaggiano su di esso saranno cifrati.
Laboratorio 13 Packet Tracer
Questa volta creiamo una rete in modalità user client.
La rete è utilizzata è la stessa di prima, ho aggiunto solamente un pc sulla rete di sinistra e un server
su quella di destra:
Voglio configurare una VPN che permetta a qualsiasi utente di connettersi da una postazione
qualsiasi (in questo caso dalla rete 192.168.10.0/24), sulla rete 192.168.20.0/24, tramite un
programma (appunto cliente) installato sul proprio pc.
La configurazione dovrà essere fatta solo sul router di destra ed è simile a quella vista nell'esercizio
precedente:
aaa new-model
aaa authentication login default local none
aaa authentication login VPN local
aaa authorization network VPN local
username pippobaudo secret pippobaudo
(definisco un utenza per la VPN)
ip local pool VPNCLIENTS 192.168.20.20 192.168.20.50
(definisco l'intervallo degli indirizzi assegnati ai client della VPN)
crypto isakmp policy 10
authentication pre-share
encryption aes 256
group 2
ex
(come esercizio precedente)
crypto isakmp client configuration group VPNGROUP
key 123
pool VPNCLIENTS
netmask 255.255.255.0
ex
(definisco un gruppo per la mia utenza alla quale sarà assegnato un IP appartenente all'intervallo
sopra stabilito e la chiave)
crypto ipsec transform-set MIOSET esp-3des esp-sha-hmac
crypto dynamic-map MIADIN 10
set transform-set MIOSET
reverse-route
ex
(definisco un insieme e una funzione dinamica)
crypto map MIADIN client configuration address respond
crypto map MIADIN isakmp authorization list VPN
crypto map MIADIN 10 ipsec-isakmp dynamic MIADIN
crypto map MIADIN client authentication list VPN
(imposto la funzione dinamica)
int fa0/1
crypto map MIADIN
(setto la funzione dinamica sulla porta del router)
Ora vado su uno dei PC della rete 192.168.10.0/24 e vado in DESKTOP, dove trovo VPN:
Entro e vado a inserire:
Appena la VPN sarà funzionante compare:
Infatti possiamo andare a mandare un ICMP da questo host a un altro della rete 192.168.20.0/24 e
vado a analizzare il pacchetto in modalità simulation:
fino a quando il pacchetto non raggiunge la rete di destra avrà sempre come ip sorgente....
Appena passa dal router di sinistra.....