Sei sulla pagina 1di 16

1.

CISCO PIX FIREWALL

1.1 Tecniche, configurazioni, logica e funzionamento dei firewall Cisco PIX 1.1.1 Cisco Pix: Configurazione di base Una configurazione di base di un PIX comprende la definizione delle interfacce, delle regole minime e delle impostazioni di default. Per definire gli indirizzi delle interfacce si usa un comando tipo: ip address interfaccia indirizzoIP maschera. I nomi delle interfacce sono di default outside, inf1, inf2 ... inside e hanno associato un livello di sicurezza da 0 (interfaccia esterna) a 100 (l'interfaccia inside). I nomi e i livelli di sicurezza delle interfacce si definiscono con nameif, i parametri di rete con ip address. Si impostano route statiche con route:
route interfaccia destinazione maschera gateway

Il default gateway si pu impostare con: route outside 0 0 IP_Gateway 1 (Si pu usare 0 per abbreviare 0.0.0.0) La logica del Pix a strati e applica la logica del natting per ogni passaggio fra interfacce con livello di sicurezza diverso. Le intefaccie interne, con maggiore livello di sicurezza, "emergono" e possono subire NAT e PAT con i comandi nat e global. Per accedere ad IP di interfacce interne, dall'esterno si usano i comandi static (fa natting e port forwarding) e il relativo uso di access list (ip access-list). Vediamo una configurazione di esempio minima, con la definizione di due interfacce e un PAT (masquerading) di tutti gli ip dell'interfaccia interna su un unico ip esterno. Alcuni parametri sono impostati di default.
Imposta i nomi e i livelli di sicurezza delle interfacce nameif ethernet0 outside security0 nameif ethernet1 inside security100 Imposta l'autonegoziazione della velocit dell'interfaccia interface ethernet0 auto interface ethernet1 auto Gli indirizzi IP e le relative maschere di sottorete ip address outside 222.222.222.1 255.255.255.0 ip address inside 10.0.0.1 255.255.255.0 Il nome dell'host hostname pixfirewall L'arp timeout, in secondi arp timeout 14400 Abilita il supporto di nomi (alias per identificare host e indirizzi

names Associa nome a degli indirizzi, per rendere pi semplice l'interpretazione delle regole name 10.0.0.75 web_interno name 222.222.222.10 web_esterno Ogni 24 righe di output blocca lo scorrimento e chiede se continuare pager lines 24 Abilita il logging, direzionabile su un syslog server, dei messaggi di debug logging buffered debugging Natta l'intera rete interna sull'indirizzo esterno .2 indicato da global. Notare il NatID 3 in comune nei due statement. nat (inside) 3 10.0.0.0 255.255.255.0 global (outside) 3 222.222.222.2 Imposta la default route, su un IP raggiungibile dall'interfaccia esterna route outside 0.0.0.0 0.0.0.0 222.222.222.254 1 Esegue un NAT statico per permettere l'accesso pubblico sull'IP 222.222.222.10 (web_esterno) ad una macchina con IP privato 10.0.0.75 (web_interno) static (inside, outside) web_esterno web_interno netmask 255.255.255.255 0 0 Se non si usano i name preimpostati, la sintassi diventa: static (inside, outside) 222.222.222.10 10.0.0.75 netmask 255.255.255.255 0 0 Quanto sopra descritto non basta per rendere accessibile la macchina interna (da un'interfaccia con livello di sicurezza inferiore). Va definita una acl per permettere l'accesso sulla porta 80 al server Web interno (usando il suo IP pubblico nattato) da qualsiasi indirizzo IP access-list accessoweb permit tcp any host web_esterno eq www E' analogo a: access-list accessoweb permit tcp any host 222.222.222.10 eq 80 Imposta l'acl accessoweb all'interfaccia esterna access-group accessoweb in interface outside I tempi di timeout sulle connessioni e tabelle di natting. Valori di default, generalmente validi, che possono essere ridotti quando il sistema sotto carico o attacco DOS e non ha risorse disponibili per gestire nuove connessioni. timeout xlate 3:00:00 timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00 timeout uauth 0:05:00 absolute Imposta gli MTU sulle interfacce (1500 di default su ethernet) mtu outside 1500 mtu inside 1500

1.1.1.1.1

Cisco Pix: Comandi base

Autore: al - Ultimo Aggiornamento: 2003-07-01 17:26:05 - Data di creazione: 2003-0701 17:26:05 Tipo Infobox: DESCRIPTION - Skill: 2- JUNIOR

Le attivit di configurazione e gestione di un Cisco Pix hanno una logica simile a quella dello IOS sui router e gli stessi comandi tendono, con le nuove release, a assomigliarsi. In particolare con la release 6.x, sono stati introdotti comandi comuni allo IOS ma stata mantenuta la compatibilit con i vecchi equivalenti. Come in qualsiasi OS multiutente, esistono utenti normali e privilegiati (enabled). Si diventa i root di un Pix con: Pix> enable Pix# Il prompt cambia da > a # Da qui si entra in modalit configurazione con:
configure terminal

Si salva la configurazione in memoria residente (NVRAM, FLASH..) con:


write memory

Si visualizza la configurazione corrente: write terminal oppure show running-config Si visualizzano i messaggi di log (da attivare in configurazione, possono restare in un buffer locale (che occupa memoria) o loggati su un syslog server remoto) con:
show logging

Si pu usare il ? o help per avere gli elenchi dei comandi e delle opzioni di un comando disponibili. Si esce dalla modalit di configurazione con exit o quit. I comandi possono essere abbreviati (es: conf term). Se si devono impostare grosse modifiche alla configurazione, preferibile fare un paste completo di un testo precedentemente scritto (con la sintassi verificata). Le impostazioni date in configurazione sono immediatamente attive, ma fino a quando non si salva la configurazione con un write mem vengono perse al reboot. Dopo aver configurato comandi che modificano lo stato dell'engine del Pix come alias, access-list, conduit, global, nat, outbound, static necessario dare il comando (in enable mode, non in configurazione):
clear xlate

Notare che questo resetta tutte le translazioni (NAT e PAT) correntemente gestite dal Pix e pu interrompere connessioni che il Pix sta gestendo. Come tutti i comandi clear pu avere dei risultati radicali, per cui va usato con attenzione. Comandi di diagnostica
show cpusage Informazioni minime sul CPU time utilizzato show memory La memoria totale e quella libera show processes I processi in esecuzione sul sistema show routing La tabella di routing show running-config Visualizza la configurazione corrente, su versioni del PixOS non recenti si usa write term. UTILE! show startup-config Visualizza la conf salvata in memoria residente. Prima era show configure show local-host Informazioni sulle connessioni e le xlate (tabelle di natting). UTILE! show traffic Visualizza info sul traffico di rete corrente

show version Visualizza la versione del Pix e altri dati del sistema. UTILE! show xlate Visualizza le tabelle di natting correnti show tech-support Esegue vari comandi di diagnostica (come i suddetti) per creare un testo da mandare al supporto tecnico in caso di guasti (o da esaminare per conoscere lo stato di un sistema). UTILE!

1.1.1.1.2

Configurare VPN IPSec sul Pix

Autore: al - Ultimo Aggiornamento: 2003-07-01 18:37:21 - Data di creazione: 2003-0701 18:37:21 Tipo Infobox: DESCRIPTION - Skill: 4- ADVANCED La configurazione di VPN IpSec sul Pix simile a quella su Cisco IOS e prevede parametri e una logica simile a qualsiasi altra implementazione IpSec. In genere, in fase di configurazione di una VPN basata su IpSec, si devono definire i seguenti parametri per i due peer (i dispositivi agli estermi del tunnel): - Algoritmi di criptazione (3des/des/aes) e hash (md5/sha) utilizzati - Scelta dell'opzione Perfect Forward Secrecy (PFS) e gruppo Diffie-Hellman (1 o 2) - Metodo di autenticazione (Pre-shared keys o certificati X509) - Indirizzi IP pubblici dei due peer (uno pu essere arbitrario, per client road warrior, che si collegano da IP diversi) e delle relative reti locali. - Durata in secondi delle Security Associations IpSec (SA). Il Pix pu stabilire VPN con altri PIX, router Cisco, Firewall Checkpoint e qualsiasi altro dispositivo che supporti IpSec, sia per tunnel lan to lan che per la gestione di roadwarrior. I comandi fondamentali sono isakmp con cui si gestiscono i parametri del protocollo IKE per la negoziazione di SA fra i peer nella prima fase del setup di un tunnel IpSec e crypto con vari sottocomandi per gestire i diversi aspetti della vpn. Vediamo gli elementi base di una configurazione di un pix con indirizzo pubblico 222.222.222.1/24 sulla interfaccia outside (esterna), e IP 10.0.0.1/24 sulla inside (interna, con un livello di sicurezza maggiore). Questo Pix viene configurato per assegnare a degli arbitrari client su Internet che si collegano utilizzando una pre-shared key un indirizzo preso dal pool 222.222.222.100110. Ecco gli elementi di configurazione necessari: Si definiscono i nomi e i livelli di sicurezza delle interfacce
nameif ethernet0 outside security0 nameif ethernet1 inside security100

Si definisce una acl che identifica i pacchetti del tunnel da escludere dal natting fra rete interna ed esterno
access-list 101 permit ip 10.0.0.0 255.255.255.0 222.222.222.100 255.255.255.255 access-list 101 permit ip 10.0.0.0 255.255.255.0 222.222.222.101 255.255.255.255

access-list 101 permit ip 10.0.0.0 255.255.255.0 222.222.222.102 255.255.255.255 ...

Indirizzo IP pubblico del Pix e relativa netmask


ip address outside 222.222.222.1 255.255.255.0

Indirizzo IP sulla rete interna

ip address inside 10.0.0.1 255.255.255.0

Definizione degli indirizzi assegnati ai client VPN. Il nome pool-indirizzi deciso dall'utente.
ip local pool pool-indirizzi 222.222.222.100-222.222.222.110

Si escludono dal natting della rete interna (definito sotto) gli IP che matchano la acl 101 e sono destinati al tunnel.
nat (inside) 0 access-list 101

Anche se non strettamente necessario per una VPN, logico prevedere che il PIX debba fate PAT (masquerading) della rete interna. Si definiscono gli indirizzi (sull'interfaccia inside) da nattare e, con il comando global, l'indirizzo IP, di solito pubblico, con cui devono apparire. Il numero 111 (NatID) deve corrispondere nei due comandi, usando altri numeri si possono definire diversi IP e relativi pool di indirizzi interni. Di default il NatID 1. Se si usa lo 0, come nella riga sopra, seguito da una acl, si definisce quali pacchetti escludere dal processo di natting:
nat (inside) 111 0 0 global (outside) 111 222.222.222.50

Definizione del default gateway (si ipotizza un 222.222.222.254). Si deve definire l'interfaccia da cui raggiungibile.
route outside 0.0.0.0 0.0.0.0 222.222.222.254

Indica al Pix di non considerare access-list e nat per permettere al traffico ipsec di arrivare alle interfacce (comodo, pratico e quasi indispensabile, in assegna di laboriose acl specifiche)
sysopt connection permit-ipsec

Si definisce il set di trasformazione (criptazione + hash) che devono subire i pacchetti nel tunnel. Possono coesistere pi set su tunnel diversi, che usano diversi algoritmi. E' indispensabile che client e server della VPN utilizzino esattamente gli stessi algoritmi.
crypto ipsec transform-set il_mio_set esp-des esp-md5-hmac

Le mappe dinamiche, hanno sintassi simili alle normali mappe, ma possono essere utilizzate per matching con client dalle caratteristiche non predefinite. Per tutti i parametri non esplicitamente definiti (indirizzo IP remoto, transform set, range definito da acl ecc) accettano qualsiasi valore (come se ci fosse una wildcard). La seguente riga associa una mappa dinamica definita dall'utente al trasform set indicato. La definizione di un trasform set obbligatoria in una dynamic map.
crypto dynamic-map la_mia_mappa_dinamica 10 set transform-set il_mio_set

A titolo d'esempio si segnalano altre entry che possono essere definite (ma non servono nel nostro caso) per questa dynamic map: crypto dynamic-map la_mia_mappa_dinamica 10 match address 155 # La mappa si applica ai pacchetti definiti nella acl 155 crypto dynamic-map la_mia_mappa_dinamica 10 set pfs # Forza e richiede l'uso di PFS Un Pix pu avere pi mappe, per gestire diversi tunnel. Queste hanno un nome (la_mia_mappa) e un sequence number che ne identifica l'ordine di preferenza. Devono restare gli stessi quando si definiscono le caratteristiche della stessa mappa. La riga che segue associa ad una mappa dell'utente la mappa dinamica sopra definita (l'uso di mappe dinamiche necessario quando alcuni parametri sono flessibili e non possono essere definiti a priori):
crypto map la_mia_mappa 10 ipsec-isakmp dynamic la_mia_mappa_dinamica

Per assegnare dinamicamente gli indirizzi si deve attivare la IKE Mode Config. Con questa riga il PIX prova ad assegnare un IP al client che si collega (preso nel range pool-indirizzi precedentemente definito):
crypto map la_mia_mappa client configuration address initiate

Con questa riga il Pix accetta eventuali indirizzi proposti dal client (non dovrebbe essere indispensabile, nel nostro caso)
crypto map la_mia_mappa client configuration address respond

Si applica la crypto map alla interfaccia esterna. Questo comando fondamentale e di fatto quello da inserire a fine configurazione per rendere attiva la crypto map. Va specificata l'interfaccia su cui passano i pacchetti da sottoporre alla mappa di criptazione. Notare che pu essere specificato solo un set di mappe per singola interfaccia. Un set di mappe deve avere mappe con lo stesso nome, ed eventuale sequence number diverso. Se ci sono mappe con nomi diversi, queste non appartengono allo stesso set e non possono essere contemporaneamente applicate alla stessa interfaccia. Quindi, se per esempio sull'interfaccia esterna di un Pix terminano, oltre ai client road warrior, del nostro caso, anche altri tunnel lan-to-lan, questi devono essere definiti nella mappa la_mia_mappa con sequence number diversi.
crypto map la_mia_mappa interface outside

Qui si definiscono i parametri con cui gestire IKE, un protocollo che facilita la creazione automatica di SA nella fase 1 della negoziazione IpSec. Si abilita la possibilit di negoziare IKE sull'interfaccia esterna:
isakmp enable outside

Se si utilizza IKE con un metodo di autenticazione basato su una chiave precedentemente scambiata, questa si definisce nel modo seguente (qui il peer remoto un qualsiasi indirizzo, ma pu essere un IP specifico per tunnel lan to lan): isakmp key chiave_pre_shared address 0.0.0.0 netmask 0.0.0.0

Oltre che con questo comando ( possibile inserirlo pi volte per diversi peer), possibile definire la chiave con i vpngroup sotto definiti. Definisce secondo quale criterio (indirizzo IP o nome) i due peer creano la SA IKE. La stessa scelta va fatta su entrambi i lati, se non si usano chiavi RSA per le quali meglio usare hostname, il valore di default :
isakmp identity address

Si definisce quale il pool di indirizzi da assegnare ai client:

isakmp client configuration address-pool local pool-indirizzi outside

Si impostano le policy con cui gestire la negoziazione IKE specificando un numero di priorit (da 1 a 65534, qui 20). In particolare, nell'ordine: tipo di autenticazione, tipo di criptazione, algoritmo di hash, gruppo Diffie-Hellman, durata in secondi della SA:
isakmp isakmp isakmp isakmp isakmp policy policy policy policy policy 20 20 20 20 20 authentication pre-share encryption des hash md5 group 2 lifetime 86400

Cisco permette una configurazione del tunnel estremamente semplice nei suoi VPN Client (versione 3.x) e nei prodotti che supportano la modalit Easy VPN Remote. Questo possibile passando vari parametri di rete al client tramite il comando vpngroup (da usare solo con client Cisco). Qui viene definitivo il nome del gruppo (paragonabile ad una login) e la relativa password, oltre agli indirizzi IP di server dns, wins e dominio di default:
vpngroup vpngroup vpngroup vpngroup vpngroup nome_gruppo nome_gruppo nome_gruppo nome_gruppo nome_gruppo dns-server 10.0.0.25 wins-server 10.0.0.25 default-domain intranet idle-time 1800 password la_password_di_gruppo

Altri parametri sono configurabili, come un pool di indirizzi da assegnare allo specifico gruppo, utile per assegnare diversi pool di indirizzi a diversi gruppi, e in alternativa al pool definito con isakmp client configuration address-pool: vpngroup nome_gruppo address-pool pool_indirizzi Oppure una access-list (in questo caso la 89) con cui si definiscono quali pacchetti criptare nel tunnel e quali lasciare al di fuori del canale criptato: vpngroup nome_gruppo split-tunnel 89 1.1.1.1.3 Pix: la famiglia di firewall Cisco

Autore: al - Ultimo Aggiornamento: 2003-06-29 12:28:15 - Data di creazione: 2003-0629 12:28:15 Tipo Infobox: DESCRIPTION - Skill: 2- JUNIOR Cisco, il maggiore produttore al mondo di router, da anni produce delle network appliance dedicate alla sicurezza: la famiglia di firewall Pix. Tutti i modelli pi recenti appartengono alla serie 500, dal pi piccolo, il 501, dedicato a piccole reti o telelavoratori, al 535, per grandi e affollati network.

Sui Pix, che hanno varie parti hardware comuni a normali computer (processore Intel, schede di rete fast ethernet o gigabit ecc), gira un sistema operativo dedicato, giunto al momento alla versione 6.3, ma con ancora largo utilizzo delle versioni 5.x e 6.x. Le feature offerte dai Pix variano a seconda del modello e della versione del sistema operativo installata, in genere quanto segue si applica almeno a Pix 505 o superiori con OS versione 6.x - Stateful inspection firewall, con logica basata su access-list a catena e moduli per gestire protocolli quali Ftp, RTSP, H.323, SIP - Gestione NATttin PATting (il masquerading del mondo Linux) - Gestione tramite command line o via web tramite Pix Device Manager (integrato) e software di gestione come Cisco Works - Supporto di VPN IpSec, PPTP, L2TP. Supporto di IKE, NAT/PAT traversing e autenticazione IpSec con shared-keys e certificati x509, criptazione DES, 3DES, AES (256 bit) - Supporto VLAN, SNMP, e OSPF (sebbene sia improprio usare un Pix come un router) - DHCP, telnet, NTP client e server - Meccanismi di intrusion detection con logging remoto - Authentication, Authorization, Accounting (AAA) con supporto TACACS+ e RADIUS Le caratteristiche e i costi dei Pix variano parecchio. Si riportano i dati ufficiali Cisco sulle performance (considerare che in condizioni reali il throughput effettivo quasi sempre inferiore a quello indicato come Cleartext throughput, su questo influiscono il numero di access-list, VPN, translazioni di NAT ecc.) e sulla architettura dei sistemi (sostanzialmente basati su architettura Intel I386, con slot PC a 33 e 66 Mhz, memoria SDRAM e cache di secondo livello). PIX 501 - Appliance con HUB di 4 porte RJ45 per piccoli uffici o telelavoratori. Ha due porte fast-ethernet (outside e inside) per una rete pubblica ed una LAN privata. Cleartext throughput: 60 Mbps Concurrent connections: 7500 56-bit DES IPsec VPN throughput: 6 Mbps 168-bit 3DES IPsec VPN throughput: 3 Mbps 128-bit AES IPsec VPN throughput: 4.5 Mbps Simultaneous VPN peers: 10 (numero massimo di SA supportate) Processor: 133-MHz AMD SC520 Processor Random access memory: 16 MB of SDRAM Flash memory: 8 MB System bus: Single 32-bit, 33-MHz PCI PIX 506E - Maggiore throughput, senza HUB. Per piccoli uffici. Ha due porte fast-ethernet (outside e inside) per una rete pubblica ed una LAN privata. Cleartext throughput: 100 Mbps Concurrent connections: 25,000 56-bit DES IPsec VPN throughput: 20 Mbps 168-bit 3DES IPsec VPN throughput: 17 Mbps 128-bit AES IPsec VPN throughput: 30 Mbps

Simultaneous VPN peers: 25 Processor: 300-MHz Intel Celeron Processor Random access memory: 32 MB of SDRAM Flash memory: 8 MB Cache: 128 KB level 2 at 300 MHz System bus: Single 32-bit, 33-MHz PCI PIX 515E - Occupa 1 Rack Unit, ha uno slot PCI per un modulo (scheda) espandibile e supporta il failover. Ha 2 interfacce fast-ethernet che possono arrivare a 6 tramite moduli aggiuntivi. Cleartext throughput: 188 Mbps Concurrent connections: 130,000 168-bit 3DES IPsec VPN throughput: Up to 140 Mbps with VAC+ or 63 Mbps with VAC 128-bit AES IPsec VPN throughput: Up to 135 Mbps with VAC+ 256-bit AES IPsec VPN throughput: Up to 140 Mbps with VAC+ Simultaneous VPN tunnels: 2000 Processor: 433-MHz Intel Celeron Processor Random access memory: 32 MB or 64 MB of SDRAM Flash memory: 16 MB Cache: 128 KB level 2 at 433 MHz System bus: Single 32-bit, 33-MHz PCI PIX 525 - Occupa 2 Rack Unit, ha 3 slot PCI espandibili e supporta il failover. Ha 2 interfacce fast-ethernet che possono arrivare a 10, oppure avere 3 gigabit ethernet, tramite schede aggiuntive. Cleartext throughput: 330 Mbps Concurrent connections: 280,000 168-bit 3DES IPsec VPN throughput: Up to 155 Mbps with VAC+ or 72 Mbps with VAC 128-bit AES IPsec VPN throughput: Up to 165 Mbps with VAC+ 256-bit AES IPsec VPN throughput: Up to 170 Mbps with VAC+ Simultaneous VPN tunnels: 2000 Processor: 600-MHz Intel Pentium III Processor Random access memory: 128 MB or 256 MB of SDRAM Flash memory: 16 MB Cache: 256 KB level 2 at 600 MHz System bus: Single 32-bit, 33-MHz PCI PIX 535 - Occupa 3 Rack Unit, ha 4+5 slot PCI espandibili e supporta il failover. Ha 2 interfacce fast-ethernet a cui si possono aggiungere quelle (fast-ethernet e gigabit ethernet) dei moduli PCI aggiuntivi. Cleartext throughput: 1.7 Gbps Concurrent connections: 500,000 168-bit 3DES IPsec VPN throughput: Up to 440 Mbps with VAC+ or 100 Mbps with VAC 128-bit AES IPsec VPN throughput: Up to 535 Mbps with VAC+

256-bit AES IPsec VPN throughput: Up to 440 Mbps with VAC+ Simultaneous VPN tunnels: 2000 Processor: 1-GHz Intel Pentium III Processor Random access memory: 512 MB or 1 GB of SDRAM Flash memory: 16 MB Cache: 256 KB level 2 at 1-GHz System buses: Two 64-bit, 66 MHz PCI, one 32-bit, 33-MHz PCI I moduli aggiuntivi sono sostanzialmente schede PCI, per Pix 515 e superiori con le seguenti feature: - Scheda fast-ethernet con 1 porta RJ45 (fuori produzione?); - Scheda fast-ethernet con 4 porte RJ45; - Scheda gigabit-ethernet con 1 porta in fibra SX multimodale; - VPN Accellerator Card (VAC) per accellerazione hardware di DES e 3DES per tunnel IPSec; - VPN Accellerator Card + (VAC+) con maggiore potenza e supporto DES, 3DES, AES. Dalla versione 6 del Pix Firewall Operating System (PixOs, per comodit) incluso Cisco Device Manager (PDM), uno strumento per configurare e gestire il PIX con relativa semplicit. E' sostanzialmente una applet Java, che viene eseguita sul browser ma visualizzata e scaricata via https direttamente dal Pix. Interviene sulle stesse configurazioni che si possono gestire "a mano" via CLI. Le versioni attualmente supportate sono la 2.0 (presente nel PixOS 6.2) e la 3.0 (PixOS 6.3). La 1.0 presente in PixOS 6.0, 6.1. Con le nuove versioni la sintassi dei comandi del PixOS tende sempre pi ad essere simile a quella del normale IOS dei router Cisco (anche se rimangono due sistemi totalmente diversi). La versioni 5.x (da 5.0 a 5.3) e in misura minore 4.x (da 4.0 a 4.5) sono ancora utilizzate, hanno tendenzialmente meno features delle versioni recenti, possono non supportare i nuovi hardware e avere bug, poi corretti, di varia natura. Nuove versioni del PixOs vengono rilasciate in numero relativamente limitato, non esiste l'intricata ragnatela di versioni diverso come per lo IOS e una ogni versione resa pubblica va considerata una "General Deployment" (pronta per ambienti di produzione). Le pi recente prevedono meccanismi di autoaggiornamento. Il costo del PixOS incluso nel prezzo dell'hardware, ma alcune funzionalit richiedono l'acquisto di licenze software aggiuntive (attivabili con adeguate activation keys che di fatto agiscono su una immagine del PixOs comune). Alla versione base, restricted (R), con supporto DES di un limitato numero di utenti contemporanei, si aggiungono versioni unrestricted (UR) senza limiti software sul numero massimo di connessioni, failover (FO), con supporto del failover automatico ( necessaria una coppia di Pix uguali). Per il supporto di 3DES e AES inoltre richesta una licenza aggiuntiva, a parte. Cisco offre anche i Firewall Services Modules che implementano, come moduli aggiuntivi le funzionalit di firewalling del PixOs su switch Catalyst 6500 e router Cisco 7600.

A parte i Pix pi antichi, le versioni recentemente dismesse, ma che ancora comune trovare in produzioni, sono: Pix 520 (sostituito dal 525, smesso di essere venduto dal 23 Giugno 2001, stato l'ultimo ad avere il tradizionale ed inconfondibile floppy disk); Pix 515 (sostituito dal 515E, End Of Sale (EOS): 24 Maggio 2002); Pix 506 (sostituito dal 506E, End Of Sale (EOS): 24 Maggio 2002). 1.1.1.1.4 Monitorare le performance di un Pix

Autore: al - Ultimo Aggiornamento: 2003-07-01 19:41:34 - Data di creazione: 2003-0701 19:41:34 Tipo Infobox: TIPS - Skill: 3- INTERMEDIATE Quando il network lento, il firewall ha funzionamenti erranti e tutto sembra complicarsi utile avere gli strumenti di base per diagnosticare eventuali problemi o condizioni di stress di un Pix. Oltre ad accorgimenti minimi, in fase di configurazione, sono disponibili alcuni comandi validi per capire cosa succede al proprio Pix. Le informazioni qui riassunte derivano da un interessante nota tecnica presa dal sito Cisco e linkata come fonte, in questo caso sostanzialmente unica, di questo testo. Interfacce di rete Per un Pix fondamentale avere interfacce di rete che non perdono pacchetti per problemi fisici o di configurazione a livello di data link. Come per ogni server o dispositivo di rete, destinato ad essere collegato stabilmente ad una porta di uno switch, opportuno settare manualmente velocit e duplex del link, sia sull'interfaccia del Pix, che sulla relativa porta dello switch. Il settaggio automatico di default, pu ritardare la negoziazione del link (problema solo iniziale) e, se unilaterale, pu dare problemi di duplex mismatch. Nel dubbio impostare un full duplex a 10 o 100, verificando la bont dei cavi utilizzati e la mancanza di interferenze. A livello della porta dello switch, inoltre, opportuno rimuovere la negoziazione automatica di etherchannel e trunking (su un Pix, di solito, non si usano: l'etherchanneling non supportato, mentre il trunking VLAN lo solo dalla release 6.x). Pu essere inoltre utile attivare il PortFast (o Fast Start) Forwarding a livello della porta di uno switch (Cisco) a cui collegato il Pix. In genere problemi fisici di rete si rivelano con percentuali relativamente alte nei counter dei runts, input errors, CRC, frame sulle interfacce di rete. Logging e troubleshooting Il Pix supporta il logging su un syslog server remoto, che pu essere molto comodo per tenere sotto controllo messaggi di errore e attivit di debugging. Le attivit di logging possono essere piuttosto pesanti e degradare le prestazioni del sistema. In genere vale la pena impostare il livello di log a debugging solo in caso di attivit di troubleshooting diretto, altrimenti attivare il logging su un syslog server remoto (qui 10.0.2.150) con minore verbosit:
logging on

logging host 10.0.2.150 logging trap warning

Rallentamenti per timeout di identd e reverse DNS lookup Spesso delle prestazioni di rete deludenti dipendono dalla implementazione di determinati protocolli pi che da veri problemi di networking. In particolare accade che alcuni server (ftp, telnet, smtp...) a seconda di come sono implementati e configurati eseguano delle query identd (un protocollo di identificazione dell'utente che si collega al servizio, di fatto totalmente inutile) o DNS (reverse lookup per ottenere il nome di un host di cui si sa l'indirizzo IP) relative ai client che si collegano. Se a queste query non vengono fornite risposte rapide (perch sul client gira un server identd, o stato configurato il reverse del suo IP sul server DNS utilizzato), l'utente deve attendere che le stesse vadano in timeout prima di accedere al servizio remoto. Per risolvere questo tipo di problemi (si manifestano tipicamente in alti tempi di attesa al momento di un collegamento ad un server e poi a successive normali velocit di interazione) si pu intervenire in vari modi: - Disattivare a livello del server in questione l'uso di query identd o reverse DNS. - Configurare sui propri server DNS (quelli che vengono usati dalle macchine su cui girano i servizi interessati) le zone di reverse (in-addr.arpa) per tutti gli IP dei client che si collegano (se possibile). - Mettere a mano negli /etc/hosts dei server il mapping IP del client remoto e relativo nome (soluzione sporca ma rapida). - Configurare il Pix per rispondere con un esplicito e definitivo RST alle richieste Identd che gli arrivano sulle interfacce. Il comando da usare : service reset inbound associato ad access-list che bloccano i pacchetti identd (tcp/113). In questo modo il Pix non droppa silenziosamente i pacchetti filtrati ma risponde con un RST al client. Notare che questo comando vale per ogni connessione e causa un maggiore carico dovuto ai pacchetti TCP RST di risposta. Comandi Utili per valutare l'utilizzo delle risorse La command line del PIX presenta vari comandi utili per valutare lo stato delle risorse disponibili. Quelle pi importanti sono la memoria, la CPU time, la disponibilit di buffer per i pacchetti in coda, il numero di translazioni e connessioni gestite.
show cpu usage

- Visualizza l'utilizzo di CPU negli ultimi 5 secondi, 1 minuto, 5

minuti. Le attivit che consumano pi CPU sono la criptazione di dati per le VPN e in parte il logging in locale (meglio loggare su remoto, senza esagera in verbosit). Per vedere il dettaglio della CPU utilizzata dai singoli processi utilizzare show processes e tenere d'occhio in particolare la colonna runtime, e come questa varia dopo alcuni minuti. Di fatto indica quanto CPU time in millisecondi stata utilizzata da un processo dall'avvio. Il processo 557poll dovrebbe essere quello pi oneroso, in quando controlla il traffico sulle interfacce fastethernet. Se il processo Logger occupa troppe risorse su un sistema sotto stress vale la pena disattivare o ridurre ogni forma di logging. - Visualizza la memoria RAM totale e quella disponibile. Il Pix carica in RAM rispettivamente l'immagine del sistema operativo, la configurazione,
show memory

alloca spazio per i buffer (blocks) e tiene in memoria le tabelle di natting (xlate) e le connessioni che sta gestendo. Generalmente una volta terminato il boot, la RAM occupata reta stabile, e tende ad aumentare solo sotto grossi carichi di traffico. Se la RAM finisce il Pix, probabilmente, si inchioda. - Visualizza i blocchi di buffer liberi per i pacchetti che il Pix sta gestendo. L'output si divide secondo le dimensioni dei pacchetti (in genere il normale traffico messo in blocchi da 1550 byte, mentre i pacchetti per il logging remoto o la sincronizzazione delle informazioni di failover stateful sono in blocchi da 256 byte) e alcuni counter che rappresentano rispettivamente il Massimo numero di blocchi disponibili (MAX), il numero minimo di blocchi liberi raggiunti (LOW) e il numero corrente di blocchi disponibili (CNT). Quando il CNT arriva a zero, il Pix alloca menoria per ulteriori blocchi (fino ad un massimo di 8192), se questo non basta, inizia a droppare pacchetti. E' normale aver il LOW a 0 per blocchi da 256 e 1550, ma se il CNT costantemente a 0 il Pix potrebbe non bastare a gestire adeguatamente il traffico che gli viene sottoposto.
show blocks show traffic - Visualizza informazioni sul traffico passato per interfaccia. Utilizzare clear traffic per azzerare i relativi contatori. show interface - Visualizza altri dati sulle interfacce, gli errori e i pacchetti trasferiti.

Il

contatore no buffers indica quanti pacchetti sono stati droppati per esaurimento dei blocks, le collisions non dovrebbero esistere su interfacce in full duplex e su quelle in half duplex non dovrebbero superare il 10% di tutti i pacchetti in entrata e in uscita. Se uno dei counter degli errori aumenta costantemente esiste un problema che va risolto in quanto intacca sicuramente le performance. - Comodo per vedere il numero di connessioni, xlates e altri operazioni che il router sta gestendo. Da valori in numero al secondo correnti e medi.
show perfmon

- Visualizza le traslazioni che il Pix sta gestendo (NAT, PAT). Se si vogliono visualizzare soltanto i totali, senza il dettaglio delle singole xlate, digitare show
show xlate xlate count

Analogamente show conn mostra le connessioni TCP e UDP correnti e show conn count dei valori riassuntivi. Sempre in termini di traffico gestito, show local-host fornire ulteriori informazioni interessanti. Un numero esagerato di connections pu essere sintomo di un DOS attack, un numero esagerato di xlate pu indicare attivit di spoofing da parte di un host interno (sintomo di una potenziale violazione dello stesso). E' possibile, in configurazione, definire i tempi di timeout per connessioni e translazioni, vanno generalmente abbassati, rispetto ai valori di default, se si sotto attacco DOS. Pix Device Manager (PDM) Il PDM stato introdotto dalla release 6.0 del Pix Operative System. Permette la configurazione e il monitoring di un Pix via browser, fra le sue caratteristiche permette di visualizzare dati storici su vari parametri. Questi dati possono essere visualizzati anche via command line con comandi tipo show pdm history 10m snapshot. Per attivare

questo meccanismo di raccolta informazioni si deve interventire in conf mode con pdm history enable. 1.1.1.1.5 Pix: Utilizzare Certification Authority (CA) per VPN IpSec

Autore: al - Ultimo Aggiornamento: 2003-06-25 00:26:08 - Data di creazione: 2003-0625 00:26:08 Tipo Infobox: TIPS - Skill: 5- SENIOR Sul Pix l'alternativa all'uso di pre-shared keys per autenticare i due peer di un tunnel IpSec usare i certificati X.509 gestiti da una CA (Certification Authority come Verisign o una propria gestita internamente). La configurazione del tunnel sostanzialmente la stessa, nei due metodi, cambia il comando per assegnare isakmp policy 10 authentication pre-share - Per usare chiavi (password) prestabilite isakmp policy 10 auth rsa-sig - Per usare firme digitali certificate da una CA Cambiano ovviamente i comandi specifici per definire la chiave prestabilita o la gestione di una CA. E' fondamentale configurare un nome di host e di dominio per il proprio Pix e mantenerlo coerente con quello registrato presso la CA:
hostname superpix domain-name miodominio.it

A questo punto, sempre in conf mode, vanno digitati dei comandi che servono per stabilire un contatto con la CA, non tutti vengono salvati nella configurazione. Assicurarsi di avere l'ora del Pix settata sul fuso orario di Greenwitch GMT, in quanto molte CA si basano sul GMT per le date di assegnazione e revoca dei certificati. Si generano le chiavi RSA del Pix (una volta dato il comando viene visualizzata a video):
ca generate rsa key 512

Le chiavi vengono salvate su un file autonomo sulla flash. Per visualizzarlo: show ca my rsa key . 512 la lunghezza in bit del modulo. Pi grande pi le chiavi sono sicure ma lungo il processo di criptazione. Un valore ragionevole 768. Ci si registra presso la CA (anche questi comandi non vengono salvati e vanno dati una volta sola). Usare un nome univoco per la CA, che verr usato nel resto della configurazione, qui un FDQN (pu essere imposto dalla CA) ma pu essere anche una singola parola come mia_ca. Specificare poi l'IP con cui raggiungerlo, eventualmente seguito dall'URL completo con vi si accede via HTTP al server CA (cgi-bin/pkiclient.exe il valore di default):
ca identity ca-server.esempio.it 10.0.100.20:cgi-bin/pkiclient.exe

Si imposta un tentativo ogni 2 minuti per 20 volte per contattare la CA. L'invio di CRL (Certificate Revocation List) da parte della CA opzionale. ca configure ca-server.esempio.it ra 2 20 crloptional

I due suddetti comandi restano salvati nella configurazione. Ci si autentica presso la CA configurata. Assicurarsi che il certificato per il proprio Pix sia stato creato sul server della Certification Authority (proprio o esterno) e di avere la password per registrare (enrollment) il proprio Pix sul server (questi comandi NON vengono salvati in configurazione):
ca authenticate ca-server.esempio.it ca enroll ca-server.esempio.it password serial L'opzione serial invia alla CA un numero seriale del Pix.

La password va ricordata (non viene salvata) in quanto necessaria se si vuole revocare o rinnovare l'enrollment. A questo punto si pu verificare se ci si registrati correttamente con la ca con il comando show ca certificate Se tutto a posto e il certificato stato ottenuto, salvare le impostazioni con ca save all. Questo comando, che non viene salvato in configurazione, va reimpostato ogni volta che si modifica, cancella o alterna qualche impostazione con il comando ca. Il resto della configurazione simile a quello di un normale tunnel IpSec, salvo dove si configura IKE per usare i certificati:
isakmp policy 10 auth rsa-sig

1.1.1.1.6

Cisco Pix: Capture Session

Autore: stargazer - Ultimo Aggiornamento: 2009-01-15 09:41:21 - Data di creazione: 2009-01-15 09:38:17 Tipo Infobox: DESCRIPTION - Skill: Spesso puo' presentarsi la necessita' di sniffare il traffico che passi sulle interfacce di un firewall a fini di troubleshooting, ad esempio per verificare se un problema di connettivita' possa essere dovuto a problematiche degli host od al set di regole. Pur non esistendo tcpdump, e' possibile effettuare una verifica del traffico che passa dalle interfacce tramite il comando capture. In particolare per effettuare un capture e' necesssario creare un'acl che definisca il traffico al quale si e' interessati, ed associare il relativo capture ad un'interfaccia. A titolo esemplificativo, ipotizziamo di avere un firewall con diverse interfacce, tra cui due di esse chiamate lan_A e lan_B, e di volere verificare se sia possibile effettuare connnessioni in remote desktop dall'host 10.63.1.27 della Lan_A verso 10.63.2.111 appartenente alla rete collegata all'interfaccia Lan_B. Innanzitutto e' necessario creare un'access-list che definisca il traffico in questione:
access-list prova_capture extended permit tcp host 10.63.1.27 host 10.63.2.111 eq 3389

Definita l'access list, essa deve essere associata tramite un capture alle interfacce che si vogliono monitorare. Nel nostro caso si vuole verificare se il traffico passi correttamente dalle interfacce collegate alle due reti, Lan_A e Lan_B:

capture capture_a access-list prova_capture interface lan_A capture capture_b access-list prova_capture interface lan_B

Con il comando show capture, e' possibile vedere i capture in corso ed i byte gia' catturati. Per vedere invece i dettagli dei nostri due capture:
show capture capture_a show capture capture_b

Una volta completata l'analisi, i due capture possono essere eliminati con il comando no capture:
no capture capture_a no capture capture_b