Firewall demo - iptables

6

Devo fare una dimostrazione sui firewall nella mia classe di studente (università). Dovrebbe essere implementato usando iptables su Linux. Sto leggendo tutte le teorie intorno a loro ma non riesco a capire un buon caso d'uso da presentare in classe. Posso mostrare come usare aggiungere regole ecc., Ma questo non è sufficiente.

Posso avere 2 pezzi in una rete per mostrare cosa succede quando la connessione è bloccata, per esempio? Altre idee?

    
posta GorillaApe 29.04.2011 - 18:40
fonte

5 risposte

7

Puoi utilizzare un analizzatore di protocollo di rete come Wireshark per mostrare esattamente cosa sta succedendo. Imposta un esperimento con e senza un determinato set di regole e confronta i risultati dei file di log di Wireshark. In questo modo puoi mostrare cosa succede a livello di rete.

Se non si desidera portare più di un computer, è possibile utilizzare le macchine virtuali per simulare i diversi host che interagiscono tra loro. È un po 'meno impressionante dell'uso di computer reali, ma funziona quasi allo stesso modo. In questo modo è possibile dimostrare l'utilizzo di iptables come firewall basato su host (controllando l'accesso alla macchina che iptables è in esecuzione con il sistema operativo host e una singola macchina virtuale) e come firewall di rete autonomo. Nel secondo scenario è possibile utilizzare 3 macchine virtuali (o 2 macchine virtuali e il sistema operativo host), simulando tra loro un client, un server e il firewall. Più macchine virtuali, più è possibile. Aggiungi un altro e crea una DMZ per esempio. Dipende da quanto tempo hai e quanto in profondità vuoi andare.

    
risposta data 29.04.2011 - 20:22
fonte
5

A casa uso iptables per il mio firewall di rete (integrato con il mio gateway) e il mio firewall host.

Raccomando di dare un'occhiata al tutorial di iptables sulla rete domestica Linux , Ubuntu iptables tutorial e questo generatore di script iptables .

Se riesci a delineare ciò che devi mostrare per questa presentazione, sarebbe più facile rispondere a questa domanda.

Sembra che la cosa principale da controllare sia la capacità di logging di iptables. Crea una rete virtuale (o fisica, solo un po 'più ingombrante, haha) con 2 workstation e falle separare da una macchina Linux con 2 interfacce che eseguono iptables. Non sono a conoscenza di quanto sia avanzata la tua classe, ma spiega loro che il firewall divide la rete in due zone, quella interna e quella esterna. Quindi mostra la comunicazione tra le due reti. Ad esempio, è possibile configurare un server Apache su entrambe le workstation e quindi mostrare come la macchina interna può accedere al sito Web esterno, ma l'esterno non può accedere all'altro. Ciò dipende anche da come si imposta il firewall.

Se non sei legato unicamente a iptables, dai anche un'occhiata a ufw .

    
risposta data 02.05.2011 - 17:34
fonte
5

È possibile configurare un PC o una macchina virtuale per ospitare 2 o 3 servizi diversi (ad esempio, server Web, server FTP, SSH). Questo è il PC in cui modificherete le regole di iptables.

Prima demo di un PC diverso che accede a ciascun servizio e mostra che funziona (ad es. visita il sito web, i server ftp e ssh).

Successivamente, utilizza una regola iptables per rifiuta l'accesso da qualsiasi IP alla porta 80, quindi prova a visitare nuovamente il sito web. La connessione dovrebbe fallire immediatamente. Puoi anche mostrare cosa succede quando usi la direttiva drop invece di rifiutare. Rende il browser Web bloccato. Le connessioni al server SSH o FTP dovrebbero comunque funzionare. Ecco 2 regole per il blocco dell'accesso alla porta 80.

iptables -A INPUT -p tcp --dport 80 -j REJECT
iptables -A INPUT -p tcp --dport 80 -j DROP

Quindi puoi fare lo stesso per gli altri servizi (--dport 22, --dport 21), o farlo per un singolo IP:

iptables -A INPUT -s 192.168.1.100 -j REJECT  #assuming client is at 192.168.1.100

Le regole precedenti presuppongono che il criterio firewall predefinito sia quello di accettare tutti i pacchetti che non corrispondono a una regola, quindi potresti anche provare la demo aggiungendo eccezioni, quindi porte "di apertura" ad esempio:

iptables -P INPUT DROP
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

Ci sono molti più esempi che potresti fare, ma fare il modello client / server dovrebbe aiutare gli studenti a vedere cosa sta succedendo quando digiti quei comandi. Vedi Demo firewall - iptables per altri esempi.

    
risposta data 02.05.2011 - 20:35
fonte
3

Non ho familiarità con iptables, tuttavia se tu sai cosa mostrare come funziona un firewall suggerisco:

  • Blocca / consenti connessione / i.
  • Block port scan Blocking ip (s).
  • Rilascia connessione (s).
  • Consenti / Blocca connessione per ip (s).
  • Blocca i programmi da chiamare home.
  • consente al programma di ascoltare sulla porta x.
  • Blocca il programma da ascoltare sulla porta x.
risposta data 29.04.2011 - 19:05
fonte
0

Nessuna discussione su iptables è completa senza una demo del firewall. Per testare il firewall, scarica ed esegui nessus contro di esso.

Inoltre devi coprire ipset come ipset che consente a iptables di gestire efficientemente 1000 e addirittura più di 20000 indirizzi IP su un blocco o una lista bianca. Se non utilizzi ipset in un elenco di blocchi di grandi dimensioni e invece inserisci 1000+ regole di iptables, l'utilizzo della CPU andrà al 100% e resterà lì.

L'utilizzo di ipset ti offre anche la possibilità di implementare facilmente funzionalità o contatori di timeout per gli elenchi di blocchi.

iptables -L -v -n -x

Questo ti dà statistiche sulle regole di cui puoi parlare.

    
risposta data 17.01.2014 - 05:39
fonte

Leggi altre domande sui tag