Wie erfasst man einfachen Text von der Host-Only-Oberfläche der Docker-Toolbox?

-1

Ich verwende Docker-Toolbox auf meinem Windows 10-PC. Standardmäßig installiert docker-toolbox boot2docker in VirtualBox VM mit einer NAT-Schnittstelle und einer Nur-Host-Schnittstelle. Die NAT-Schnittstelle (eth0 10.0.2.15/24) ist mit dem Internet verbunden und die Nur-Host-Schnittstelle (eth1 192.168.99.104/24) ist mit dem Host-Betriebssystem verbunden. Die Netzwerkpakete, die von der Host-Only-Schnittstelle stammen, werden mit dem TLS-Protokoll verschlüsselt , sodass die Daten in jedem Paketerfassungstool wie Müll aussehen.

Wie kann ich also anzeigen, was in diesen verschlüsselten Netzwerkpaketen geschrieben ist, die von der Host-Only-Schnittstelle stammen?

Biswapriyo
quelle

Antworten:

0

Warnung: Das folgende Verfahren deaktiviert das TLS-Protokoll . Die Docker-Toolbox verwendet TLS, um die Verbindung zwischen dem Docker-Dämon und den Docker-Clients zu sichern. Wenn Sie diesen sicheren Kanal deaktivieren, ist Ihr Docker-System für Sicherheitsbedrohungen anfällig.

Befolgen Sie diese SO-Antwort, um eine boot2docker VirtualBox-VM mit deaktiviertem TLS zu erstellen . Wenn diese VM bereits erstellt wurde, gehen Sie folgendermaßen vor. Starten Sie diese VM mit dem docker-machine ssh <vm-name>Befehl von VirtualBox Manager oder SSH in diese VM . Führen Sie diesen Befehl aus vi /var/lib/boot2docker/profile, um die Datei im vi-Editor zu bearbeiten.

  • Standardwerte sind:
DOCKER_HOST='-H tcp://0.0.0.0:2376'
DOCKER_TLS=yes
  • Ändern Sie diese wie folgt:
DOCKER_HOST='-H tcp://0.0.0.0:2375'
DOCKER_TLS=no
DOCKER_TLS_VERIFY=no

Beenden Sie dann den viEditor und starten Sie den dockerdDaemon mit diesem Befehl neu sudo /etc/init.d/docker restart. Oder sshbeenden Sie die Sitzung und starten Sie boot2docker VM neu. Hier sind die Netzwerkpakete im Klartext nach dem Ausführen des docker system infoBefehls:

C:\> tshark.exe -i Host-Only -f "tcp port 2375"
Capturing on 'Host-Only'
192.168.99.1  192.168.99.104 TCP 62827  2375 [SYN] Seq=0 Win=64240 Len=0 MSS=1460 WS=256 SACK_PERM=1
192.168.99.104  192.168.99.1 TCP 2375  62827 [SYN, ACK] Seq=0 Ack=1 Win=29200 Len=0 MSS=1460 SACK_PERM=1 WS=128
192.168.99.1  192.168.99.104 TCP 62827  2375 [ACK] Seq=1 Ack=1 Win=1051136 Len=0
192.168.99.1  192.168.99.104 HTTP GET /_ping HTTP/1.1
192.168.99.104  192.168.99.1 TCP 2375  62827 [ACK] Seq=1 Ack=99 Win=29312 Len=0
192.168.99.104  192.168.99.1 HTTP HTTP/1.1 200 OK  (text/plain)
192.168.99.1  192.168.99.104 HTTP GET /v1.37/info HTTP/1.1
192.168.99.104  192.168.99.1 TCP HTTP/1.1 200 OK  [TCP segment of a reassembled PDU]
192.168.99.104  192.168.99.1 HTTP HTTP/1.1 200 OK  (application/json)
192.168.99.1  192.168.99.104 TCP 62827  2375 [ACK] Seq=202 Ack=3039 Win=1051136 Len=0
192.168.99.1  192.168.99.104 TCP 62827  2375 [RST, ACK] Seq=202 Ack=3039 Win=0 Len=0
11 packets captured

Wie funktioniert das? DOCKER_HOSTund DOCKER_TLSsind Umgebungsvariablen, die in der Docker-Engine verwendet werden. DOCKER_TLS=noDeaktiviert die TLS-Verschlüsselung und Port 2375 wird standardmäßig ohne Verschlüsselung verwendet. Indem Sie diese Werte in der /var/lib/boot2docker/profileDatei ändern , akzeptiert der Docker-Daemon diese Parameter immer. Denn /var/libist das persistente Laufwerk in boot2docker VM. Hier sind einige Zitate ( Quelle ):

Docker-Daemon-Optionen Wenn Sie die Optionen anpassen müssen, die zum Starten des Docker-Daemons verwendet werden, können Sie Einträge zur Datei / var / lib / boot2docker / profile in der persistenten Partition der virtuellen Boot2Docker-Maschine hinzufügen. Starten Sie dann den Daemon neu.

Wenn Sie docker-machine ausführen, erstellt das Tool automatisch eine Festplatte, die automatisch gemountet wird und verwendet wird, um Ihre Dockerdaten in / var / lib / docker und / var / lib / boot2docker zu speichern.

Weitere Informationen finden Sie in diesem Artikel .

Biswapriyo
quelle