GNU/Linux e i firewall



Похожие документы
GNU/Linux e i firewall

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall

Tre catene (chains) di base, si possono definire altre catene (convenzionalmente in minuscolo)

Filtraggio del traffico IP in linux

Sicurezza nelle reti

Appunti configurazione firewall con distribuzione Zeroshell (lan + dmz + internet)

FIREWALL. Firewall - modello OSI e TCP/IP. Gianluigi Me. me@disp.uniroma2.it Anno Accademico 2005/06. Modello OSI. Modello TCP/IP. Application Gateway


Lezione n.9 LPR- Informatica Applicata

Indice. Prefazione XIII

INTRODUZIONE ALLE RETI: UN APPROCCIO PRATICO

Packet Filter in LINUX (iptables)

Crittografia e sicurezza delle reti. Firewall

Corso avanzato di Reti e sicurezza informatica

Lo strato di trasporto Firewall e NAT

Iptables. Mauro Piccolo

PROGRAMMAZIONE MODULARE Disciplina: SISTEMI E RETI Classe: QUINTA A INF SERALE Indirizzo: INFORMATICA

La sicurezza delle reti

Tappe evolutive della rete Internet

Protocollo TCP/IP & Indirizzamento IP

TCP e UDP, firewall e NAT

esercizi su sicurezza delle reti maurizio pizzonia sicurezza dei sistemi informatici e delle reti

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

PACKET FILTERING IPTABLES

Proteggere la rete: tecnologie

Esercitazione 5 Firewall

Corso GNU/Linux Avanzato Uso e configurazione di un firewall usando iptables

Tecnologie di Sviluppo per il Web

ICMP OSI. Internet Protocol Suite. Telnet FTP SMTP SNMP TCP e UDP NFS. Application XDR. Presentation. Session RPC. Transport.

Esercitazione 05. Sommario. Packet Filtering [ ICMP ] Esercitazione Descrizione generale. Angelo Di Iorio (Paolo Marinelli)

Reti standard. Si trattano i modelli di rete su cui è basata Internet

Transmission Control Protocol

Lezione Lab 1: Packet Filtering: Netfilter & IPTABLES

Reti. Reti. IPv4: concetti fondamentali. arp (address resolution protocol) Architettura a livelli (modello OSI)

FIREWALL iptables V1.1 del 18/03/2013

Router(config)# access-list access-list number {permit deny} {test-conditions}

IP forwarding Firewall e NAT

Indirizzamento privato e NAT

User. Group Introduzione ai firewall con Linux

Petra Internet Firewall Corso di Formazione

Netfilter: utilizzo di iptables per

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

Sommario. Configurazione della rete con DHCP. Funzionamento Configurazione lato server Configurazione lato client

TCP/IP: summary. Lorenzo Cavallaro, Andrea Lanzi

Il livello trasporto Protocolli TCP e UDP

Filtraggio del traffico di rete

Configurazione Rete in LINUX

Il firewall ipfw. Introduzione ai firewall. Problema: sicurezza di una rete. Definizione di firewall. Introduzione ai firewall

4 - Il livello di trasporto

Difesa perimetrale di una rete

Corso GNU/Linux - Lezione 5. Davide Giunchi - davidegiunchi@libero.it

NAT NAT NAT NAT NAT NAT. Internet. Internet. router. router. intranet. intranet. Internet. Internet. router. router. intranet. intranet.

Sommario. Introduzione ai firewall. Firewall a filtraggio dei pacchetti. Il firewall ipfw. Definizione e scopo Classificazione

Reti locati e reti globali. Tecnologie: Reti e Protocolli. Topologia reti. Server e client di rete. Server hardware e server software.

TCP/IP un introduzione

Sicurezza applicata in rete

ICMP. Internet Control Message Protocol. Silvano GAI. sgai[at]cisco.com. Mario BALDI. mario.baldi[at]polito.it

Reti di comunicazione

Dal protocollo IP ai livelli superiori

LINUX e le reti

TCP/IP. Principali caratteristiche

Internet e protocollo TCP/IP

WAN / 24. L obiettivo è quello di mappare due server web interni (porta 80) associandoli agli indirizzi IP Pubblici forniti dall ISP.

$OFXQLVWUXPHQWLGLXVRFRPXQH SHUO DQDOLVLGHOORVWDWRGHOVLVWHPD

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

Firewall con IpTables

Introduzione (parte I)

Laboratorio di Networking Operating Systems. Lezione 2 Principali strumenti di diagnostica

Laboratorio di. Reti Informatiche. Corso di Laurea Triennale in Ingegneria Informatica A.A. 2016/2017. Ing. Niccolò Iardella

Besnate, 24 Ottobre Oltre il Firewall.

12.5 UDP (User Datagram Protocol)

ACCESS LIST. Pietro Nicoletti

Informazioni Generali (1/2)

Introduzione al TCP/IP Indirizzi IP Subnet Mask Frame IP Meccanismi di comunicazione tra reti diverse Classi di indirizzi IP Indirizzi IP privati e

IL LIVELLO RETE IN INTERNET Protocollo IP

Elementi di Sicurezza e Privatezza Laboratorio 6 - Sniffing. Chiara Braghin chiara.braghin@unimi.it

Sicurezza nelle applicazioni multimediali: lezione 9, firewall. I firewall

Il firewall Packet filtering statico in architetture avanzate

Protocollo ICMP, comandi ping e traceroute

Università degli Studi di Pisa Dipartimento di Informatica. NAT & Firewalls

Petra Firewall 3.1. Guida Utente

Il FIREWALL LINUX Basare la sicurezza della rete su un sistema operativo gratuito

CONNESSIONE DI UN PC ALLA RETE INTERNET

Firewall e Abilitazioni porte (Port Forwarding)

Транскрипт:

GNU/Linux e i firewall Relatori: Giorgio Bodo Bodini Roberto Oliverino Azzini

Classificazione delle reti in base all'estensione

VPN VPN: Virtual Private Network LAN security gateway security gateway LAN

Topologie di rete a stella ad anello su bus

reti a stella concentratore

Topologie di rete a stella ad anello su bus

reti su bus

pacchetti

Lo stack OSI/ISO 7 Applicazione 6 Presentazione 5 sessione 4 Trasporto 3 Rete 2 Data - link 1 Fisico ripetitore 7 Applicazione 6 Presentazione 5 sessione 4 Trasporto 3 Rete 2 Data - link 1 Fisico

incapsulamento dei pacchetti 7 Applicazione 6 Presentazione 5 sessione 4 Trasporto 3 Rete 2 Data - link 1 Fisico

Livello 1 -Fisico Schede di rete Cavi di rete Hub o concentratori

indirizzi MAC

HUB vs. switch HUB Switch pacchetto in ingresso pacchetti ripetuti su ogni porta pacchetto in ingresso pacchetto in uscita

Lo stack OSI/ISO 7 Applicazione 6 Presentazione 5 sessione 4 Trasporto 3 Rete 2 Data - link 1 Fisico ripetitore 7 Applicazione 6 Presentazione 5 sessione 4 Trasporto 3 Rete 2 Data - link 1 Fisico

indirizzi IP indirizzo IP 1.2.3.4 ID RETE ID NODO netmask 255.255.255.0 indirizzo di rete indirizzo di broadcast 1.2.3.0 1.2.3.255

classi di rete classe C netmask 255.255.255.0 indirizzi 192.0.1.1-223.255.254.254 classe B netmask 255.255.0.0 indirizzi 128.1.0.1-194.254.255.254 classe A netmask 255.0.0.0 indirizzi 1.0.0.1-126.255.255.254

notazione CIDR 192.168.1.0 / 24

gateway

tabella di routing root@caronte:~ # route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 81.85.248.0 0.0.0.0 255.255.255.0 U 0 0 0 eth2 (Internet) 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 (LAN) 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 (DMZ) 0.0.0.0 81.85.248.1 0.0.0.0 UG 0 0 0 eth2 (defaultroute)

scoprire gli hop

scoprire gli hop [root@portlinux sandman]# traceroute www.lugcr.it traceroute to www.lugcr.it (81.88.226.70), 30 hops max, 38 byte packets 1 192.168.0.200 (192.168.0.200) 0.251 ms 0.224 ms 0.190 ms 2 81.85.248.1 (81.85.248.1) 1.030 ms 0.691 ms 0.557 ms 3 core-sw-cr-02.aemcom.net (81.88.227.222) 0.635 ms 0.638 ms 0.574 ms 4 81.88.227.66 (81.88.227.66) 2.336 ms 2.347 ms 2.277 ms 5 81.88.226.76 (81.88.226.76) 2.180 ms 2.143 ms 2.030 ms 6 81.88.226.70 (81.88.226.70) 2.467 ms 2.431 ms 2.305 ms [root@portlinux sandman]# traceroute www.debian.org traceroute to www.debian.org (194.109.137.218), 30 hops max, 38 byte packets 1 192.168.0.200 (192.168.0.200) 0.572 ms 0.425 ms 0.205 ms 2 81.85.248.1 (81.85.248.1) 0.581 ms 0.614 ms 0.557 ms 3 bgp-cr-vr-inf-01.aemcom.net (81.88.227.254) 3.544 ms 1.922 ms 1.854 ms 4 217.12.177.161 (217.12.177.161) 3.558 ms 4.326 ms 5.657 ms 5 217.12.179.252 (217.12.179.252) 8.655 ms 5.232 ms 5.866 ms 6 217.26.80.130 (217.26.80.130) 13.477 ms 13.445 ms 12.683 ms 7 193.158.5.137 (193.158.5.137) 21.748 ms 13.588 ms 14.756 ms 8 ams-e4.ams.nl.net.dtag.de (62.154.15.2) 44.257 ms 46.638 ms 44.772 ms

IPv6 FEDC:BA98:7654:3210:FEDC:BA98:7654:3210 = 1080:0:0:0:8:800:200C:417A

indirizzi speciali loopback 127.0.0.1 default route 0.0.0.0

indirizzi per reti private 1x classe A 10.x.x.x 10.0.0.1-10.255.255.254 16x classe B 172.Y.x.x 172.16.0.1-172.31.255.254 256x classe C 192.168.Y.x 192.168.0.1-192.168.255.254

/etc/protocols # /etc/protocols: # $Id: protocols,v 1.2 2001/05/02 17:10:04 chmouel Exp $ # # Internet (IP) protocols # # from: @(#)protocols 5.1 (Berkeley) 4/17/89 # # Updated for NetBSD based on RFC 1340, Assigned Numbers (July 1992). # # See also http://www.isi.edu/in-notes/iana/assignments/protocol-numbers ip 0 IP # internet protocol, pseudo protocol number #hopopt 0 HOPOPT # hop-by-hop options for ipv6 icmp 1 ICMP # internet control message protocol igmp 2 IGMP # internet group management protocol ggp 3 GGP # gateway-gateway protocol ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'') st 5 ST # ST datagram mode tcp 6 TCP # transmission control protocol cbt 7 CBT # CBT, Tony Ballardie <A.Ballardie@cs.ucl.ac.uk> egp 8 EGP # exterior gateway protocol igp 9 IGP # any private interior gateway (Cisco: for IGRP) bbn-rcc 10 BBN-RCC-MON # BBN RCC Monitoring nvp 11 NVP-II # Network Voice Protocol pup 12 PUP # PARC universal packet protocol argus 13 ARGUS # ARGUS emcon 14 EMCON # EMCON xnet 15 XNET # Cross Net Debugger chaos 16 CHAOS # Chaos udp 17 UDP # user datagram protocol mux 18 MUX # Multiplexing protocol dcn 19 DCN-MEAS # DCN Measurement Subsystems hmp 20 HMP # host monitoring protocol prm 21 PRM # packet radio measurement protocol...

ICMP

UDP - TCP UDP user datagram protocol TCP transmission control protocol 0 1023 1024 65535 porte privilegiate porte non privilegiate

flags TCP SYN ACK FIN RST synchronize acknowledge finish reset

three-way handshake (A) > SYN > (B) (A) < SYN/ACK < (B) (A) > ACK > (B)

protocolli dei servizi di rete # /etc/services: # $Id: services,v 1.22 2001/07/19 20:13:27 notting Exp $ # # Network services, Internet style # # The Well Known Ports are those from 0 through 1023. # The Registered Ports are those from 1024 through 49151 # The Dynamic and/or Private Ports are those from 49152 through 65535 # Each line describes one service, and is of the form: # # service-name port/protocol [aliases...] [# comment]... ftp-data 20/tcp ftp 21/tcp ssh 22/tcp # SSH Remote Login Protocol telnet... 23/tcp smtp 25/tcp mail... domain 53/tcp nameserver # name-domain server domain 53/udp nameserver... http 80/tcp www www-http # WorldWideWeb HTTP... pop3... 110/tcp pop-3 # POP version 3 https 443/tcp # MCom...

netstat [root@portlinux sandman]# netstat Active Internet connections (w/o servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 192.168.121.112:32778 web5.w3.org:http ESTABLISHED tcp 0 0 192.168.121.112:32777 klecker.debian.org:http ESTABLISHED tcp 0 0 192.168.121.112:32779 ftp.slackware.com:ftp ESTABLISHED Active UNIX domain sockets (w/o servers) Proto RefCnt Flags Type State I-Node Path unix 12 unix 3 [ ] [ ] DGRAM STREAM CONNECTED 3222 /dev/log 11554 /tmp/.x11-unix/x0 unix 3 [ ] STREAM CONNECTED 11553 unix... 3 [ ] STREAM CONNECTED 11483 /home/sandman/tmp/orbit-

protocolli dei servizi di rete HTTP SMTP POP3 - tcp/80 - tcp/25 - tcp/110

protocolli dei servizi di rete FTP

Architetture di rete con firewall Internet - firewall - LAN Interne t firewall LAN hub server client

Architetture di rete con firewall Internet - firewall - LAN + DMZ Internet firewall DMZ LAN hub server Web server client

Architetture di rete con firewall Internet - firewall esterno - DMZ - firewall interno - LAN Firewall esterno Firewall interno internet HUB DMZ Lan

Packet filter firewall e stack OSI 7 Applicazione 7 Applicazione 6 Presentazione 6 Presentazione 5 sessione 5 sessione 4 Trasporto 4 Trasporto 4 Trasporto 4 Trasporto 3 Rete 3 Rete 3 Rete 3 Rete 2 Data - link 2 Data - link 2 Data - link 2 Data - link 1 Fisico 1 Fisico 1 Fisico 1 Fisico

stato della connessione NEW ESTABLISHED RELATED INVALID

iptables: tabelle e catene

iptables: matches -p, --protocol seleziona i pacchetti in base al protocollo: #iptables -A INPUT -p udp seleziona solo i pacchetti UDP -s, --src, --source seleziona i pacchetti in base all'indirizzo IP di provenienza: #iptables -A INPUT -s! 192.168.0.0/24 seleziona solo i pacchetti che non provengono dalla rete 192.168.0.x -d, --dst, --destination #iptables -A INPUT -d 192.168.1.1 seleziona i pacchetti destinati all'indirizzo IP 192.168.1.1 -i, --in-interface #iptables -A INPUT -i eth0 seleziona i pacchetti arrivati dall'interfaccia di rete eth0 -o, --out-interface #iptables -A FORWARD -o eth1 seleziona i pacchetti che devono uscire dall'interfaccia eth1 --sport, --source-port #iptables -A INPUT -p tcp --sport 80 seleziona i pacchetti che provengono da una porta 80/TCP, cioè da un server web

iptables: matches --dport, --destination-port #iptables -A INPUT -p tcp --dport 25 seleziona i pacchetti destinati ad una porta 25/TCP, ovvero ad un server SMTP (posta in uscita) --tcp-flags #iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN SYN seleziona solo i pacchetti che abbiano attivo il solo flag SYN tra i flag SYN, ACK e FIN, ovvero i tentativi di instaurare nuove connessioni TCP --icmp-type #iptables -A INPUT -p icmp --icmp-type 8 seleziona i pacchetti ping in uscita --state #iptables -A INPUT -m state --state RELATED,ESTABLISHED seleziona solo i pacchetti appartenenti a connessioni stabilite o correlate -m mac o --mac-source controlla la corrispondenza delle regole delle catene in base all'indirizzo MAC della scheda di provenienza del pacchetto; è utile per impostare le regole su macchine che hanno l'indirizzo IP assegnato dinamicamente (via DHCP).

iptables: target ACCEPT DROP REJECT LOG MARK SNAT DNAT MASQUERADE REDIRECT

iptables: comandi -A, --append #iptables -A INPUT... Questo comando aggiunge la regola alla fine della catena quindi sarà l'ultima ad essere verificata. -D, --delete #iptables -D INPUT --dport 80 -j DROP #iptables -D INPUT 1 Questo comando cancella una regola dalla catena di INPUT. Questo può essere fatto in due modi. Nel primo esempio si cancella la regola che ha le caratteristiche riportate; nel secondo si cancella la prima regola della catena. -R, --replace #iptables -R INPUT 3 -s 192.168.0.1 -j DROP Questo comando sostituisce la terza regola della catena INPUT con una nuova regola con le caratteritiche descritte -I, --insert #iptables -I INPUT 8 --dport 80 -j ACCEPT Inserisce la nuova regola all'ottava posizione della catena -L, --list #iptables -L INPUT Questo comando mostra la lista di tutte le regole presenti nella catena specificata. Se non si specifica una catena, verranno mostrate le regole di tutte le catene

iptables: comandi -F, --flush #iptables -F INPUT Questo comando svuota la catena INPUT da tutte le regole presenti ed equivale a cancellare tutte le regole una per una con il comando -D -N, --new-chain #iptables -N allowed Questo comando dice al kernel di creare una nuova catena di nome allowed -X, --delete-chain #iptables -X allowed Cancella la catena allowed dalla tabella. Funziona solo se la catena è gia stata svuotata da tutte le regole. -P, --policy #iptables -P INPUT DROP Questo comando è usato per settare le policy di default per le catene predefinita. Tutti i pacchetti che non soddisfano nessuna regola della catena subiranno questa fine. I target possibili sono solo DROP, ACCEPT e REJECT -E, --rename-chain #iptables -E allowed consentiti Il comando rinomina la catena di nome allowed in consentiti