Mittwoch, 7. Oktober 2015

Website auf ESP 8266 mit Passwortschutz

In diesem Post geht es darum, wie man die Website des ESP 8266 mittels eines Passwort schützen kann.


Der Arduino Sketch

Um einen Username beziehungsweise ein Passwort einzugeben benötigt man zwei Textfelder. Außerdem benötigt man einen Absendebutton (Submitbutton). Ein leichter Weg die Informationen an den ESP weiter zu leiten, ist die Informationen über die Funktion GET über die Adresszeile zu übertragen. Das lässt sich leicht mit dem ESP verwenden, da man hier über die Funktion client.readString einfach die URL auslesen kann.

Das Problem hierbei ist jedoch, dass das Passwort im Klartext in der Adresszeile steht, wodurch man es mit einem "geübten Auge" entdecken könnte. Etwas sicherer ist die Verwendung der Funktion Post

In meinem Passworschutz Beispiel wird einfach nur überprüft, ob die jeweilige Angabe des Username und des Passworts in der Adresszeile korrekt sind. Damit wird auch der Username und das Passwort festgelegt. Natürlich könnte man bei nur einem User auch auf den Username verzichten. 

Auch das erstellen neuer User könnte man über ein ähnlich aufgebautes extra Formular einbauen. Nach der Eingabe des richtigen Usernames und des richtigen Passworts (im Beispiel User: arduino, Passwort: michaelsarduino) erscheint die Meldung "Erfolgreich angemeldet". Hier  könnte man jetzt den "geheimen" HTML Code einfügen (lassen). 

Hier seht ihr meinen Beispielsketch:

Um ihn bei euch zu verwenden, müsst ihr nur am Anfang den Namen eures Wlan Netzwerkes, und das dazu gehörige Passwort angeben.

Fazit

Wie du siehst, ist es sehr einfach die Website deines ESP 8266 (hier bei AZDelivery) mit einem Passwort zu schützen. Das ist jedoch nur ein rudimentärer Schutz. Um deine Projekte sicherheitstechnisch "internetfähig" zu machen, solltet man den ESP nur als Wlan Uploadmodul für einen Webserver zu verwenden. Dadurch lädt der ESP die Daten auf einen Webserver, und dieser, vollständig sichere, Webserver macht die Informationen dann im Internet verfügbar.

Keine Kommentare:

Kommentar veröffentlichen