ALIs
kommt nochIP-Adressumsetzung (NAT) als Ersatz für Proxyserver
Zur Nutzung vieler Internetdienste für Systeme mit privaten IP-Adressen im MWN ist keine spezielle Proxy-Konfiguration mehr notwendig. Die Umsetzung der privaten in eine offizielle Adresse erfolgt durch ein so genanntes NAT-Gateway.
Inhalt
- Vorbemerkung
- NAT
- Bandbreitenregelung
- Verhinderung von Portscans, Denial of Service und Spam-Angriffen
- Fragen & Antworten
- Was muss ich konfigurieren um NAT-o-MAT nutzen zu können?
- Welche Subnetze sind freigeschaltet?
- Welche Anwendungen/Programme funktionieren über NAT-o-MAT?
- Welche Anwendungen/Programme funktionieren nicht über NAT-o-MAT?
- Mein Rechner ist nicht kompromittiert und wird trotzdem gesperrt - wie kann das sein?
- Technische Realisierung
Vorbemerkung
Jeder Rechner benötigt zur Kommunikation im Internet und MWN (Münchner Wissenschaftsnetz) eine IP-Adresse. Bei der Verwendung so genannter privater IP-Adressen war es früher nötig, für einen großen Teil der Dienste im Internet Proxy-Server zu nutzen. In der entsprechenden Software (z.B. Browser) müssen diese Proxies vom Nutzer selbst konfiguriert werden.
Um dies einfacher zu gestalten und die Vielfalt dieser jeweils einzeln zu betreibenden Proxy-Server abzulösen, wird am LRZ ein NAT-Gateway betrieben, welchem wir den Namen NAT-o-MAT gegeben haben.
NAT steht für "Network Address Translation" und bedeutet die IP-Adressumsetzung von einer "privaten" in eine "öffentliche" IP-Adresse. MAT steht für einen "Automat", der Mechanismen zur Bandbreitenregelung sowie der Verhinderung von Angriffen auf fremde Rechner wie Portscans, Denial of Service und Spam liefert.
Hinweis:
In einigen Studentenwohnheimen (z.B. in der Studentenstadt Freimann) werden eigene Router, Gateways und Proxy-Server betrieben. Der Internetzugang wird hier nicht über den NAT-o-MAT des LRZ geleitet.
NAT
IP-Adressen aus bestimmten Bereichen (z.B. 10.155.x.x) werden als privat bezeichnet (RFC 1918), da Datenpakete mit solchen IP-Adressen nicht im Internet weitergeleitet (geroutet) werden.
Hat ein Rechner eine private IP-Adresse, so kann kein Paket aus dem Internet diesen direkt erreichen. Rechner mit privaten Adressen sind damit automatisch gegen (Hacker-)Angriffe aus dem Internet geschützt. Ebenso kann jedoch kein Datenpaket mit einer privaten IP-Adresse das MWN verlassen und Dienste außerhalb des MWN nutzen. Private IP-Adressen schützen somit vor Zugriffen aus dem Internet, erschweren aber auch den Datenverkehr nach außen. Siehe hierzu auch: Welchen Vorteil bieten private IP-Adressen ?
Zur Nutzung des Internets mussten daher Server, sogenannte Proxies verwendet werden, die auf Nutzerseite für jede Anwendung eigens konfiguriert werden mussten.
NAT bietet dazu eine Alternative. Anfragen mit privaten IP-Adressen werden dabei von dem NAT-Gateway mit einer öffentlichen, d.h. weltweit im Internet nutzbaren IP-Adresse als Absender versehen und in das Internet weitergeleitet. Dieses Verfahren wird Source NAT genannt und ist im Prinzip dasselbe, das auch von vielen DSL-Routern eingesetzt wird.
Source NAT (SNAT) stellt sicher, dass Verbindungen nur zustande kommen, wenn sie vom privaten Netz aus aufgebaut werden, nicht aber von außen (dem Internet).
Bandbreitenregelung
Programme zum Austausch von Dateien (Filesharing) verwenden im wesentlichen keine Server, die Teilnehmersysteme kommunizieren stattdessen direkt untereinander. Die dabei verwendeten Techniken bezeichnet man als Peer-to-Peer (P2P)-Protokolle. Diese nutzen in der Regel die volle zur Verfügung stehende Bandbreite, zudem werden die einzelnen Anfragen in sehr schneller Folge abgesetzt.
Solches Verhalten kann zu erheblichen Verzögerungen für andere Protokolle führen, die auf derselben Leitung transportiert werden und unter Umständen auch zu Lastproblemen bei den bisherigen Proxy-Servern. Einem großen Teil der Nutzer dieser P2P-Protokolle ist dieses Verhalten jedoch nicht bewusst.
Portsperren zur Verhinderung von P2P-Diensten haben sich aufgrund der verwendeten Port-hopping-Mechanismen nicht als besonders effektiv erwiesen. Stattdessen können nun über den NAT-o-MAT sogenannte Traffic-Shaping Mechanismen eingesetzt werden, um die Dominanz von P2P-Protokollen zu begrenzen.
Die Bandbreite für das P2P-Protokoll BitTorrent ist auf 2 Mbit/s begrenzt, für die übrigen P2P-Protokolle auf zusammen 1 Mbit/s. Diese Bandbreite müssen sich alle Nutzer der P2P-Protokolle teilen.
Die VPN-Nutzer (bei Verwendung öffentlicher Adressen) unterliegen auch dieser Bandbreitenbeschränkung.
Verhinderung von Portscans, Denial of Service und Spam-Angriffen
Zur Verhinderung von DOS- oder Scan- und DDOS-Angriffen ausgehend von Rechnern im MWN wird die Anzahl von Paketen von und auf bestimmte Ziele beobachtet.
- Rechner, die mit ihrer Quell-IP einen bestimmen Zielport auf vielen Ziel-Rechnern erreichen wollen, machen einen DOS- oder Scan-Angriff, wenn mehr als 10 Pakete pro Sekunde abgeschickt werden.
- Rechner, die mit einer gefälschten oder vielen Quell-IPs einen einzigen Ziel-Rechner kontaktieren wollen, machen einen DDOS-Angriff, wenn mehr als 10 Pakete pro Sekunde abgeschickt werden.
- Bei den TCP-Ports 80 (HTTP, WWW) und 443 (HTTPS) sind 100 Pakete pro Sekunde die Grenze.
- Beim Port 25 (Mail) sind 6 Verbindungen pro Minute die Grenze.
Wird eine dieser Grenzen überschritten, so erhält der Rechner einen "Strafpunkt". Bei 120 Strafpunkten innerhalb eines gleitenden Fensters von 15 Minuten wird davon ausgegangen, dass der Rechner ein abnormales Kommunikationsverhalten zeigt und möglicherweise von einem Virus befallen ist. Daraufhin erfolgt die Sperrung des Rechners am X-WiN-Zugang. Der Browser am blockierten Rechner wird zwangsweise auf auf eine WWW-Seite umgeleitet, welche einen Hinweis auf die Blockierung und einen Link zur AntiVirus-Seite des LRZ enthält. Werden die 120 Strafpunkte innerhalb von 15 Minuten wieder unterschritten, so wird der Rechner wieder freigeschaltet.
Die Policies für das Traffic-Shaping und die Blockade unerwünschter Pakete sind ausführlicher hier beschrieben.
Achtung:
Es sei darauf hingewiesen, dass trotz dieser Maßnahmen jeder Benutzer auch weiterhin selbst für die Sicherheit seines Rechners verantwortlich ist. Hierzu gehört der Einsatz eines aktuellen Virenscanners und der vorsichtige Umgang mit Programmen, die auf das Internet zugreifen.
Fragen & Antworten
Was muss ich konfigurieren um NAT-o-MAT nutzen zu können?
In der Regel nichts. Voraussetzung ist aber, dass das IP-Subnetz, in dem sich ihre IP-Adresse befindet, für die Nutzung freigeschaltet ist und bis zum WAN-Übergang geroutet wird. Zudem sollten keine Proxy-Server konfiguriert sein.
Welche Subnetze sind freigeschaltet?
Aktuell sind diese Subnetze freigeschaltet:
10.148.0.0/14 (Studentenwerk München)
10.152.0.0/14 (Priv. Netze TU, LMU, FH-Weihenstephan, sonst. Einrichtungen)
10.155.254.0/24 (Konferenznetz Obernach)
10.156.0.0/16 (LRZ interne Netze, daraus diverse /24 Netze)
10.158.0.0/16 (LRZ WLAN, Zugriff auf CASG-Netz des DFN)
10.201.158.0/24 (Kath. Stiftungs FH)
138.246.7.0/24 (Diverse)
192.168.0.0/16 (LRZ interne Netze)
Zusätzlich alle VPN Client-Netze mit öffentlichen IP-Adressen.
(Siehe http://www.lrz-muenchen.de/services/netz/mobil/vpn-technik/) und alle Netze, die über Modem- und ISDN-Einwahl vergeben werden:
129.187.24.0/22 (Einwahlpool TUM)
129.187.28.0/22 (Einwahlpool Sonstige)
141.84.24.0/22 (Einwahlpool LMU)
Welche Anwendungen/Programme funktionieren über NAT-o-MAT?
Aktuell sind die folgenden Ports freigeschaltet
UDP: 1-134, 140-65535
TCP: 1-134, 140-444, 446-65535
Erfolgreich getestet wurden die folgenden Protokolle bzw. Dienste. Die dazu verwendeten Ports stehen in Klammern:
| Lookup |
DNS (53) |
| Newsdienst: | NNTP (119) |
| Zeitsynchronisation: | NTP (123) |
| Dateitransfer: | FTP (21 und andere), SCP (22) |
| Shells: | SSH (22), Telnet (23) |
| Mail: | SMTP (25), POP3 (110), IMAP (143), IMAPS (993), POP3S (995) |
| Web: | HTTP (80), HTTPS (443) |
| VPN: | Openvpn(1194), IPsec via UDP oder TCP Encapsulation |
| Messenger: | MSN (1863), Yahoo! Instant Messenger (5050), AIM (5190), Jabber (5223), IRC (6667) |
| Telefonie: | SIP Telefonie (5060) und RTP Datenströme, Skype, H.323 mit NAT-Unterstützung |
| Streaming: | Quicktime (443, 80) Real-Media (554,1090,7070), Microsoft Streaming (1755), MP3-, AAC- oder OGG-Vorbis Streams |
Welche Anwendungen/Programme funktionieren nicht über NAT-o-MAT?
Es funktionieren nur Dienste, die keine von außen initiierten Verbindungen benötigen und "natbare" IP-Protokolle, z.B TCP und UDP, verwenden.
Nicht funktionieren deshalb Verbindungen über folgende VPN-Protokolle:
- PPTP (GRE/47)
- native IPsec (ESP/50 und AH/51) (IPsec mit Encapsulation in UDP oder TCP ist aber möglich)
Außerdem sind nicht alle Ports am Gateway freigegeben, wodurch bestimmte Anwendungen, wie z.B. Windows Netzwerkfreigaben, nicht funktionieren.
Mein Rechner ist nicht kompromittiert und wird trotzdem gesperrt - wie kann das sein?
Wenn bei einem Rechner sichergestellt ist, dass keine Kompromittierung vorliegt, kann auch eine Fehlkonfiguration oder die Reaktion auf die Unerreichbarkeit von benötigten Servern einer Applikation Ursache der Sperrung sein. Eine Analyse des Kommunikationsverhaltens des Rechners (z.B. in cmd.exe mit netstat -n oder mit Wireshark) zum Zeitpunkt der Sperrung sollte auf die richtige Spur führen. Dann kann durch entsprechende Konfigurationsänderungen (z.B. nicht erreichbare Server entfernen) oder eine Personal Firewall gezielt das unerwünschte Verhalten der Applikation und damit eine Sperrung verhindert werden.
Technische Realisierung
Der NAT-o-MAT ist kein fertiges Produkt, das in dieser Form im Handel erhältlich ist. Er besteht aus zwei Linux-Servern vom Typ Dual Xeon EM64T (http://www.intel.com/technology/architecture-silicon/intel64/index.htm) mit 3,2 Ghz und 4 GByte RAM. Als Redundanzmechanismus wird Heartbeat verwendet. Die Hauptfunktionalität wird vom Linux-Firewall-Mechanismus Netfilter und Iptables erbracht. Neben Regeln für NAT gibt es hier auch Regeln (Hashlimits) gegen DoS (Denial of Service), DDoS (Distributed Denial of Service), Würmer und Portscans.
Traffic-Shaping wird mit Hilfe des Linux Traffic Controllers (http://lartc.org/) und IPP2P (http://www.ipp2p.org/) umgesetzt. Darüber hinaus existieren einige selbst entwickelte Bash und Perl Skripte, die zur Analyse von Firewall-Logs dienen und grafische Auswertungen via RRDtool (http://www.rrdtool.org) ermöglichen.
Anmerkungen und Fragen richten Sie bitte an ipadmin_AT_lrz.de.