Alte kryptografische Beschleuniger tauchen im PCI-Inventar auf, und es wird angenommen, dass das VPN nun schneller verschlüsselt. Vier getrennte Übergaben müssen gelingen, bevor das stimmt: Das System findet das Gerät, ein gepflegter Treiber steuert es, eine Schnittstelle stellt die Operation bereit, die das VPN braucht, und das aktive Backend des VPN fragt sie ab. Scheitert eine davon, bleibt die Karte außerhalb des tatsächlichen Pfads des Tunnels.

Erkennung ist die erste Übergabe, nicht die letzte

Die Erkennung belegt nur, dass der Bus ein Gerät sieht und der Kernel eine Vorstellung davon hat, was es ist. Treiberunterstützung ist das nächste Tor, und sie ist versionsabhängig: Ein Modul aus einer alten Version kann im aktuellen Kernelpaket vollständig fehlen. Darüber hinaus muss der Treiber den konkreten Algorithmus und Modus registrieren, den der Datenkanal nutzt. Eine Karte, die AES-CBC beschleunigt, bewirkt nichts für eine Konfiguration, die AES-GCM aushandelt.

Benennen Sie jede Übergabe in der Bewertung getrennt, denn ein Fehler bei der vierten sieht von außen genauso aus wie ein Fehler bei der ersten.

Lesen Sie das Algorithmusinventar des Kernels

Beginnen Sie damit zu erfassen, was der Host bereits über das Gerät und über die von ihm registrierten Algorithmen weiß.

lspci -nn | grep -i -E "crypt|hifn|soekris"
grep -E "^(name|driver|priority)" /proc/crypto | head -40

Die PCI-Zeile liefert die Hersteller- und Geräte-IDs, die für jede Treibersuche nötig sind, und/proc/crypto listet registrierte Implementierungen mit ihren Treibern und Prioritäten auf. Ein Prioritätswert ordnet die Auswahl unter Implementierungen desselben Algorithmus, was nicht dasselbe ist, wie wenn eine Anwendung eine davon auswählt. Erscheint der Algorithmus der Karte dort nicht, hat der Treiber ihn nie registriert, und keine Änderung im Userspace wird ihn aufrufen. Notieren Sie die IDs und Implementierungsnamen statt eines Screenshots der Karte.

Das VPN muss genau diese Implementierung auswählen

Verfügbarkeit im Kernel ist ein Menü, keine Garantie dafür, dass der VPN-Prozess daraus bestellt hat. Prüfen Sie, was das Backend tatsächlich nutzt.

openssl speed -evp aes-256-gcm
openssl engine -t -c

Der Geschwindigkeitsbefehl durchläuft den eigenen Pfad der Bibliothek und liefert eine Basislinie für die Maschine in ihrer Konfiguration, während die Engine-Auflistung zeigt, ob OpenSSL überhaupt ein optionaler Anbieter zur Verfügung steht. Ein Userspace-VPN mit eigener Kryptobibliothek umgeht Kernel-Implementierungen vollständig, sodass ein registrierter Treiber für es irrelevant sein kann. Die Auslagerung des Datenkanals ist wiederum ein dritter Mechanismus, der die Paketverarbeitung ändert, statt Chiffreanfragen an eine Erweiterungskarte zu schicken. Stellen Sie fest, welcher dieser drei Ihre Bereitstellung beschreibt, bevor Sie Hardware für den vierten kaufen.

Vergleichen Sie mit dem CPU-Pfad, den Sie schon haben

Moderne Prozessoren enthalten AES-Befehle, die eine gepflegte Bibliothek ohne zusätzliche Hardware nutzt, und sie vermeiden Busübertragungen und zusätzliche Kopien. Ein alter Beschleuniger kann gegen diesen Pfad verlieren, während er noch beeindruckende rohe Chiffrezahlen meldet. Messen Sie die reale Last: derselbe Verkehr, dieselben Schutzparameter, Basislinie gegen Kandidat, mit gemeinsam erfasster CPU-Last und Anwendungsdurchsatz. Beziehen Sie Aktualisierungs- und Wiederherstellungsverhalten in die Entscheidung ein, denn ein ungepflegtes Modul erhöht das Wartungsrisiko des Gateways für seine gesamte Lebensdauer.

Der Kaufgrund ist eine unterstützte Kette plus ein gemessener Nutzen. Eine erkannte Karte oder ein Modul, das jemand einmal kompiliert hat, ist kein Grund, ein gepflegtes Gateway von veralteter Hardware abhängig zu machen.

Ähnliche Artikel