Herstellerdiagramme enden meist am verschlüsselten Listener, weil das der Teil mit einer öffentlichen Adresse ist. Die Frage, die die Sicherheitslage entscheidet, ist, was nach der Entschlüsselung geschieht, wenn das Paket zu gewöhnlichem IP wird und alles erreichen kann, was die Routing-Tabelle zulässt. Wenn niemand dieses Teilstück gezeichnet hat, gehört es niemandem. Das Runbook unten zeichnet es zuerst und vergleicht dann Platzierungen danach, was die entschlüsselte Anfrage tatsächlich überquert.

Das Paket nach der Entschlüsselung zeichnen, nicht davor

Der äußere Pfad ist der Teil, den Hersteller dokumentieren: ein öffentlicher Endpunkt, eine Transportrichtlinie, die die Verbindung zulässt, und ein Dienst, der sie terminiert. Der innere Pfad beginnt in dem Moment, in dem das Paket seinen Tunnel-Header verliert, und von dort wird es von Routing- und Filterregeln geführt, die nichts mit dem Tunnel zu tun haben. Setzen Sie beides auf dieselbe Seite, denn ein Diagramm nur mit dem ersten legt nahe, dass Zulassung und Autorisierung eine Entscheidung sind. Sie sind es nicht, und genau in der Lücke dazwischen gehen die meisten Platzierungen schief.

Schreiben Sie das innere Teilstück als nummerierte Folge mit benannten Gerätetypen statt als Pfeil. Ein Pfeil verbirgt, ob die Anfrage einen Filter überquert, und Überqueren oder nicht ist die ganze Frage. Jeder Schritt unten nennt das Gerät und das dort wirkende Regelset, sodass ein fehlender Filter als Lücke erscheint und nicht durch eine Linie angedeutet wird.

  1. Entfernter Client: das Benutzergerät, das den Tunnel aufbaut.
  2. Edge-Richtlinie: das Regelset, das den äußeren Transport zum öffentlichen Listener zulässt.
  3. Terminierende Appliance: der VPN-Endpunkt, der entkapselt und das Paket an gewöhnliches IP übergibt.
  4. Innerer Filter: das Regelset für Weiterleitung oder Sicherheitsgruppen, das Verkehr vom Client zum Dienst begrenzt.
  5. Anwendungshost: der Dienst, der die entschlüsselte Anfrage empfängt.

Zwei Richtlinien, zwei Eigentümer

Die äußere Richtlinie beantwortet, wer einen Tunnel aufbauen darf, und sie drückt sich in den Regeln aus, die den Transport zum terminierenden Dienst zulassen. Die innere Richtlinie beantwortet, welchen Dienst ein authentifizierter Benutzer erreichen darf, und sie lebt in Weiterleitungsregeln, Sicherheitsgruppen oder der Anwendung selbst. Ein Gerät kann beide beherbergen, und ein Entwurf mit mehreren Geräten hat weiterhin beide. Erst die getrennte Benennung erlaubt es Ihnen zu sagen, welche versagt hat, wenn ein Benutzer eine Anwendung nicht erreicht.

Zulassungskontrollen wie Zertifikate und Mehrfaktor-Authentifizierung beantworten Identität und sonst nichts. Sie entscheiden nicht über die Platzierung und gewähren keine Berechtigung pro Ressource, sobald ein Benutzer drinnen ist.

Die Platzierung entscheidet, welche Grenze die Anfrage überquert

Drei Platzierungen sind üblich, und jede ändert, welche Grenze die entschlüsselte Anfrage überquert. Vergleichen Sie sie danach, was dort terminiert, was Klartext sehen kann, welche Kontrolle die Anfrage noch ablehnen kann und was mit der Appliance ausfällt. Die Tabelle unten nutzt diese vier Spalten statt einer allgemeinen Frage, denn jede Antwort ist eine eigene Entwurfsentscheidung.

PlacementWhat terminates thereWhat sees plaintextWhich control can still denyFailure domain
Termination in a dedicated segmentA dedicated VPN endpointThe endpoint and anything on its segmentThe filter between that segment and the applicationThe segment path can bypass the filter if no rule sits on it
Termination on the edge firewallThe firewall's public listenerThe firewall, after decapsulationThe firewall's inner rule setAdmission and inspection fail together
Termination on the protected LANThe appliance's LAN legEvery host on the protected LANOnly a host control or a downstream gatewayThe appliance and the protected hosts fail together

Die dritte Platzierung ist die, die Durchsetzung still entfernt, denn ein Teilstück am geschützten Segment gibt der Appliance einen direkten Pfad, den das Diagramm womöglich nicht zeigt. Prüfen Sie Schnittstellen und Routen statt des Bildes: ip route get 10.20.5.10 meldet, über welche Schnittstelle das Paket das Gerät verlassen würde, und die Antwort ist oft nicht die, die der Entwurf annahm. Die klassische Firewall-Rolle, Verkehr zwischen Zuständen zu kontrollieren, wie inNIST SP 800-41 beschrieben, ist hier ein nützlicher Test, denn ein Gerät mit einem unbeschränkten Teilstück zum geschützten Netz kontrolliert nicht viel. Eine Routenabfrage ist ein ehrlicheres Diagramm als das in der Präsentation.

Administration gehört auf ihren eigenen ausdrücklich erlaubten Pfad. Benutzern den Zugriff auf eine Anwendung zu erlauben verlangt nie, ihnen den Zugriff auf die Verwaltungsschnittstelle der Appliance zu erlauben, und die beiden Berechtigungen sollten aus verschiedenen Regeln erteilt werden. Prüfen Sie beide Pfade getrennt, denn eine gemeinsame Regel verbirgt, welcher geöffnet wurde.

Übersetzung verändert, was nachgelagerte Regeln sehen können

Quellübersetzung ist bequem und zerstört Information. Nach dem Masquerading sieht jeder Client wie die Appliance aus, sodass eine nachgelagerte Regel, die Benutzer unterscheiden sollte, das nicht mehr kann. Das ist nicht nur ein Protokollproblem, es ist ein Richtlinienproblem: eine auf die Client-Adresse geschlüsselte Regel wird still zu einer auf das Gateway geschlüsselten Regel. Wenn Richtlinien pro Benutzer zählen, bewahren Sie die Quelle oder setzen Sie die Richtlinie vor der Übersetzung durch.

Der Rückweg verdient dieselbe Prüfung. Halten Sie fest, welche Route das Ziel für das Rückpaket wählt, denn eine asymmetrische Rückkehr umgeht die zustandsbehaftete Inspektion und erzeugt eine Verbindung, die sich aufbaut und dann hängen bleibt. Beide Richtungen müssen die gezeichnete Grenze überqueren, sonst ist die Grenze Dekoration.

sudo tcpdump -ni inside0 host 10.20.5.10
ip route get 10.20.5.10
sudo iptables -t nat -S POSTROUTING

Eine erlaubte und eine abgelehnte Operation annehmen

Testen Sie vom echten entfernten Client statt von einem Verwaltungshost, denn der Verwaltungshost sitzt meist dort, wo der Benutzer nie sein wird. Eine erlaubte Operation beweist, dass der Pfad funktioniert, und eine abgelehnte beweist, dass die Richtlinie überhaupt etwas tut. Führen Sie beide nach jeder Änderung der Platzierung aus und notieren Sie die verwendete Quellidentität und das Ziel. Ein Test, der nur Erfolg beweist, kann eine korrekte Regel nicht von einer fehlenden unterscheiden.

Testen Sie dann die Fälle, die Zustand ändern: eine Wiederverbindung, eine Sitzung, die eine Schlüsselrotation überlebt, und ein Ausfall der Appliance selbst. Vergleichen Sie Aktualisierungen, Kapazität und Wiederherstellung als Teil desselben Layouts, denn eine Appliance, die mehrere logische Kontrollen trägt, ist eine Fehlerdomäne mit mehreren Etiketten. Auch eine zweite Box ist nicht unabhängig, wenn ein gemeinsames Verwaltungsmerkmal oder eine unbeschränkte Route die Grenze besiegt, die sie schaffen sollte.

Dokumentieren Sie den Endpunkt, den entschlüsselten Pfad und die Kontrolle, die ihn einschränkt. Diese drei Zeilen bleiben aussagekräftig, wie die Implementierung auch heißt.

Ähnliche Artikel