LINUXDAY 2007 Roma, 27 Ottobre 2007
IPCOP UNA DISTRIBUZIONE COME FIREWALL di Giuseppe Arrabito arrabito@inwind.it
www.ipcop.org
PROGRAMMA
1. SICUREZZA DELLE RETI LAN 2. LA DISTRIBUZIONE IPCOP 3. INSTALLAZIONE 4. CONFIGURAZIONE 5. MODULI AGGIUNTIVI: GLI ADDONS 6. CONCLUSIONI IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SICUREZZA DELLE RETI LAN
Una RETE INFORMATICA si può definire sicura quando: Consente l’accesso a sistemi, servizi e risorse solo a persone autorizzate Protegge la sicurezza e la privacy delle transazioni da e verso Internet Non è utilizzata da intrusi per condurre ulteriori attacchi
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
DEFINIZIONE DI FIREWALL La sicurezza di una rete si ottiene mediante dispositivi chiamati
FIREWALL Il firewall (lett. muro tagliafuoco) è un dispositivo hardware o software che permette di proteggere e quindi filtrare il traffico da e verso un singolo PC, o una rete LAN, al fine di evitare accessi non autorizzati. Il traffico diretto alla rete deve attraversare questo dispositivo creando una barriera inattaccabile con cui offrire sicurezza alla LAN Esso ispeziona il flusso di dati, intervenendo in base a regole che l’amministratore ha deciso. I firewall di ultima generazione hanno la caratteristica “stateful inspection” cioè di tener traccia delle connessioni che li attraversano verificandone lo stato. IPCOP: UNA DISTRIBUZIONE COME FIREWALL
TIPOLOGIE DI FIREWALL 1. PACKET FILTERING Si incarica di monitorare
ogni
singolo
pacchetto
in
entrata/uscita dalle proprie interfacce di rete valutando la possibilità di accettazione del singolo pacchetto in conformità ad apposite Access Control List. Analizza il traffico fino al livello
trasporto
della
pila
ISO-OSI
(discriminazione
IP
sorgente/destinazione, porta, MAC Address). 2. APPLICATION PROXY FIREWALL Garantisce il controllo d’accesso
a
livello
applicazione
attraverso un inserimento nel traffico client/server come intermediario
tra
la
rete
LAN
ed
Internet
garantendo
sicurezza, controllo e caching. Il suo scopo è quello di migliorare le perfomance della rete e di filtrare le richieste di accesso. IPCOP: UNA DISTRIBUZIONE COME FIREWALL
FUNZIONI DI UN FIREWALL
Un FIREWALL svolge, normalmente, le funzioni di filtro e mascheramento di pacchetti IP: INPUT
determina cosa può ARRIVARE
OUTPUT
determina cosa può USCIRE
FORWARDING
inoltra un pacchetto dall’interno verso l’esterno e viceversa
PRE/POSTROUTING
utilizzando la tecnica NAT maschera l’indirizzo reale dei PC di una lan, con il proprio
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
COME SI CONFIGURA UN FIREWALL
TUTTO CIO’ CHE NON ESPRESSAMENTE PERMESSO E’ PROIBITO AZIONE: Il firewall blocca tutto il traffico non previsto
TUTTO CIO’ CHE NON ESPRESSAMENTE PROIBITO E’ PERMESSO AZIONE: Il firewall blocca solo il traffico “ritenuto” dannoso
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
LIMITI DI UN FIREWALL
Non rileva la presenza di virus/spyware
Non protegge da vulnerabilità insite nei nostri servizi web
Non può controllare accessi fisici ai sistemi
Non protegge da attacchi iniziati
Non protegge da errori umani
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
LA DISTRIBUZIONE IPCOP
IPCOP IL FIREWALL
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
LA DISTRIBUZIONE IPCOP • IPCop è una mini-distribuzione GNU/Linux opensource adatta a realizzare un firewall hardware/software. Garantisce un’efficiente sicurezza perimetrale della rete impedendo intrusioni esterne non autorizzate • L’immagine iso di circa 45 MB è scaricabile direttamente dal sito
http://www.ipcop.org • IPCop è un’ottima soluzione per piccole reti, reti aziendali e SOHO. Può essere adattata ad ogni esigenza e può essere usata anche su hardware piuttosto datato • La sua gestione avviene mediante un'interfaccia Web accessibile da qualsiasi PC connesso alla rete ed anche da remoto • Il progetto IPCop è stato sviluppato dal 2001 e risulta ormai un prodotto maturo che riscuote successo in una vasta comunità di utilizzatori
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
MANIFESTO DEL PROGETTO IPCOP Offrire una distribuzione Firewall Linux stabile sicura e opensource. Creare ed offrire una distribuzione Firewall Linux estremamente configurabile. Offrire una distribuzione Firewall Linux di facile manutenzione. Offrire supporto affidabile agli utenti IPCop. Offrire un piacevole ambiente pubblico di assistenza e discussione. Offrire un sistema stabile sicuro e semplice di patching/updates. Sviluppare una relazione lunga e duratura con il proprio userbase. Adattare IPCop per soddisfare le necessitĂ di Internet. Sviluppare la conoscenza di Linux fra membri e utenti del progetto.
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
CARATTERISTICHE DI IPCOP
Firewall basato su Netfilter/Iptables con kernel 2.4.X File system ext3 e supporto device SCSI. Supporto per quattro interfacce di rete. Supporto modem (analogici, ISDN, ADSL). Supporto DMZ. Supporto server SSH per connessioni remote. Supporto server DHCP per due schede di rete. Gestione NAT/PAT. Supporto server NTP per sincronizzare data e ora a due schede. IDS (Intrusion Detection System) su tutte le schede di rete. Gestione VPN. Supporto proxy per il Web. Caching e Dynamic DNS. Logging avanzato per ogni tipo di servizio. Grafici di stato e di traffico. Amministrazione e gestione attraverso il browser (http e https). PossibilitĂ di patches e updates. Backup e Restore della configurazione. IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INTERFACCE DI RETE
Gli adattatori di rete sono individuati con dei colori: RED GREEN BLUE
rappresenta l’interfaccia connessa ad internet. rappresenta l’interfaccia per la rete interna. rappresenta l’interfaccia per una seconda rete interna o per una rete wireless. ORANGE rappresenta l’interfaccia per un’eventuale zona DMZ in cui si trovano server che offrono servizi all’esterno. L’applicazione minima prevede due interfacce di rete, quella verso internet (RED) e quella verso la rete locale (GREEN) da proteggere. Nel caso in cui esistono due reti locali che devono rimanere fisicamente separate (es. reti wi-fi) si utilizza anche l’interfaccia BLUE.
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
POLICY DI DEFAULT
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SCHEMA FUNZIONALE
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
REQUISITI HARDWARE
IPCop può essere installato su hardware obsoleto Gli sviluppatori hanno testato la versione 1.4.x su un 486sx25Mhz con 12Mb di RAM e 273Mb di HD
Installato su un vecchio PC permette di recuperarne l’hardware e di ottenere: Un ottimo Firewall stateful inspection (tiene traccia delle relazioni tra i pacchetti che lo attraversano) basato sul collaudatissimo Netfilter/Iptables di GNU/Linux La possibilità di velocizzare la performance della navigazione web attraverso l’attivazione di un Proxy Server (squid) Sistema di Intrusion Detection System (snort)
VECCHIO PC + IPCOP = OTTIMO FIREWALL IPCOP: UNA DISTRIBUZIONE COME FIREWALL
TIPI DI CONFIGURAZIONE
GREEN + RED (LAN + WAN) (2 schede di rete)
GREEN + ORANGE + RED (LAN + DMZ + WAN) (3 schede di rete)
GREEN + BLUE + RED (LAN + rete wi-fi + WAN) (3 schede di rete, 1 AP)
GREEN + BLUE + ORANGE + RED (LAN + rete wi-fi + DMZ + WAN) (4 schede di rete, 1 AP)
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
DOWNLOAD L’immagine ISO si può scaricare liberamente dal sito http://www.ipcop.org (ultima versione 1.4.16 - circa 45 Mb) N.B. E’ possibile in fase di installazione scegliere se abilitare o meno a livello kernel supporti USB o PCMCIA Se preferite una installazione con boot da dispositivi USB il sito IPCop mette a disposizione altre 3 immagini liberamente scaricabili: fdd
per dispositivi USB non partizionati
hdd
per dispositivi USB partizionati come HD
zip
per dispositivi ZIP o partizionati come ZIP
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE 1) Scaricare l’immagine ISO dal sito ufficiale www.ipcop.org (verificandone l’impronta MD5) 2) Masterizzare il file immagine ed effettuare il boot da CD-ROM 3) Selezionare la lingua preferita e la fonte di installazione
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE
Eseguiamo il partizionamento automatico del disco (Attenzione:TUTTI I DATI SARANNO CANCELLATI!!)
Segue la fase di installazione di IPCop
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE
Se si tratta di un ripristino, in fase di installazione, possiamo inserire il floppy con il backup della configurazione
Selezioniamo i driver per l’interfaccia di rete GREEN (automatico o manuale).
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Impostiamo l’indirizzo IP dell’interfaccia GREEN (Es. 192.168.1.2)
Abbiamo finito la prima parte dell’ installazione, rimuoviamo il CD e continuiamo
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE
Impostare i parametri di localizzazione Tastiera Timezone
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Impostiamo l’hostname e il nome dominio
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Configurare il dispositivo ISDN (disabilitare se non necessario)
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Impostare il tipo di rete in base al numero delle interfacce presenti (Es. GREEN + ORANGE + RED)
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Configurare TUTTE le rimanenti interfacce di rete (la GREEN è già configurata).
Configurare l’interfaccia RED in base al tipo di connessione stabilito con il proprio ISP IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Inserire i DNS della propria ed il Default Gateway
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Configurare il server DHCP (saltare se non interessa)
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE Impostare le password di root e dell’utente admin utilizzato per l’amministrazione via WEB di IPCop
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
INSTALLAZIONE L’installazione è terminata
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
CONFIGURAZIONE Aprendo il browser e digitando l’indirizzo https://192.168.1.1:445 o http://192.168.1.1:81 si presenterà la seguente pagina:
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
TIPOLOGIE DI SERVIZI SISTEMA
Inizio | Aggiornamenti | Password | Accesso SSH | Impostazioni interfaccia | Salvataggio | Arresto | Crediti
STATO
Stato sistema | Stato rete | Grafici di sistema | Grafici traffico | Grafici proxy | Connessioni
NETWORK Connessioni | Upload | Modem | Alias IP SERVIZI
Proxy | Server DHCP | DNS dinamico | Modifica host | Time server | Gestione banda | Rilevamento intrusioni
FIREWALL Port forwarding | Accesso esterno | DMZ pinholes VPN
VPN
LOG
Impostazioni log | Sommario log | Log proxy | Log di sistema IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: ACCESSO SSH Permette l’accesso alla shell di root.
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: ACCESSO ESTERNO Abilita l’accesso esterno al firewall
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: RILEVAMENTO INTRUSIONI Attiva il demone SNORT per l’IDS
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: PROXY Attiva il demone SQUID permettendo di tracciare la navigazione web
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: NTP Time Server: sincronizza IpCop con i time server locali
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: PORT FORWARDING Per garantire all’esterno l’accesso ad eventuali servizi interni
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: DMZ PINHOLES
Permette l’accesso dalla rete ORANGE e dalla BLU ai servizi della GREEN
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI: LA VPN Permette di stabilire un canale sicuro di comunicazione tra reti private
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
IPCOP: GLI ADDONS IPCop può essere reso più performante e più versatile mediante l’installazione di alcuni moduli o software aggiuntivi detti “ADDONS”.
ATTENZIONE Gli addons non sono ufficialmente riconosciuti !!
La lista dei siti web, dove scaricare gli addons in formato tar.gz, è presente sul sito ufficiale sezione “Addons”. I più forniti sono:
• •
http://firewalladdons.sourceforge.net http://www.mhaddons.tk
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI OPZIONALI
Gli addons possono essere installati in due modi: 1. Installazione tramite shell 2. Installazione lato web dopo aver installato Addon Server
Addon Server è un modulo che permette l’installazione di addons compatibili con la versione di IPCop utilizzata. Supporta l’installazione solamente degli addons disponibili nella relativa pagina web.
http://firewalladdons.sourceforge.net
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SERVIZI OPZIONALI
Scaricare dal sito http://firewalladdons.sourceforge.net l'ultima versione dell’ Addon Server e copiamo il file sul firewall e da una console impartiamo i seguenti comandi:
[root@ipcop ~]$ tar zxvf addons-2.3-CLI-b2.tar.gz -C [root@ipcop ~]$ cd addons [root@ipcop ~]$ ./addoncfg -i
IPCOP: UNA DISTRIBUZIONE COME FIREWALL
PRINCIPALI ADDONS
• BLOCK-OUT-TRAFFIC (www.blockouttraffic.de) Blocca tutto il traffico in uscita non autorizzato
• ADVPROXY (www.advproxy.net) Frontend avanzato di Squid
• URLFILTER (www.urlfilter.net) Web content filter basato su SquidGuard.
• COP+ (home.earthlink.net/~copplus) Web content filter basato su DansGuardian
• COPFILTER (www.copfilter.org) Scansiona e filtra il traffico da virus e spam
• OPENVPN (www.zerina.de) Per implementare in modo semplice una VPN IPCOP: UNA DISTRIBUZIONE COME FIREWALL
SOLUZIONI FIREWALL ALTERNATIVE ASTARO SECURITY LINUX
http://www.astaro.com
Distribuzione commerciale con comoda interfaccia web e notevoli funzionalità: firewall, VPN, antivirus, antispam, content filtering, antispyware, intrusion IDS
SMOOTHWALL http://www.smoothwall.org Storica distribuzione per firewall con la versione Express (free) e versioni commerciali. Supporto VPN, antivirus, antispam, content filtering, antispyware, intrusion detection, kernel 2.6.x
ENDIAN http://www.endian.it Progetto tutto italiano dedicato alla protezione delle reti. Esiste una versione opensource e una commerciale. Supporta in modo nativo antivirus, antispam, content filtering, IDS oltre ai normali servizi di firewalling e di rete
DEVIL LINUX http://www.devil-linux.org Può essere caricata direttamente da CD o USB. Ha un kernel hardened con GRSecurity e una interfaccia testuale per la gestione del sistema
M0n0WALL
http://www.m0n0.ch
Non è basata su Linux ma su FreeBSD. Ha una comoda interfaccia, supporto DHCPd, IPSEC, PPTP, SNMP. Notare che usa ipfilter e non iptables. IPCOP: UNA DISTRIBUZIONE COME FIREWALL
CONCLUSIONI VANTAGGI Si può installare su hardware obsoleto E’ opensource Non richiede un’approfondita conoscenza di GNU/Linux Non richiede la configurazione “a mano” dei pacchetti Il costo di una soluzione commerciale simile è elevato Si installa e si configura in pochi minuti Efficiente, stabile e sicuro SVANTAGGI Permette il PAT solo con l’IP configurato sull’interfaccia esterna Permette tutto il traffico della rete interna verso l’esterno Non permette la creazione di gruppi differenziati per traffico Attivando gran parte dei servizi necessita di più RAM (PROXY e IDS) Installare gli aggiornamenti potrebbe invalidare la funzionalità degli addons Non permette DMZ tramite routing diretto ma solo via NAT IPCOP: UNA DISTRIBUZIONE COME FIREWALL
RIFERIMENTI
PER MAGGIORI INFORMAZIONI
Giuseppe Arrabito IT Manager arrabito@inwind.it
GRAZIE A TUTTI Copyright (C) 2007 Giuseppe Arrabito <arrabito@inwind.it> La copia letterale e la distribuzione di questa presentazione nella sua integritĂ sono permesse con qualsiasi mezzo, a condizione che questa nota sia riprodotta. IPCOP: UNA DISTRIBUZIONE COME FIREWALL