Suchen

Die angemessene Plattform als Service wählen Getestet: Ein sicherer IoT-Cloud-Server für 12 Dollar im Jahr

| Autor / Redakteur: Reinhold Schmid * / Franz Graser

Viele Entwickler denken bei der Serverseite ihrer IoT-Lösung an Amazon oder Microsoft Azure. Aber für die meisten Vorgänge und DIY-Projekte genügt ein kostengünstiger Virtual Private Server.

Die SMQ-Protokollinfrastruktur des Mako-Servers: Der Server und sein Anwendungssystem ermöglichen es, serverseitige Skripts zu schreiben, um direkt mit dem SMQ-IoTBroker zu interagieren.
Die SMQ-Protokollinfrastruktur des Mako-Servers: Der Server und sein Anwendungssystem ermöglichen es, serverseitige Skripts zu schreiben, um direkt mit dem SMQ-IoTBroker zu interagieren.
(Bild: Embedded Tools)

Die meisten Cloud-Server-Lösungen für das IoT, egal ob sie gehostete, nutzungsfertige Services anbieten oder nicht, basieren auf einem normalen Virtual Private Server (VPS). Die meisten Entwickler denken an Services von AWS oder Microsoft Azures, wenn sie an die Server-Seite ihrer IoT-Lösung denken.

Diese High-End-Dienstleistungen sind toll, wenn Sie auf Millionen von verbundenen Geräten skalieren müssen. Aber für die meisten kleinen Vorgänge und Do-it-Yourself-Projekte ist ein kostengünstiger VPS mehr als angemessen.

Die Webseite lowendbox.com bietet Rezensionen zu kostengünstigen Virtual Private Servern und ist ein guter Ort, um anzufangen, um einen VPS auswählen. Wir, Embedded Tools aus Münster, haben einen VPS zum Preis von 12 Dollar pro Jahr gefunden, der passend für unser Experiment mit dem sicheren IoT ist. Mit diesem VPS konnten wir bis zu 10.000 Geräte verbinden.

Für das Verbinden von weiteren Geräten braucht man mehr Speicherplatz, aber der von uns gewählte VPS hatte Speicherbegrenzungen von 64 Megabyte. Daher ist ein VPS mit mehr Speicher notwendig, wenn die IoT-Lösung nach mehr verbundenen Geräten verlangt.

Cloud-Server-Betriebssystem und -Software

VPS-Anbieter bieten typischerweise eine webbasierte Benutzeroberfläche, von wo aus sich das VPS managen lässt. Dieses Web-basierte Bedienfeld bietet Leistungen wie die Auswahl und Installation/Re-Installation des Betriebssystems, typischerweise eine Linux-Variante. Nach der Installation des Linux-Betriebssystems mit der Web-Oberfläche ist der Server bereit dafür, dass Sie sich einloggen und ihn managen können.

Ein frisch installiertes Linux-Betriebssystem auf einem Online-VPS ist typischerweise rudimentär ausgestattet. Als Minimum muss die Linux-Installation einen SSH (Secure Shell) Server haben, damit sich ein Remote-Login für den Server nutzen und die von gewünschte Software installieren lässt.

Die Wahl fällt auf den Mako-Server

Die Software, die wir für die Server-Seite der IoT-Lösung ausgewählt haben, ist ein Anwendungs-Server mit der Bezeichnung „Mako-Server“. Einer der Gründe für die Wahl von Mako-Server ist, dass er den verfügbaren Speicherplatz sehr effizient nutzt. Im Gegensatz dazu brauchen die meisten Server-seitigen Anwendungssysteme der High-Ende-Klasse sehr viel Speicherplatz und können daher nicht auf einem kostengünstigen VPS betrieben werden.

Der Mako-Server ist ein extrem kleiner Anwendungs-Server, der leicht innerhalb der Speicherplatzbegrenzungen eines kostengünstigen VPS betrieben werden kann. Ein weiterer Grund für die Wahl ist, dass der Server als Doppelzertifikats-Server dienen kann und damit die Nutzung von Standard-RSA-Zertifikaten für Browser und kleine ECC-Zertifikate für Edge-Knoten ermöglicht.

SSL-Zertifikate (Secure Socket Layer) können einen großen Einfluss auf den Speicherplatz haben, wenn sie nicht den Zertifikatstyp bedenken, der in Ihrer IoT-Lösung genutzt wird. Die Nutzung des falschen Zertifikatstyps kann den Entwurf eines Edge-Knotens mit begrenztem Speicherplatz zerstören.

Das SMQ-Protokoll

Der Mako-Server enthält ein sicheres IoT-Protokoll namens SMQ (Simple Message Queues). Der Server und sein Anwendungssystem ermöglichen es dem Nutzer, Serverseitenskripts zu schreiben, um direkt mit dem SMQ-IoT-Broker zu interagieren. Das Server-seitige Anwendungssystem ermöglicht es dem Nutzer außerdem, sein IoT-Protokoll zu erweitern und es mit anderen Services im Internet oder anderen lokalen Services, die auf dem VPS laufen – etwa Datenbankservices – zu verbinden.

Das SMQ-Protokoll eignet sich für den sicheren Datenaustausch zwischen einer Web-Oberfläche und einem Edge-Knoten in Echtzeit. Das Protokoll, das dem Publish-Subscribe-Mechanismus in MQTT ähnelt, erlaubt Web-basierten Benutzeroberflächen die Steuerung von Edge-Knoten in Echtzeit.

Die ganze Kommunikation läuft über den Cloud-Server. Das heißt: Es gibt keine Probleme mit der Traversale von Netzwerkadressübersetzungen (Network Address Translation, NAT) haben, wenn Sie zwischen diversen (lokalen) Netzwerken kommunizieren.

(ID:44389884)