Was ein VPN-Protokoll über das Surfen belegen kann und was nicht
Sitzungs-, Resolver-, Flow- und Anwendungsprotokolle belegen unterschiedliche Ereignisse. Legen Sie die Prüffrage und die Identitätsverknüpfung fest, bevor Sie von Browserverlauf sprechen.
Bevor Sie einen Protokollsammler wählen, entscheiden Sie, welches Ereignis die Prüfung belegen soll. Die Frage, welche VPN-Sitzung eine Zieladresse kontaktiert hat, ist eine andere als die Frage, welche Person eine bestimmte Seite geöffnet hat. Beide verlangen unterschiedliche Aufzeichnungen, unterschiedliche Verknüpfungen und unterschiedliche Grade an Sicherheit. Ein Verbindungsprotokoll von OpenVPN beantwortet die erste und kann die zweite nicht beantworten.
Benennen Sie das Ereignis, bevor Sie einen Sammler wählen
Ein Sitzungseintrag zeigt eine akzeptierte Identität, eine Start- und Endzeit und eine Adresse, die der Server nach seiner eigenen Richtlinie vergeben hat. Ein Resolverprotokoll zeigt, dass ein Name bei diesem Resolver abgefragt wurde. Ein Flow-Eintrag zeigt Adressen, Ports, Protokoll und Zeit, und ein Anwendungsprotokoll zeigt die Transaktion, die diese Anwendung tatsächlich abgewickelt hat. Keines der vier ersetzt ein anderes.
Jedes davon belegt ein Ereignis und lässt die übrigen offen. Wenn Sie die Frage zuerst niederschreiben, hindert Sie das daran, eine Geschichte zusammenzustellen, die die Daten nicht stützen.
journalctl -u [email protected] --since today | grep -i 'peer info\|assigned' cat /etc/openvpn/server/openvpn-status.log | head -20 conntrack -L -p tcp --dport 443 2>/dev/null | head -20
Der erste Befehl zeigt Sitzungsereignisse aus dem Dienstjournal. Der zweite gibt die aktuelle Clientliste mit zugewiesenen Adressen aus, also die Zuordnung, auf der eine Prüfverknüpfung beruht. Der dritte zeigt den laufenden Flow-Zustand, der nur nützlich ist, solange die Verbindung noch besteht.
Eine Abfrage ist kein Besuch
Ein Browser löst Namen spekulativ auf, zwischenspeichert Antworten und verwendet sie erneut, ohne den überwachten Resolver noch einmal zu fragen. Ein Name in einem Resolverprotokoll belegt daher eine Abfrage, keinen Besuch. DNS über HTTPS vergrößert diese Lücke, weil ein dafür konfigurierter Browser seine Fragen dorthin schickt, wo Ihr gewöhnlicher Logger sie nie sieht.
Zieladressen sind für sich genommen nicht besser. Eine Adresse kann viele unabhängige Seiten beherbergen, Reverse-DNS ist eine Vermutung und keine Rekonstruktion, und ein während eines TLS-Handshakes sichtbarer Hostname ist nicht der Anfragepfad innerhalb der verschlüsselten Sitzung.
Für exakte Transaktionen brauchen Sie die Ereignisaufzeichnungen der Anwendung selbst oder ein Proxy-Design, das ausdrücklich für Protokollierung unterstützt wird. Ein CONNECT-Tunnel gibt einem Proxy das Ziel und das Volumen, nicht die Seitenpfade darin. Administrativer Zugang zum Netzwerk ist keine Lizenz, das Vertrauensmodell der Anwendung still zu ersetzen.
Verknüpfen Sie Identität und Zeit, bevor Sie eine Person benennen
Ein Flow-Eintrag mit einer internen Quelladresse bedeutet nichts, bis diese Adresse zur selben Zeit mit einer Sitzung verknüpft ist. Adressen werden wiederverwendet, und dieselbe Adresse kann eine Stunde früher zu einer anderen Sitzung gehört haben. Statische Zuweisung ist eine Möglichkeit, die Zuordnung zu halten, nicht die einzige.
Übersetzungsgrenzen schwächen die Verknüpfung weiter. Wenn mehrere Geräte bereits eine Quelladresse geteilt haben, bevor Ihr Beobachtungspunkt beginnt, ist das Beste, was Sie identifizieren können, die gemeinsame Gateway-Sitzung statt eines einzelnen Geräts. Ein Zertifikat oder Konto, das mehrere Personen nutzen, hat denselben Effekt.
Erfassen Sie Zeitzonen, Uhrquellen, Beobachtungspunkte und jeden Übersetzungsschritt. Fehlende Einträge können bedeuten, dass ein Flow-Eintrag veraltet ist, ein Sensor umgangen wurde oder ein Anwendungsprotokoll abgeschaltet war. Abwesenheit ist kein Beweis, dass nichts geschehen ist.
Definieren Sie dann die Mindestfelder, die zulässigen Leser und die Aufbewahrungsfrist für den genannten Zweck. Korrelation und Fehlzuordnung sind Entwurfsfragen und kein nachträglicher Einfall, und Metadaten, die Personen identifizieren, verdienen denselben Schutz wie die Identitätszuordnung, auf der sie beruhen.
Prüfen Sie die Prüfung mit Aktivität, die Sie kontrollieren
Erzeugen Sie erlaubten Verkehr, dessen Sitzung und Anwendung Sie bereits kennen, und prüfen Sie dann, was jeder Eintrag tatsächlich erfasst hat. Führen Sie eine Abfrage ohne Laden der Seite durch, laden Sie eine Seite aus dem Cache und öffnen Sie eine Verbindung über einen Proxy, und sehen Sie, welche Ereignisse erscheinen.
Berichten Sie das Ereignis, das die Belege stützen, und sagen Sie, was sie nicht abdecken. Ein bescheidener Eintrag mit genanntem Umfang besteht die Überprüfung; ein ehrgeiziger Browserverlauf aus Vermutungen besteht sie nicht.