Linux-basierte Firewall Konzepte © 2001 Till Hänisch Linux basierte Firewall Konzepte  Prinzip  Konzepte  Implementierung mit Linux basierte.

Slides:



Advertisements
Ähnliche Präsentationen
Aufbau eines Netzwerkes
Advertisements

Sichere Anbindung kleiner Netze ans Internet
Funktionserweiterungen für den ISA Server 2000 mit dem Feature Pack 1 Funktionserweiterungen für den ISA Server 2000 mit dem Feature Pack 1 Christian Thor.
Firewall und Tunneling
Firewalls.
Die Firewall in der Musterlösung
© 2003 Guido Badertscher Spontane Vernetzung - UPnP 9. Jänner 2004 Spontane Vernetzung Guido Badertscher.
Die Firewall Was versteht man unter dem Begriff „Firewall“?
Beispiel-Netzwerk eines vernetzten IT-Systems:
Webserver, © Till Hänisch 2002 Apache The open way.
1 Proseminar Thema: Network Security Network Security Proseminar Thema: Network Security.
Sicherheit in Rechnernetzen- Denial of Service- Attacken
1.WICHTIG: Bringen Sie Ihr Betriebssystem möglichst "offline" auf den aktuellen Stand. Insbesondere sollten Sie bei Verwendung von Windows XP nicht ohne.
1.WICHTIG: Bringen Sie Ihr Betriebssystem möglichst "offline" auf den aktuellen Stand. Insbesondere sollten Sie bei Verwendung von Windows XP nicht ohne.
Firewalls Firewalls von Hendrik Lennarz.
Firewalls Holger Stengel Vortrag am Gliederung Definition: Firewall Grundlage: TCP/IP-Modell Angriffe Elemente und Konzepte Grenzen.
Einführung in die Technik des Internets
Bridgefirewall – eine transparente Lösung Thomas Röhl 08. April 2005.
1.WICHTIG: oBringen Sie Ihr Betriebssystem möglichst "offline" auf den aktuellen Stand. Insbesondere sollten Sie bei Verwendung von Windows XP nicht ohne.
Netzwerkkomponenten (Hardware)
IPv6 in Virtualisierungsumgebungen
Weltweite Kommunikation mit Exchange Server über das Internet
Rechnerkommunikation I
VPN Virtual Private Network
Freifach Netzwerktechnik mit Übungen
Netzwerkprogrammierung
Grundlagen der Netzwerktechnik
Absicherung eines produktiven Webservers und Entdeckung von Angreifern
Virtual Private Network
Netzwerke.
Domain Name Service Grundlagen, Implementierung im Active Directory und Integration von Win2k-Domains in bestehende Umgebungen Kay Sander.
Netzwerke.
Einführung in Rechnernetze - Erarbeiten des Praktikums Semesterarbeit Sommersemester 2000 Prof. B. Plattner Betreuung: Nathalie Weiler 6. Mai 2000 Lukas.
Christian Schindelhauer Sommersemester Vorlesung
Saskia Schild, Manuel Grbac & Nerma Taletovic
Internet-Grundtechnologien. Client / Server Client („Kunde“): fordert Information / Datei an im Internet: fordert Internetseite an, z.B.
Musterlösung Regionale Fortbildung © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg (ZPN) Die Firewall in der Musterlösung Teil 4:
TCP/IP.
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Sniffing & Spoofing Workshop
Network Address Translation (NAT)
Aufbau eines Netzwerkes
Netzwerke und Systemintegration
Sicherheitskomponente in der Computertechnik
Netzwerke. IPv4 Rechner/Server werden im Internet eindeutig durch IP Adressen identifiziert Adressen sind 32-Bit-Zahlen, die in viermal acht Bit aufgeteilt.
NiederwangenWinterthurBaselMünchenFrankfurt Ralf Fachet Das M2M Kochbuch Fernzugriff mit Mobilfunk.
DNS Grundlagen Wer soll sich das merken !!! Wer soll sich das merken !!!
© P.H. Fragen zum Thema Rechnernetze IT-Zusatzmaterialien IT Logische Struktur von Rechnernetzen Die Übertragung der Daten Übertragungsmedien, Netzkomponenten.
IIS The microsoft way. © Windows NT Option pack optionale Server Komponenten IIS (Internet Information Server) Webserver von Microsoft.
IS: Datenbanken, © Till Hänisch 2000 Windows Netzwerke TCP/IP oder was ?
TCP/IP Ti ßi pi ai pi. Wozu braucht man TCP/IP? ¥ Um festzustellen, ob das Moorhuhn (oder andere Programme) sicher sind. ¥ Um nachzusehen, ob noch `ne.
LINUX II Harald Wegscheider
Datenkommunikation Prof. Dr. Marke SS 2006 Seminar-Thema : IPTABLE Aufbau und Funktion Vortrag : Kulyk Nazar.
Fedora als Eier legende Wollmilchsau im Heimnetzwerk Benedikt Schäfer Von: Ambassador License statement goes here. See
Einrichtung eines Schulnetzwerkes unter Linux Besondere Lernleistung von Henrik Friedrichsen.
ICMP Internet Control Message Protocol Michael Ziegler Universität Freiburg Michael Ziegler.
Netzwerkgrundlagen Franz Schäfer LV Linux: Effiziente Anwendung an Hand von Fallbeispielen.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
Crashkurs Computernetzwerke
Manuel Blechschmidt & Volker Grabsch CdE Sommerakademie 2006 Kirchheim
Port-Forwarding Der PC möchte vom Internet aus auf den http-Server zugreifen. Er sieht nur die IP-Adresse und den Port des Routers. http-Server PC Router.
Othmar Gsenger Erwin Nindl Christian Pointner
StateLess Address AutoConfiguration
Firewall.
Netzwerke Netzwerkgrundlagen.
Ich brauche eine Web-Seite vom Server im Internet
Routing … … die Suche nach dem Weg..
Wie funktioniert das Internet?
Routing … … die Suche nach dem Weg..
 Präsentation transkript:

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Linux basierte Firewall Konzepte  Prinzip  Konzepte  Implementierung mit Linux basierte

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Prinzip Internet Jeder Rechner muß gegen Angriffe geschützt werden (aufwendig) LAN Firewall Der Firewall stellt einen zentralen Zugangs-/ Kontrollpunkt dar

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Warum Firewall statt host based security ? entscheidend ist der schwächste Punkt Einfach –Kontrollierte Umgebung, spez. Hard-/Software gestaffelte Verteidigung Nadelöhr (choke point) Ausfallsicherung Etablierung einer Sicherheitspolitik Security through obscurity

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Was ist ein Firewall If it's supposed to keep the bad guys out of your network, it's a firewall. If it succeeds in keeping the bad guys out, while still letting you happily use your network, it's a good firewall, if it doesn't, it's a bad firewall (Zwicky, Cooper, Chapman, Building Internet Firewalls, O'Reilly) A firewall is a form of protection that allows a network to connect to the Internet while maintaining a degree of security Ist ein Paketfilter ein Firewall ? Ein NAT-Router ? Ein Proxy ? Ein... ? Firewall kontrolliert/filtert Verkehr zwischen LAN und Internet Verschiedene Architekturen, Komponenten: Paketfilter und Proxy

Linux-basierte Firewall Konzepte © 2001 Till Hänisch dual homed host Internet dual homed host keine 'direkte' Verbindung zwischen den Netzen

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Router Internet Router leitet Pakete weiter, vom LAN ins Internet, vom Internet ins LAN Screening Router (Paketfilter) leitet nur Pakete weiter, die festgelegten Regeln gehorchen

Linux-basierte Firewall Konzepte © 2001 Till Hänisch (Paket-) Filter eingehende (IP) Pakete Regeln DENY ACCEPT REJECT

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Wer filtert was ? Bitübertragung (physikal. Verbindung) Zugriffs-Steuerung Sicherung (LLC) Internet-Protocol TCPUDP TFTP BOOT P DHCP DNS SMTP RloginFTP Telnet SNM P HTTP IEEE Paketfilter Proxy Paketfilter kann IP (und TCP,UDP) Informationen auswerten Proxy kann Applikationsinformationen (z.B. HTTP) auswerten Proxy versteht (typ.) nur ein Protokoll

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Paketfilter + Proxy Internet Router leitet nur Pakete vom/zum bastion host ins Internet weiter (z.B. http Proxy)

Linux-basierte Firewall Konzepte © 2001 Till Hänisch screened subnet (DMZ) Internet äußerer Router innerer Router bastion host DMZ

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Linux als Plattform für Firewalls Warum Linux ? –Open source –Umfangreiche, (relativ) performante TCP/IP-Unterstützung Beispiele mit SuSe Linux –Paketfilter im Kernel, Proxies separate Applikationen dual homed host Paketfilter –ipchains (2.2+ Kernel) –iptables (2.4+) Kernel (u.A. stateful inspection) Proxy –SQUID (HTTP) spezielle Distributionen –LRP,trinux

Linux-basierte Firewall Konzepte © 2001 Till Hänisch dual homed host Rechner mit zwei Netzwerkkarten (in untersch. Netzen) ifconfig eth0 eth0 Link encap:Ethernet HWaddr 00:50:FC:3A:43:72 inet addr: Bcast: Mask: ifconfig eth1 eth1 Link encap:Ethernet HWaddr 00:E0:7D:AA:3C:F3 inet addr: Bcast: Mask: Routing ausschalten IP_FORWARD="no" !! echo 0 > /proc/sys/net/ipv4/ip_forward Accounts bzw. Dienste einrichten, z.B. Account für jeden User http (Zugriffsrechte) ftp Server

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Proxy (Beipiel: SQUID) SQUID von runterladen, installieren Konfiguration: z.B. Spezielle Clients (IP) nur bestimmte Adressen (auch mit Paketfilter möglich) http_access allow Nur bestimmte User (proxy_auth) (Filter kennt nur IP-Adressen, keine User) acl proxy_auth till http_access allow URL's filtern (Filter weiss nichts von URL's) acl url_regex -i sex IP-Header TCP-Header GET / HTTP1.0 Host: Browser Proxy Internet Proxy untersucht HTTP und erzeugt neue Anfrage zum Webserver Browser schickt Anfrage an Proxy (d.h. Browser muß konfiguriert werden)

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Proxy contd. Transparent proxy vermeidet Client-Konfiguration, leitet allen http-Verkehr (portbezogen) auf Proxy um) oder direkt mit SQUID Komplexe protokollspezifische Filter, z.B. bei T.Rex Attachments mit best. Dateitypen nicht weiterleiten denyx from * to * ext = bat sequester denyx from * to * ext = com sequester denyx from * to * ext = eml sequester denyx from * to * ext = exe sequester Nachteile Proxy: Clients müssen konfiguriert werden Keiner will Proxy verwenden Vorteile Proxy: Versteht das jeweilige Protokoll, also Filterreglen auf Basis der Inhalte (z.B. URL, Attachment,...) zus. evtl. Beschleunigung (cache) Kennt Benutzer

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Paketfilter unter Linux Vorprüfunginput chaindemasquerade routing Prüfung forward chain Regellisten heißen "chain" (Kette von Regeln) DENYDENY/ REJECT ACCEPT/ REDIRECT output chain ACCEPT DENY/ REJECT lokal In jeder chain können Regeln definiert werden Häufig genügt eine (z.B. input), mehrere sinnvoll etwa bei mehreren Interfaces Regel enthält Source+Destination Adresse (und ggf. Port), Protokoll, Optionen und Ziel (benutzer-chain, ACCEPT, DENY, REJECT, MASQ, REDIRECT, RETURN) z.B. ipchains -A input -p tcp -s /24 -d /0 www -j ACCEPT

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Paketfilter (Beispiel) Rechner mit zwei Netzwerkkarten, z.B /24 intern, extern Regeln z.B. mit ipchains # Routing einschalten echo 1 > /proc/sys/net/ipv4/ip_forward # Chains leeren ipchains -F input... # Zugriff auf externe Webserver erlauben ipchains -A input -p tcp -s /24 -d /0 www -j ACCEPT # DNS erlauben ipchains -A input -p UDP -s /24 -d /0 domain -j ACCEPT # Alles andere verbieten ipchains -P input DENY # Antworten der Webserver erlauben ipchains -I input -p tcp -s /0 www -d /24 -j ACCEPT # DNS erlauben ipchains -I input -p UDP -s /0 domain -d /24 -j ACCEPT # eingehende TCP-Verbindungen verbieten ipchains -A INPUT -p tcp --syn -j DENY

Linux-basierte Firewall Konzepte © 2001 Till Hänisch User friendly (Checkpoint Visual Policy editor)

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Paketfilter + Proxy Internet WWW-Zugang ins Internet nur über Proxy: # Proxy darf ins Web ipchains -A input -p tcp -s /32 -d /0 www -j ACCEPT # allen anderen den Zugriff auf externe Webserver verbieten ipchains -A input -p tcp -s /24 -d /0 www -j DENY # DNS erlauben ipchains -A input -p UDP -s /24 -d /24 domain -j ACCEPT ipchains -A input -p UDP -s /0 domain -d /24 -j ACCEPT # Alles andere verbieten ipchains -P input DENY alternativ: REDIRECT Target CONFIG_IP_TRANSPARENT_PROXY Alle Pakete, für die die Regel zutrifft, werden auf einen anderen Port umgeleitet HTTP-Proxy auf Port 8080 ipchains -A input -p tcp -s /24 -d /0 www -j REDIRECT 8080

Linux-basierte Firewall Konzepte © 2001 Till Hänisch personal firewall, NAT # Nur ssh von einem Rechner iptables -A INPUT -p tcp --syn --destination-port 22 -s j ACCEPT # Zugriff auf Webserver iptables -A INPUT -p tcp --syn --destination-port 80 -j ACCEPT # Keine Verbindungen von aussen iptables -A INPUT -p tcp --syn -j DROP Network Address Translation (IP-Masquerading) private Adressen z.B Router hat intern private, extern öffentliche Adresse (z.B. durch PPP) Internet Private Adressen werden (im Internet) nicht geroutet, NAT-Router ersetzt in ausgehenden IP-Paketen die Absenderadresse durch seine öffentliche --> Von außen ist nur der Router sichtbar (Security by Obscurity) ipchains -A forward -i ppp0 -j MASQ

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Zusammenfassung Linux stellt eine leistungsfähige Plattform für Firewalls dar Wichtigste Werkzeuge: Paketfilter, proxies –open source, meist in Distributionen enthalten open ends –Absicherung des FW-Rechners Dienste, Fixes, Readonly/Write-Once Medien,... spezielle Distributionen –stateful inspection (Fragmentierung, RPC,...) –intrusion detection –QOS/Bandwidth management –kommerzielle Produkte/Appliances

Linux-basierte Firewall Konzepte © 2001 Till Hänisch Probleme Paketfilter und Fragmentierung –Der (TCP|UDP,...) Header ist nur im ersten Fragment --> stateful inspection iptables -A INPUT --fragment -j DROP –Problem: MTU Path discovery funktioniert nicht mehr besser: CONFIG_IP_ALWAYS_DEFRAG (in <=2.4) setzen Wie unterscheidet der Firewall zwischen Business und Angriff ? (insb. z.B. bei http) Denial of Service –z.B. TCP SYN Flood IP-Spoofing –Pakete mit internen Adressen auf dem externen Interface !!! ipchains -A input -s -d /0 -i -j DENY Viren –Proxy

Linux-basierte Firewall Konzepte © 2001 Till Hänisch NAT (Network Address Translation) Router Porttabelle Von: :1234 An: :80 Von: :2345 An: :21 Von: :3456 An: :80 Von: :4567 An: :80 Von: :5678 An: :32 Von: :6789 An: :80 Von: :80 An: :50000 Von: :21 An: :50001 Von: :80 An: :50002 Von: :80 An: :50003 Von: :32 An: :50004 Von: :80 An: : : : : : : : : : : : : :1234

Linux-basierte Firewall Konzepte © 2001 Till Hänisch IP -Header (V4) IP-Header Datenbereich OptionenPadding Empfängeradresse Senderadresse TransportKopfprüfsumme Lebensz. TTL IdentifikationFlagsFragment Abstand VersionLängeServicetypen(gesamte) Paketlänge

Linux-basierte Firewall Konzepte © 2001 Till Hänisch TCP-Header Datenbereich OptionenPadding Prioritätsanzeiger Prüfsumme OffsetRes.FlagsFensteranzeiger Acknowledgenummer Sequenzernummer ZielportQuellport