
Ich habe ein IoT-Gerät, das sich über Port 8883 (sicheres MQTT) mit a.iot.x.amazonaws.com verbindet. Stattdessen möchte ich, dass es sich mit meiner eigenen Site unter b.iot.x.amazonaws.com verbindet (gleicher Port und gleiches Protokoll). Ich möchte Netzwerktools verwenden, um den Datenverkehr umzuleiten. Ich möchte die Firmware auf dem IoT-Gerät nicht ersetzen. Ich verwende eine Site in derselben Subdomäne (iot.x), um TLS-Probleme zu vermeiden, da das von AWS bereitgestellte Zertifikat die gesamte iot.x-Subdomäne abdeckt.
Mein Problem ist, dass beide Domänen meiner Meinung nach auf die gleichen IP-Adressen aufgelöst werden, sodass ich nicht einfach die Hosts-Datei in meinem OpenWRT-Router verwenden kann, um den Datenverkehr umzuleiten. Shared Hosting würde bedeuten, dass die Site, mit der eine Verbindung hergestellt wird, durch den Domänennamen und nicht nur durch die IP-Adresse bestimmt wird.
Reicht es aus, den Domänennamen während der Verbindungsanforderung zu ändern, um dies zu erreichen? Gibt es dafür ein Tool?
Antwort1
Die Unterscheidung zwischen verschiedenen Domänen mit derselben IP-Adresse erfolgt über die server_name
Erweiterung (SNI) im TLS-Handshake. Das Ändern dieser Informationen durch einen Man-in-the-Middle würde zu einer fehlgeschlagenen Integritätsprüfung des TLS-Handshakes führen, was wiederum zum Fehlschlagen des Handshakes führen würde. Dies bedeutet, dass dieser Ansatz nicht möglich ist.