Proxy
Im Allgemeinen ist ein Proxy-Server ein Gerät, das Netzwerkverbindungen von einem Client zu einem Zielserver abfängt. Die bekannteste Grundbedeutung des Wortes Proxy ist: eine Funktion von etwas, das als Ersatz für etwas anderes fungiert.
Mit anderen Worten: Ein Proxy-Server ist eine bestimmte Art von Anwendungsserver, der HTTP-Anfragen von Clients an die Inhaltsserver weiterleitet, die die eigentliche Arbeit ausführen.
Normalerweise fängt ein Proxy-Server eine Verbindung zwischen einem Gerät und dem Internet ab und manipuliert die direkte Kommunikation zwischen den beiden Punkten. Ein Proxy-Server, auch bekannt als Gateway der Anwendungsschicht zwischen einem Netzwerk und einem größeren Netzwerk (z. B. dem Internet), kann eine Anwendung oder ein spezielles Gerät in einem Netzwerk sein, das aus- und eingehende Daten filtert.
Die strategische Lage des Zwischenpunkts ermöglicht es, einem Proxy-Server verschiedene Funktionen zu verleihen: Zugangskontrolle, Trace-Logging, Beschränkung auf bestimmte Arten von Informationen und Traffic, Leistungsverbesserung, Anonymität der Kommunikation, Web-Caching und vieles mehr. Je nach Kontext kann die Vermittlung durch den Proxy von Benutzern, Administratoren und Dienstanbietern gleichermaßen genutzt werden.
Es gibt zwei Klassifizierungen von Proxy, je nach dem Ziel, wer ihre Vermittlungspolitik umsetzt:
- lokaler Proxy: In diesem Fall ist derjenige, der die Richtlinie umsetzt, derselbe wie derjenige, der die Anfrage stellt, deshalb die Bezeichnung „lokal“. Sie befinden sich in der Regel auf demselben Gerät wie der anfragende Client. Sie werden häufig verwendet, um dem Client die Möglichkeit zu geben, den Traffic zu kontrollieren und Filterregeln festzulegen, um z. B. sicherzustellen, dass private Informationen nicht weitergegeben werden.
- Netzwerk-Proxy: Bei dieser Implementierung werden die Proxy-Richtlinien von einem Unternehmen festgelegt und gelten für alle Geräte, die seine Netzwerkinfrastruktur nutzen; er wird auch oft als externer Proxy bezeichnet. Er wird hauptsächlich für die Implementierung von Filtern, die Sperrung von Inhalten, die Kontrolle des Traffics, Trace-Logging und vieles mehr verwendet.
Betrieb
Ein Proxy ermöglicht es anderen Geräten, sich indirekt über ihn mit einem Netzwerk zu verbinden. Wenn ein Computer im Netzwerk auf eine Information oder eine Ressource zugreifen muss, ist es der Proxy, der die Kommunikation durchführt und dann das Ergebnis an den ursprünglichen Computer weitergibt.
Im Allgemeinen ist ein Proxy ein Zwischenpunkt zwischen einem Gerät in einem Netzwerk und dem Internet, um auf eine bestimmte Ressource zuzugreifen. Beim Navigieren über einen Proxy greift der Client, der die Anfrage stellt, nicht direkt auf den Server zu, sondern der Proxy greift auf die Anfrage zu und gibt das Ergebnis der Anfrage zurück.
Es ist der Proxy-Server, der für die Übersetzung von Netzwerkadressen (NAT, Network Address Translation) verantwortlich ist, auch bekannt als IP-Masquerading. Das passiert, wenn mehrere Geräte eine einzige Internetverbindung nutzen.
Innerhalb des lokalen Netzwerks (LAN) verwenden die Computer IP-Adressen, die für den privaten Gebrauch reserviert sind, und in der Regel eine eindeutige ausgehende IP-Adresse für ein anderes Netzwerk oder das Internet. In diesem Sinne ist der Proxy für die Übersetzung der privaten Adressen in diese eindeutige öffentliche Adresse zuständig, um die Anfragen zu stellen und die erhaltenen Antworten an jeden internen Benutzer zu verteilen, der sie angefordert hat.
Diese Situation ist in Unternehmen und Haushalten mit mehreren vernetzten Geräten und nur einem externen Internetzugang sehr häufig. Der Internetzugang über NAT bietet eine gewisse Sicherheit, da es keine direkte Verbindung zwischen der Außenwelt und dem privaten Netzwerk gibt und die Computer somit keinen direkten Angriffen von außen ausgesetzt sind.
Der Proxy-Server verfügt außerdem in der Regel über einen Cache, in dem eine Kopie von besuchten Webseiten gespeichert wird, so dass der erste Zugang physisch zum Zielserver erfolgt, während der Proxy bei den folgenden Zugängen prüft, ob die Seite bereits zuvor aufgerufen wurde (wenn sie sich in seinem Cache befindet) und ob sie auf dem Server seit der letzten Anfrage des Proxys nicht geändert wurde. Wenn dies der Fall ist, wird die Seite nicht erneut vom Server angefordert, sondern die Kopie aus dem Cache an den Benutzer gesendet, was die Leistung oder Geschwindigkeit der Internetverbindung der Computer hinter dem Proxy erheblich verbessert.
Proxy-Server haben mehrere Funktionen, einige der häufigsten sind:
- Schnittstelle zwischen dem internen und dem öffentlichen Netzwerk (Internet): zur Kontrolle des Zugangs der Geräte eines Netzwerks zum Internet.
- Bandbreitenkontrolle: Den Benutzern eines Netzwerks können bestimmte Ressourcen und eine bestimmte Menge an verfügbarer Bandbreite zugewiesen werden. Zu den Kontrollaufgaben gehört auch die Überwachung der Verfügbarkeit des Servers.
- Schutz vor Netzwerkangriffen: Der Proxy-Server wird zwischen dem eigentlichen Datenserver und den Benutzern platziert. Die Webseiten, die mit vertraulichen Kundendaten arbeiten, wie z. B. Online-Shops, nutzen diese Lösung häufig zum Schutz ihrer Server.
- Netzwerkprotokollierung: Proxy-Server werden in der Regel zur Protokollierung von Netzwerkaktivitäten eingesetzt, so dass böswillige Zugänge schneller identifiziert werden können.
- Anonymer Traffic: Im Internet kann die Verwendung eines Proxys die IP-Adresse anonymisieren und so Zugangsbeschränkungen, z. B. für eine bestimmte Website, umgehen.
- Geringere Belastung des eigentlichen Servers: Ein Proxy-Server kann die an ihn gerichteten Anfragen speichern und so die angeforderten Informationen liefern, ohne den eigentlichen Anwendungsserver zu belasten. Gleichzeitig erhält der anfragende Client die Informationen schneller.
- Inhaltssperre: In öffentlichen Netzwerken kann der Internetzugang über einen Proxy-Server beschränkt werden, um das Navigieren auf Websites nach deren Inhalt oder zu bestimmten Zeiten einzuschränken. Darüber hinaus können die Filterfunktionen auch die Entfernung von Werbung während der Navigation umfassen.
- Zeitoptimierung: Ein Proxy-Server kann Timeouts und Begrenzungen für die Dauer von Anfragen und Antworten anpassen, um eine schlechte Netzwerkleistung zu vermeiden. Darüber hinaus kann er die Inhaltsverweigerungsmeldung für verschiedene Einschränkungen anpassen.
Proxy-Typen
Es gibt viele verschiedene Proxy-Typen, jeder mit spezifischen Funktionen und Eigenschaften. Im Folgenden finden Sie eine kurze Liste mit einigen der häufigsten:
- Web-Proxy/Web-Cache: Dies ist der häufigste Typ, der für den Internetzugang dient und die IP-Adresse der Geräte in einem Netzwerk mit seiner eigenen maskiert, wenn er eine Ressource im Internet anfordert. Darüber hinaus bietet es eine Zwischenspeicherung für heruntergeladene Inhalte, die von allen Computern im Netzwerk gemeinsam genutzt wird, wodurch sich die Zugriffszeiten bei sich überschneidenden Abfragen verbessern und gleichzeitig die Verbindungen zum Internet entlastet werden.
- Reverse-Proxy: Auch als umgekehrter Proxy bekannt, wird er in der Regel in Verbindung mit einem oder mehreren Anwendungsservern konfiguriert, die Anfragen aus dem Internet erhalten, um sie z. B. vor Denial-of-Service-Angriffen zu schützen. Der gesamte Traffic, der aus dem Internet kommt und zu einem von diesen Web-Servern geht, durchläuft den Reverse-Proxy als zusätzliche Sicherheitsebene. Außerdem wird bei der Erstellung einer sicheren Web-Seite (HTTPS) die Verschlüsselung in der Regel nicht durch den Web-Server selbst, sondern durch den Proxy vorgenommen. Ebenso kann der Reverse Proxy eine Lastverteilung zwischen mehreren Web-Servern vornehmen, indem er externe Anfragen auf interne Adressen umschreibt, je nachdem, auf welchem Server sich die angeforderten Informationen befinden, und indem er statische Inhalte wie Bilder oder Grafiken speichert, um die Antwort zu beschleunigen.
- Transparenter Proxy: keine Konfiguration durch den Client erforderlich, Anwendung direkt auf der Netzwerkebene. Sie werden in der Regel von Internet-Diensteanbietern (ISPs) unter anderem für die Web-Filterung verwendet.
- Offener Proxy: Dies sind Proxy-Server, die Anfragen von jedem Gerät akzeptieren, unabhängig davon, ob sie mit demselben Netzwerk verbunden sind oder nicht. In dieser Konfiguration führt der Proxy jede Anfrage so aus, als wäre sie seine eigene. Sie werden nicht empfohlen, da sie häufig als Einfallstor für den Versand von Spam-E-Mails genutzt werden und einige Dienste den Zugang von diesen Proxys verweigern.
Vorteile und Nachteile
Grundsätzlich machen es Proxys Folgendes möglich:
- Kontrolle: Nur der Vermittler führt die eigentliche Arbeit aus, so dass die Rechte der Benutzer eingeschränkt und nur dem Proxy-Server erteilt werden können.
- Einsparung: nur einer der Benutzer (der Proxy) muss bereit sein, die eigentliche Arbeit zu tun, d.h. über die Ressourcen und ihre Konfiguration verfügen, in diesem Fall z.B. die externe IP-Adresse zum Internet.
- Geschwindigkeit: Wenn mehrere Clients dieselbe Ressource anfordern, kann der Proxy die Antwort auf eine Anfrage zwischenspeichern und direkt zurücksenden, wenn ein anderer Benutzer sie benötigt, wodurch sich die Antwortzeit beschleunigt.
- Nachfrage: Der Proxy kann eine große Anzahl von Benutzern abdecken, die über ihn bestimmte Web-Inhalte anfordern.
- Filterung: Der Proxy kann sich weigern, auf bestimmte Anfragen zu antworten, wenn er feststellt, dass diese verboten sind.
- Anonymität: Anonyme Verbindung zu einer externen Ressource, ohne die IP-Adresse des Clients preiszugeben, da die IP-Adresse verwendet wird, die der Proxy zum Abrufen der Ressource verwendet.
Andererseits kann auch die Verwendung von Proxys Folgendes verursachen:
- Keine Identifizierung: Wenn alle Benutzer als ein einziger identifiziert werden, ist es für die aufgerufene Ressource problematisch, zwischen ihnen zu unterscheiden, da alle Anfragen von der gleichen IP-Adresse aus gestellt werden. Dies kann in einigen Szenarien ein Problem darstellen, wenn eine echte Identifizierung erforderlich ist, oder bei fortgeschrittenen Operationen über einige Ports oder Protokolle.
- Intransparenz: Die Speicherung von Seiten und Objekten, die von Kunden angefordert werden, kann für einige Benutzer eine Verletzung der Privatsphäre darstellen, insbesondere beim Caching und der Speicherung von Kopien von Daten.
Inkonsistenz: Bei Verwendung von Cache sind die angezeigten Web-Seiten möglicherweise nicht auf dem neuesten Stand, wenn sie seit dem letzten Herunterladen geändert worden sind. Dieses Problem ist heutzutage stark eingeschränkt, da der Proxy sich mit dem entfernten Server verbindet, um zu prüfen, ob die Version, die er im Cache hat, immer noch die aktuellste ist; diese Situation kann jedoch gelegentlich auftreten
