Sichere Bereitstellung von Webanwendungen
SSL (Secure Sockets Layer)
oder korrekter TLS (Transport Layer Security) ist eine wichtige Komponente in der sicheren Auslieferung von Webanwendungen. Es ermöglicht die Authentifizierung (Website zu Client und optional Client zu Website) und schützt den Datenverkehr zwischen
Clients und Websites durch Verschlüsselung.
Dieser Schutz hat seinen Preis, denn der Rechenaufwand für den Aufbau jeder Client-Sitzung ist erheblich. Durch den Einsatz eines Load Balancers, der die SSL-Verarbeitung auslagert, wird dieser Overhead von den Webservern entfernt und es werden Ressourcen für Aufgaben im Zusammenhang mit Webanwendungen frei.
Load Balancer sind ideal für SSL-Offloads geeignet, die nicht nur Webserver-Ressourcen freisetzen, sondern es dem Load Balancer auch ermöglichen, den Datenverkehr zu überprüfen und Sicherheits- und Datenverkehrsmanagement-Richtlinien anzuwenden. Viele Hardware-Load-Balancer verfügen über dedizierte kryptografische Prozessoren, die für hohe SSL-Transaktionsraten und die Sicherung der privaten Schlüssel optimiert sind, die zur Sicherung der Kommunikation verwendet werden.
Alle Kemp LoadMaster-Produkte bieten die Möglichkeit, die SSL-Verarbeitung von Servern auszulagern und zusätzlichen Schutz durch Authentifizierung und Web Application Firewalls zu bieten. Einige LoadMaster-Hardware-Modelle verfügen nicht nur über eine für SSL-Offload optimierte Software, sondern auch über kryptografische Prozessoren zur Beschleunigung der SSL-Verarbeitung.
Was ist SSL-Beschleunigung?
SSL verwendet den RSA-Algorithmus für die Authentifizierung und den sicheren Schlüsselaustausch zwischen Clients und Websites. Dieser Algorithmus ist eine mathematische Falltür, die zwei Schlüssel verwendet - einen privaten Schlüssel, der sicher auf dem Webserver oder Load Balancer gespeichert ist, und einen öffentlichen Schlüssel, der allen Clients zur Verfügung steht. Der öffentliche Schlüssel ist in ein digitales Zertifikat verpackt, so dass der Client die Authentizität des privaten Schlüssels überprüfen kann.
Alles, was mit dem privaten Schlüssel verschlüsselt wird, kann mit dem öffentlichen Schlüssel entschlüsselt werden und andersherum. Auf diese Weise kann ein Webserver seine Identität nachweisen (Verschlüsselung mit privatem Schlüssel, Überprüfung durch den Client durch Entschlüsselung mit öffentlichem Schlüssel) und der Client kann sicher mit dem Server kommunizieren (Verschlüsselung mit öffentlichem Schlüssel, Entschlüsselung durch den Server mit privatem Schlüssel). Dieser Zwei-Schlüssel-Ansatz wird als asymmetrische Verschlüsselung bezeichnet.
Aufgrund des Rechenaufwands ist es nicht praktikabel, den RSA-Algorithmus für die gesamte Client-Server-Kommunikation zu verwenden. Stattdessen wird der RSA-Algorithmus nur während des anfänglichen Sitzungsaufbaus verwendet, wenn ein einmaliger Schlüssel (oder Sitzungsschlüssel) für einen effizienteren symmetrischen Algorithmus, wie AES, ausgetauscht wird. Dieser erste Handshake zwischen Client und Server erfordert eine Beschleunigung und Entlastung.