Inhaltsverzeichnis:

So richten Sie Mosquitto MQTT auf AWS ein: 8 Schritte
So richten Sie Mosquitto MQTT auf AWS ein: 8 Schritte

Video: So richten Sie Mosquitto MQTT auf AWS ein: 8 Schritte

Video: So richten Sie Mosquitto MQTT auf AWS ein: 8 Schritte
Video: WinCC v8.0 Step By Step 29: Create WinCC Connection to Cloud ☁️💽 #winccguru #mqtt #aws 2024, November
Anonim
So richten Sie Mosquitto MQTT auf AWS ein
So richten Sie Mosquitto MQTT auf AWS ein

Hi! Ich werde für meine IOT-Projekte einen privaten MQTT-Broker mit Passwort auf meinem AWS-Konto (amazon web service) einrichten. Um dies zu tun, habe ich ein kostenloses Konto bei AWS erstellt, das für 1 Jahr gültig ist, indem ich hierher gehe:

Lieferungen

Verwendete Software:

Kitt

MQTT-OBJEKTIV

Schritt 1: Erstellen Sie ein AWS-Konto

Erstellen Sie ein AWS-Konto
Erstellen Sie ein AWS-Konto

Zuerst benötigen Sie ein AWS-Konto. Ich habe bereits ein kostenloses Konto erstellt, das 1 Jahr gültig ist, und zum Anmelden verwendet. Sie können Ihr Konto erstellen, indem Sie auf diesen Link klicken, auf "Kostenloses Konto erstellen" klicken und die erforderlichen Angaben machen Information:

aws.amazon.com/free/?all-free-tier.s

Schritt 2: Erstellen Sie eine virtuelle Maschine

Erstellen Sie eine virtuelle Maschine
Erstellen Sie eine virtuelle Maschine

Konzept:

Das Internet besteht aus zwei Arten von Maschinen: einem Server oder einem Client. Ein Server stellt Ihnen Dienste bereit, während der Client den Dienst anfordert. Wenn Sie diese Webseite öffnen, fordert Ihr Gerät eine Kopie dieser Webseite an, die auf dem Server gespeichert wurde. Nach Erhalt Ihrer Anfrage sendet Ihnen der Server eine Kopie, damit Sie diese einsehen können. Um sicherzustellen, dass auf unseren MQTT-Broker (der Dienst) jederzeit mit anderen Computern oder elektronischen Geräten zugegriffen werden kann, müssen wir den Broker auf einem Servercomputer installieren, der immer eingeschaltet und mit dem Internet verbunden ist. Dazu mieten wir auf AWS eine virtuelle Maschine, auch Image genannt, die wie ein Computer funktioniert.

Anweisungen:

Über die Managementkonsole

  1. Nach der Anmeldung werden Sie zur AWS Management Console weitergeleitet.
  2. Klicken Sie unterhalb der Build-Lösung auf "Launch a virtual Machine", wie im Bild gezeigt.

ÜBER DIE AMAZON EC2-Konsole

  1. Sie können eine Instanz auch über diesen Link starten
  2. Wählen Sie oben rechts in der Navigationsleiste Ihre aktuelle Region aus. In meinem Fall ist es Singapur.
  3. Klicken Sie unter der Instanz starten auf die Schaltfläche "Instanz starten"

Schritt 3: Wählen Sie ein Amazon Machine Image (AMI) aus

Wählen Sie ein Amazon Machine Image (AMI)
Wählen Sie ein Amazon Machine Image (AMI)

In diesem Schritt wählen Sie den Betriebssystemtyp (Linux, Windows, Redhat und viele mehr) und den Arbeitsspeicher (64 Bit /86 oder Arm) für unsere virtuelle Maschine aus.

  • Wählen Sie im linken Bereich den AMI-Typ "Schnellstart" aus " Ubuntu Server 18.04 LTS (HVM), SSD-Volume-Typ - ami-0f7719e8b7ba25c61 (64-Bit x86) / ami-02b6622eae4966dfd (64-Bit Arm) mit einer kostenlosen Stufe" auf seinem Logo.
  • Stellen Sie sicher, dass der Root-Gerätetyp: ebs und der Virtualisierungstyp HVm ist, da die Verbindung auf dieser Grundlage schneller hergestellt werden kann

Schritt 4: Instanztyp auswählen und konfigurieren

Instanztyp auswählen und konfigurieren
Instanztyp auswählen und konfigurieren
Instanztyp auswählen und konfigurieren
Instanztyp auswählen und konfigurieren

Im letzten Schritt haben wir den Computer konfiguriert. Hier richten wir es als Server mit folgendem Speicher ein und sind mit dem Internet verbunden (IPV6-Unterstützung sollte ja sagen)

  1. Klicken Sie auf die kostenlose Stufe, die vom Typ t2.micro berechtigt ist.
  2. Sie können sofort auf "Überprüfen und starten" klicken oder optional unten rechts auf "Weiter: Instanzdetails konfigurieren" klicken
  3. Klicken Sie auf "Weiter: Tags hinzufügen"
  4. Klicken Sie auf "Zu den Registerkarten "Sicherheit konfigurieren" wechseln". Klicken Sie hier auf Regel hinzufügen, bis Sie die folgenden Ports geöffnet haben:
  • 1883: MQTT, unverschlüsselt
  • 8883: MQTT, verschlüsselt
  • 8080: MQTT über WebSockets, unverschlüsselt
  • 8081: MQTT über WebSockets, verschlüsselt

5. Klicken Sie unten rechts auf "Überprüfen und starten".

Schritt 5: Instance-Start überprüfen

Instance-Start überprüfen
Instance-Start überprüfen
Instance-Start überprüfen
Instance-Start überprüfen

Überprüfen Sie die Details Ihrer virtuellen Maschine. In AWS nennen sie es Instanz.

Eine Sicherheitswarnung wird möglicherweise direkt unter dem Start der Überprüfungsinstanz angezeigt

Um es zu entfernen, gehen Sie zu "Sicherheitsgruppe konfigurieren" und wählen Sie bekannte IP-Adressen mit benutzerdefinierten aus oder verwenden Sie Ihre IP-Adresse für den Typ "SSH". Das Ändern dieses Quellwerts schränkt die Geräte ein, die eine Verbindung zu Ihrer virtuellen Maschine herstellen können. In diesem Fall werden wir überall verwenden.

  1. Klicken Sie auf der Registerkarte "Überprüfen" auf "Starten".
  2. Sie werden aufgefordert, ein Schlüsselpaar auszuwählen. Wählen Sie im Dropdown-Menü "Neues Schlüsselpaar erstellen" und seinen Namen. Speichern Sie diese Datei, da Sie später auf Ihre virtuelle Maschine zugreifen werden.
  3. Klicken Sie auf " Instanz starten"

Schritt 6: Öffentliche IP-Adresse abrufen

Öffentliche IP-Adresse abrufen
Öffentliche IP-Adresse abrufen
Öffentliche IP-Adresse abrufen
Öffentliche IP-Adresse abrufen
Öffentliche IP-Adresse abrufen
Öffentliche IP-Adresse abrufen

Konzept:

Wie bereits erwähnt, gibt es einen Server und einen Client. Wir können uns Server als Lebensmittelunternehmen, das Internet als Lieferservice für Lebensmittel und uns als Kunden vorstellen. Zuerst "fordern" wir Lebensmittel von einem bestimmten Lebensmittelbetrieb an, indem wir seine "Adresse" angeben. Der Essenslieferdienst geht an diese "Adresse". Der Lebensmittelbetrieb "serviert" das Essen an den Essenslieferdienst, der Ihnen dann zugestellt wird. Ebenso benötigt unser Server eine öffentliche IP-Adresse, um aus dem Internet erreichbar zu sein. Um dies zu tun,

  1. Gehen Sie zur Registerkarte Netzwerk & Sicherheit im linken Bereich
  2. Klicken Sie auf Elastic IPs
  3. Klicken Sie auf Elastic IP-Adresse zuweisen.
  4. Drücken Sie die Schaltfläche "Zuordnen" und warten Sie, bis Sie zu einer Seite mit einem Banner mit der Aufschrift "Elastic OP Address Allocated" weitergeleitet werden.

Schritt 7: Verbinden Sie sich mit Ihrer Instanz

Verbinden Sie sich mit Ihrer Instanz
Verbinden Sie sich mit Ihrer Instanz
Verbinden Sie sich mit Ihrer Instanz
Verbinden Sie sich mit Ihrer Instanz
Verbinden Sie sich mit Ihrer Instanz
Verbinden Sie sich mit Ihrer Instanz

Klicken Sie im Instanzen-Tab auf der linken Seite auf "Instanzen". Ich habe beschlossen, meine Instanz als "MQTT-Broker" zu benennen, indem ich auf das umschlossene Feld im Namensbereich geklickt habe. So stellen Sie eine Verbindung zu dieser Instanz her:

  1. Klicken Sie mit der rechten Maustaste auf diese Instanzzeile und klicken Sie auf Verbinden.
  2. Wählen Sie eine Verbindungsmethode. Befolgen Sie für einen eigenständigen SSH-Client die offizielle AWS-Anleitung zum Herstellen einer Verbindung mit PUTTY. Siehe Bilder für angehängte Bilder zu meiner Installation.
  3. Nachdem Sie sich mit der Instanz verbunden haben, geben Sie die folgenden Befehle ein:

    sudo apt update Aktualisieren Sie die Linux-Version auf Ihrem Computer

    • sudo apt installieren mosquitto mosquitto

      Installiert den Moskito-Broker

    • sudo apt install mosquitto mosquitto-clients

      Installiert den Mosquitto-Client

    • Mücke -v

      Überprüfen Sie die Moskito-Version, um sicherzustellen, dass sie richtig installiert ist. Bei ordnungsgemäßer Installation sollte die Meldung "IPv4-Listen-Socket auf Port 1883 öffnen" angezeigt werden. Ein "Fehler: Adresse wird bereits verwendet" bedeutet, dass der Broker bereits ausgeführt wird

    • mosquitto_sub -h -t "test"

      Hört auf einen Themennamen "test" auf dem Broker unter dieser öffentlichen Adresse (IPv4 Public IP)

  4. Senden Sie eine Veröffentlichung mit einem Windows-Client wie MQTT-LENS mit einer Eingabe ähnlich dem angehängten letzten angehängten Bild. Sie sollten die Nachricht auf Ihrer Linux-Konsole empfangen können

Schritt 8: Sichern mit einem Passwort

Mit einem Passwort sichern
Mit einem Passwort sichern

Geben Sie in der Linux-Konsole Folgendes ein, um ein Kennwort zu erstellen. Durch einen Benutzernamen Ihrer Wahl ersetzen.

sudo mosquitto_passwd -c /etc/mosquitto/passwd

Es wird zweimal nach einem Passwort gefragt. Seien Sie vorsichtig, da keine Buchstaben angezeigt werden, die eingegeben werden. Danach erstellen Sie eine Konfigurationsdatei namens „default.conf“in einem Dateipfad „etc/mosquitto/conf.d/“mit dem Linux-Server-Texteditor „nano“als Admin-/Root-Benutzer, indem Sie „sudo“eingeben.

sudo nano /etc/mosquitto/conf.d/default.conf

Fügen Sie nach dem Öffnen der Datei Folgendes ein. Speichern und beenden Sie mit Strg + X

allow_anonymous false

passwortdatei /etc/mosquitto/passwd

Um diese Änderungen zu übernehmen, starten Sie die Mücke neu, indem Sie "Strg+O", "Enter" und "Strg+X" eingeben.

sudo systemctl Neustart von Mosquitto

Sie können es jetzt mit einem Windows-Client Ihrer Wahl erneut versuchen und den entsprechenden Benutzernamen und das Passwort eingeben, um eine Verbindung herzustellen.

Empfohlen: