Ein Anschluss unter dieser Nummer

Sobald im Terminal die Meldung »Accepting connections on port 8080/tcp (local only)« erscheint, wartet das Testwerkzeug brav an Port 8080 auf eingehende Anfragen von einem Browser. Diesen gilt es nun wiederum so einzurichten, dass er seine gesamte Kommunikation über Ratproxy leitet. Das klappt am einfachsten, indem man kurzerhand den eigenen Rechner (»127.0.0.1« , beziehungsweise »localhost« ) mit besagtem Port als Proxy einträgt. Abbildung 1 zeigt die dazu notwendigen Schritte am Beispiel von Firefox.

Damit leitet der Browser alle Anfragen an »localhost:8080« weiter, wo Ratproxy sie analysiert und schließlich zur eigentlichen Webanwendung weiterreicht (Abbildung 2). Da das Testwerkzeug nur passiv der Kommunikation lauscht, geschieht dies absolut transparent, unterbrechungsfrei und hat nur minimale Auswirkungen auf die Arbeitsgeschwindigkeit. Eine Ausnahme sind die Parameter »-X« und »-C« : Da Ratproxy unter ihrem Einfluss aktiv in die Kommunikation eingreift und sie somit immer mal wieder unterbricht ("disruptive mode"), fühlt sich die Bedienung der Web-Anwendung im Browser zwangsweise etwas holpriger an.

Abbildung 1: Um Firefox auf Ratproxy umzubiegen, ruft man zunächst im Menü Bearbeiten | Einstellungen auf, aktiviert hinter Erweitert das Register Netzwerk, wählt dort Einstellungen, wo man wiederum die Manuelle Proxy-Konfiguration scharf schaltet und abschließend die verlangten Daten nachträgt.
Abbildung 2: Ratproxy fängt die Kommunikation ab.

Sofern man über einen richtigen Proxy ins Netz geht, wie es beispielsweise in vielen Firmennetzen geschieht, gibt man Ratproxy noch den Parameter »-P host:port« mit auf den Weg. Dabei stehen »host« und »port« für die entsprechenden Daten des richtigen Proxys. Auf diesem Weg lässt sich Ratproxy auch in eine Kette mit anderen, auf ähnliche Weise arbeitende Testwerkzeuge einbinden.

Durchfluss

Als nächstes steuert man mit dem Browser die Webanwendung an und benutzt sie wie gewohnt. Damit dabei niemand dazwischen funkt, empfiehlt Google zuvor noch alle übrigen Browserfenster zu schließen und den Browsercache zu leeren. Ratproxy beobachtet jetzt alle Aktionen und protokolliert sie in der bereits erwähnten »ratproxy.log« .

Sollten dabei SSL-verschlüsselte Daten durch die Finger des Werkzeugs laufen, ersetzt Ratproxy das von der Web-Anwendung gelieferte Zertifikat durch sein eigenes. Ein guter Browser schlägt in diesen Fällen Alarm. Um den Test erfolgreich durchführen zu können, kommt man allerdings nicht drum herum das neue Zertifikat anzunehmen. Die Ratproxy-Dokumentation [1] warnt jedoch eindringlich davor, es dauerhaft im Browser zu speichern. Schließlich kennt es jeder, der Ratproxy heruntergeladen hat. Durch das untergeschobene Zertifikat entsteht noch ein weiteres Problem: Da Ratproxy alle weiteren Schritte mit der Web-Anwendung aushandelt, kann man selbst nicht mehr hundertprozentig sicher sein, mit dem eigenen Server zu sprechen. Man sollte folglich unter den Augen des Werkzeugs keine wichtigen (Administrator-)Konten verwenden oder sensible Daten eingeben.

Darüber hinaus sollte man der Versuchung widerstehen, die Webseite einfach per »wget« durch Ratproxy zu schleifen: Die meisten Tests des Werkzeugs sind auf die Benutzerinteraktion angewiesen und würden somit schlichtweg unter den Tisch fallen.

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019