Eine Artemis-Broker-Verbindung, die mit dem falschen SOCKS-Passwort gelingt, hat möglicherweise den Proxy-Handler übersprungen. Prüfen Sie das Broker-Ziel, nicht nur socksHost.

Die Transportdokumentation beschreibt Loopback-Brokeradressen wie localhost und 127.0.0.1 als Adressen, die die SOCKS-Konfiguration umgehen. Verwenden Sie für den normalen lokalen Auflösungspfad die vorgesehene Nicht-Loopback-Brokeradresse, wenn die Verbindung über den Vermittler laufen muss. Ein anderer Alias, der weiterhin auf Loopback auflöst, kann dasselbe Ergebnis haben.

Prüfen Sie die genaue Bedingung der Connector-Version

Neuerer Upstream-Connector-Quellcode enthält eine ausdrückliche Remote-DNS-Ausnahme. Die Bedingung des Proxy-Handlers lautet:

socksEnabled && (socksRemoteDNS || !isTargetLocalHost())

Wenn socksRemoteDNS in einer Implementierung mit dieser Bedingung aktiviert ist, hält der Connector das Ziel unaufgelöst und installiert den SOCKS-Handler selbst für ein Ziel, das wie Loopback aussieht. Mit dem dokumentierten Standardwert false bleibt der Test der lokalen Adresse wichtig.

Das ändert die Bedeutung eines Hostnamens wie localhost: Wenn er zur Auflösung an einen SOCKS-Server übergeben wird, verweist er auf die Zielansicht des Proxys. Bestätigen Sie, dass dies der vorgesehene Broker-Standort ist, bevor Sie die Remote-Auflösung wählen.

Passen Sie das Verhalten an den installierten Artemis-Client an. Sobald der Handler tatsächlich in der Route ist, unterscheiden Sie SOCKS-Authentifizierung von Broker-Authentifizierung und überprüfen Sie den resultierenden Verbindungspfad, statt eine erfolgreiche Broker-Sitzung als Beweis dafür zu werten, dass Proxy-Anmeldedaten verwendet wurden.

Ähnliche Artikel