Ein wenig über VPN: Ein kurzer Überblick über Software-Implementierungen



    / Foto reynermedia CC

    Woche in unserem Blog , wir hoben das Speicher Thema, sondern Technologien, könnte ändern , mit Ihnen über die Rechenzentren unsere Sicht. Heute wollen wir über Technologien sprechen, die in direktem Zusammenhang mit der Datenübertragung stehen.

    Heutzutage verwenden viele Leute ein VPN, um geschäftliche oder persönliche Probleme zu lösen, und wissen, dass es eine relativ große Anzahl unterschiedlicher VPN-Implementierungen gibt - jede mit ihren eigenen Vor- und Nachteilen. Dieser Beitrag widmet sich einer kurzen vergleichenden Analyse der gängigsten Softwarelösungen zum Erstellen von virtuellen privaten Netzwerken.

    Bevor wir mit dem Vergleich fortfahren, skizzieren wir den Aufgabenbereich, den VPN löst:

    • Adressierung von Paketen für bestimmte Kunden.
    • Effiziente und gleichzeitig nicht allzu ressourcenintensive Verschlüsselung im laufenden Betrieb, die die Weitergabe von Informationen in offener Form verhindert.
    • Authentifizierung der Teilnehmer bei Verbindung mit dem Netzwerk und Überprüfung der Datenquellen, um das Netzwerk vor nicht autorisierten Knoten und Paketen zu schützen, die in das Netzwerk gelangen.

    Da die VPN-Technologie in erster Linie für den Unternehmensgebrauch bestimmt ist, sollten bei der Bewertung der Implementierung dieser Technologie Sicherheits-, Geschwindigkeits- und Stabilitätsindikatoren berücksichtigt werden.

    Heutzutage wird VPN jedoch auch zur Lösung einfacher, alltäglicher Aufgaben verwendet, wodurch Funktionen wie die plattformübergreifende und einfache Einrichtung nicht weniger wichtige Kriterien für die Auswahl einer Implementierung sind.

    Wir werden die Flexibilität, Sicherheit, Geschwindigkeit und Stabilität der folgenden Implementierungen bewerten:

    • PPTP (Point-to-Point-Tunneling-Protokoll),
    • IPSec (IP-Sicherheit),
    • L2TP (Layer 2 Tunneling Protocol) und L2TP + IPSec,
    • OpenVPN,
    • SSTP (Secure Socket Tunneling Protocol).

    PPTP (Punkt-zu-Punkt-Tunnelprotokoll)


    PPTP wurde von Microsoft erstellt und 1999 veröffentlicht, wird aber trotz seines beachtlichen Alters noch heute verwendet. Es verwendet TCP, um eine Verbindung herzustellen, und das MPPE- Protokoll (von demselben Microsoft), um die übertragenen Daten zu verschlüsseln. Die Clientauthentifizierung wird normalerweise vom MS-CHAPv2- Mechanismus bereitgestellt .

    Die Verbreitung von PPTP VPN ist mit einer einfachen Konfiguration und plattformübergreifenden Verwendung verbunden. Die Unterstützung ist standardmäßig in die meisten modernen Betriebssysteme (einschließlich mobiler Betriebssysteme und Betriebssysteme für Router) integriert. Neben anderen Gründen für die Beliebtheit dieser Lösung ist die minimale Belastung der Rechenressourcen, die hohe Geschwindigkeit und die Stabilität hervorzuheben.

    Aus Sicherheitsgründen hat sich PPTP jedoch selbst kompromittiert. Bisher wurden zahlreiche Sicherheitslücken sowohl im MMPE-Protokollgerät (z. B. Ändern des ausgehenden RC4-Streams) als auch im MS-CHAP-Authentifizierungselement (2012 wurde ein Onlinedienst eingerichtet) entdeckt. MS-CHAPv2 Matching Key in 23 Stunden). Obwohl das letztere Problem behoben wird, indem der Authentifizierungsmechanismus von MS-CHAP in PEAP geändert wird , empfiehlt Microsoft jetzt selbst die Verwendung von L2TP oder SSTP.

    IPsec (IP-Sicherheit)


    IPSec ist eine Gruppe von Protokollen, die die Vertraulichkeit von Daten gewährleisten, die über IP-Netzwerke übertragen werden, indem ihre Authentizität und Integrität überprüft und Pakete verschlüsselt werden. IPsec kann im Transport- und Tunnelmodus betrieben werden. Wenn im ersten Fall nur die Daten des übertragenen Pakets verschlüsselt werden und der ursprüngliche Header gespeichert wird, wird im zweiten Fall der gesamte übertragene Verkehr verschlüsselt, der dann in das Datenfeld des neuen IP-Pakets eingekapselt wird.

    Beim Erstellen von VPN-Netzwerken wird der IPsec-Transportmodus in Verbindung mit anderen Implementierungen (normalerweise L2TP) verwendet. Der Tunnelmodus selbst ist eine Methode zum Erstellen eines VPN-Tunnels.

    Die IPSec-Verbindungsverschlüsselung wird durch Protokolle und Algorithmen wie IKE (Internet Key Exchange Protocol) und ISAKMP bereitgestellt(Internet Security Association und Key Management Protocol), AH (Authentication Header Protocol), STS (Station-to-Station-Protokoll), SHA-1 (Security Hash Algorithm) und andere.Ein

    Merkmal von IPSec, das etwas von der Definition von VPN abweicht, ist Die Tatsache, dass kein zusätzlicher virtueller Netzwerkadapter im System erstellt wird, sondern eine standardmäßige externe Schnittstelle verwendet wird. Im Allgemeinen handelt es sich nicht einmal um eine Implementierung der Virtual Private Network-Technologie, sondern um ein Schutztool gegen das Fälschen übertragener IP-Pakete. Die Bereitstellung von virtuellen Tunneln ist eher die "Neben" -Eigenschaft.

    IPsec wird von allen modernen Betriebssystemen (Server, Desktop, Mobile) sowie von einer Reihe von Routern unterstützt. Wenn Sie ein VPN auf letzterem einrichten, müssen Sie keine Manipulationen mit Clients vornehmen, die sich hinter den Routern befinden. Aufgrund der oben beschriebenen Funktionen gilt IPsec als eine der besten VPN-Bereitstellungslösungen.

    Es gab jedoch einige Sicherheitslücken. Es ist bekannt, dass diese Implementierung im Transportmodus Angriffen ausgesetzt sein kann, die auf das ISAKMP-Protokoll abzielen. Wenn IPsec ohne AH-Header arbeitet, kann ein Angreifer seine eigenen Daten in übertragene Pakete einspeisen, was natürlich nachteilige Folgen für den Empfänger hat. Bekannt ist auch ein Angriffsverfahren, bei dem eine Paketübertragungsroute ersetzt wird. Darüber hinaus gibt es einen Exploit , der IPSec-Datenverkehr über eine IKE-Sicherheitsanfälligkeit entschlüsseln kann.

    L2TP (Layer 2 Tunneling Protocol)


    L2TP ist ein Tunnelprotokoll für virtuelle private Netzwerke. Es ist eine Symbiose aus dem L2F-Protokoll (Layer 2 Forwarding) von Cisco und dem oben beschriebenen PPTP. Sie können VPN-Netzwerke mit unterschiedlichen Zugriffsrechten erstellen, haben jedoch einen Nachteil: Sie verschlüsseln den Datenverkehr nicht.

    Es übernimmt die Verantwortung für die Vertraulichkeit und Integrität von L2TP-Paketen innerhalb des Tunnels und erfordert gleichzeitig die Verschlüsselung des gesamten auf Paketebene durchlaufenden Datenverkehrs. Für diese Aufgabe wird normalerweise IPsec verwendet.

    L2TP / IPsec ist in allen modernen Betriebssystemen vorhanden und kann auf der Clientseite problemlos konfiguriert werden. Beachten Sie jedoch, dass L2TP den UDP-Port 500 verwendet, der manchmal blockiert wird, wenn Sie sich hinter NAT befinden. In diesem Zusammenhang ist möglicherweise eine zusätzliche Konfiguration der Firewall oder des Routers (Portweiterleitung) erforderlich, die für Lösungen mit dem Standard-TCP-443-Port für HTTPS nicht erforderlich

    ist Da es Daten zweimal kapselt, arbeitet es etwas langsamer als Implementierungen, die SSL verwenden (z. B. OpenVPN oder SSTP).

    Im Hinblick auf die Stabilität verdient L2TP / IPsec eine hervorragende Bewertung. Der Nachteil von LT2P / IPsec ist, dass es fast doppelt so viele Rechenressourcen des Prozessors verwendet, um eine doppelte Kapselung bereitzustellen.

    SSTP (Secure Socket Tunneling Protocol)


    Secure Socket Tunneling Protocol ist eine weitere Idee von Microsoft, die mit der Veröffentlichung von Windows Vista eingeführt wurde. Heutzutage kann nicht nur Windows Server 2008/2012, sondern auch ein Computer unter Linux oder RouterOS als SSTP-Server fungieren. In letzteren Fällen kann diese Lösung jedoch nicht als voll funktionsfähig bezeichnet werden.

    Dank der Unterstützung von SSL v.3 kann SSTP ohne Konfiguration eines Routers / einer Firewall verwendet werden. Die Windows-Integration vereinfacht die Konfiguration und gewährleistet einen stabilen Betrieb. Für die Verschlüsselung wird ein starkes AES verwendet.

    Trotz der Tatsache, dass SSTP viele Vorteile hat und eine junge Entwicklungstechnologie ist, funktioniert es am besten in Windows-basierten Netzwerken - in anderen Fällen kann es zu Einschränkungen kommen.

    Openvpn


    OpenVPN ist eine relativ junge (im Jahr 2002 das Licht der Welt erblickte) offene VPN-Implementierung, die unter der GNU GPL vertrieben wird. Die Sicherheit der hier bereitgestellten Tunnel wird durch die OpenSSL- Bibliothek gewährleistet , die wiederum eine breite Palette von Verschlüsselungswerkzeugen (Blowfish, AES, Camelia, 3DES, CAST) bietet. Die Geschwindigkeit von OpenVPN hängt vom gewählten Algorithmus ab. In der Regel ist diese Implementierung jedoch schneller und verbraucht weniger Ressourcen als L2TP / IPsec.

    Ein weiterer wesentlicher Vorteil von OpenVPN ist die Möglichkeit, dank SSL / TLS-Kapselung NAT und die Firewall ohne zusätzliche Konfiguration über den Standard-TCP-443-Port für HTTPS zu passieren. Das UDP-Protokoll wird ebenfalls bereitgestellt - dies ist die Standardoption.

    TCP bietet eine bessere Zuverlässigkeit der Datenübertragung, hat jedoch große Verzögerungen im Vergleich zu UDP, das aufgrund der fehlenden Bestätigung der Paketzustellung an Geschwindigkeit gewinnt. Bei Verwendung des TCP-Protokolls ist OpenVPN die langsamste vorgestellte Implementierung.

    OpenVPN bietet auch ein LZO-Tool für die Datenkomprimierung. Aufgrund seiner umfangreichen Konfigurationsmöglichkeiten und der Unterstützung für die meisten Betriebssysteme ist OpenVPN zu einer sehr beliebten Lösung geworden. Die einzige Einschränkung ist, dass Sie Software von Drittanbietern installieren müssen.

    Die Flexibilität von OpenVPN kann nur zu einem Problem führen - die Konfiguration ist sehr anstrengend. Dieses Problem wird jedoch durch das Vorbereiten vorkonfigurierter Installationsclientpakete oder beispielsweise durch die Verwendung von OpenVPN Remote Access Server behoben .

    In unseren Handbüchern finden Sie schrittweise Anleitungen zur Konfiguration des OpenVPN-Servers unter Ubuntu / Debian , CentOS und Windows . Sie können unseren Cloud- VPS-Server verwenden , um ein virtuelles privates Netzwerk bereitzustellen . Diese Implementierung bietet auch eine Reihe zusätzlicher Sicherheitsfunktionen für private Netzwerke. Eine Übersicht der wichtigsten finden Sie in unserer Wissensdatenbank .

    Fazit


    Um einen kleinen Artikel zusammenzufassen. PPTP ist stabil und benutzerfreundlich, aber sehr anfällig. Daher eignet es sich für Situationen, in denen die Privatsphäre von Tunneln keine besondere Rolle spielt. Wenn dies wichtig ist, bietet das L2TP + IPsec-Bundle alle Vorteile von PPTP, bietet jedoch gleichzeitig ein deutlich höheres Sicherheitsniveau.

    IPsec kann mit einer großen Anzahl von Verschlüsselungs- und Authentifizierungsalgorithmen für VPNs arbeiten, obwohl es an sich keine Implementierung der Virtual Private Network-Technologie ist, sondern ein Protokollstapel zum Schutz von IP-Paketen während der Übertragung. Gleichzeitig ist IPsec für die Bereitstellung eines aus Sicherheitsgründen „geschärften“ virtuellen privaten Netzwerks durchaus geeignet.

    Zuvor wurde für diese Zwecke in der Regel IPsec in Verbindung mit L2TP verwendet, aber heute beginnt sich die Situation zu ändern.. Im Allgemeinen ist IPsec aufgrund seiner umfassenden Funktionen eine der besten VPN-Lösungen.

    L2TP in Verbindung mit IPSec bietet eine gute Leistung sowohl in Bezug auf die Sicherheit als auch in Bezug auf die Kompatibilität mit gängigen Betriebssystemen. Hier kann jedoch eine zusätzliche Portkonfiguration erforderlich sein. Das zweite Minus ist die doppelte Kapselung, die den Tunnel verlangsamt.

    SSTP ist praktisch in der Konfiguration, stabil und ziemlich sicher, aber es ist gleichzeitig ein Produkt von Microsoft, da seine Arbeit stark an das Windows-Betriebssystem gebunden ist. Auf anderen Systemen ist die SSTP-Funktionalität oft nicht so attraktiv.

    OpenVPN kann aufgrund des Gleichgewichts von Indikatoren wie Geschwindigkeit (aufgrund von LZO-Komprimierung und standardmäßiger Arbeit über UDP), Stabilität (insbesondere bei Arbeit über TCP), Konfigurationsflexibilität, plattformübergreifender Sicherheit (Clientanwendungen für die meisten modernen Betriebssysteme) als sehr vernünftige Wahl bezeichnet werden (Dank der Arbeit mit allen Werkzeugen der OpenSSL-Bibliothek).

    Die vielfältigen Möglichkeiten sind jedoch mit einem Nachteil verbunden - im Vergleich zu anderen Implementierungen kann die Ersteinrichtung schwieriger sein. Dieses Problem wird jedoch teilweise durch die Verwendung von Standardkonfigurationen und die Fähigkeit des Servers, einen wesentlichen Teil der Verbindungsparameter automatisch an Clients zu übertragen, verringert. So oder so scheint uns die OpenVPN-Implementierung die ausgewogenste Softwarelösung zu sein.

    Um ein VPN in Ihre Infrastruktur zu implementieren, können Sie die Dienste zahlreicher VPN-Anbieter nutzen. Diese Lösung ist jedoch in der Regel teuer, insbesondere wenn Sie eine große Anzahl von Clients mit dem Netzwerk verbinden müssen. Darüber hinaus sind Sie gezwungen, Ihre Unternehmens- oder persönlichen Daten dem Anbieter anzuvertrauen.

    Ein zuverlässigeres und flexibleres Szenario ist die Selbstkonfiguration eines VPN auf einem physischen oder virtuellen Server (VPS / VDS) . Sie können beispielsweise ein virtuelles privates OpenVPN-Netzwerk mithilfe einer unserer schrittweisen Anleitungen ( Windows , Linux ) mithilfe des cloudbasierten VPS / VDS-Servers von 1cloud erstellen.

    Die minimale Hardwarekonfiguration des Servers reicht für diese Aufgabe aus, und die monatlichen Gerätekosten liegen unter dem Marktdurchschnitt, wenn ein VPN für mehrere Geräte bereitgestellt wird. Darüber hinaus lässt sich diese Lösung problemlos auf die aktuelle Last des virtuellen privaten Netzwerks skalieren.

    PS Wir freuen uns immer, unsere Erfahrungen bei der Entwicklung des IaaS-Anbieters 1cloud mit Ihnen zu teilen. Deshalb haben wir einige Materialien für Sie vorbereitet:


    Jetzt auch beliebt: