Community

"Sichere" NFC Haustür Öffnung

Hallo,
wollte nur wieder mal eins meiner Projekte niederschreiben. Evtl. kann das wer brauchen :wink:

Was soll gelöst werden:
Ich will mein Handy als eine Art Schlüssel für meine Haustüre verwenden.

Anforderung:
Es soll einigermaßen sicher sein.

Was braucht man für meine Lösung:

  • NFC Tag
  • Ein Smartphone
  • WLAN :wink:
  • einen Raspberry Pi (Oder irgendwas auch dem PHP o.Ä. läuft)
  • Homee System
  • Eine Haustüre mit smarten Haustür Summer

Wie habe ich es gelöst:

  • Ich habe in den NFC Tag außen angebracht. In meinem Fall im Gehäuse der Ring Doorbell … da vermutet ihn keiner und er ist sicher aufgehoben :slight_smile:

  • Den NFC Tag so programmiert.
    Die einfache Variante wäre hier die URL des Homeegramms aufzurufen. Das würde dann den smarten Haustür Summer ansprechen und die Türe öffnen.
    Nachteil: Jeder der den Tag kennt kann mit einem Smartphone meine Tür öffnen … eher so mittel geil.

Daher hab ich auf dem NFC Tag eine URL des Raspberry Pi´s hinterlegt.
Z.B. http://192.168.178.100:5000/smarthome/nfc/opendoor/index.php

Das hat 2 Vorteile:
- Man muss in meinem WLAN sein damit man die URL aufrufen kann. Das ist schon mal so sicher, dass es nicht jeder dahergelaufene nutzen kann.
- Das PHP Script prüft auch noch die IP-Adresse des Aufrufers. Erlauft sind nur bestimmte IP-Adressen,
- Nur wenn die obigen Bedingungen erfüllt sind, ruft das PHP Script den Webhook des Homeegramms auf.
- Gleichzeitig wird geloggt, wann welche IP-Adresse die Tür geöffnet hat und ein Foto von der Webcam gemacht und auf dem PI abgelegt.

Jetzt läuft das so:
Wenn ich mein Grundstück betrete dann verbindet sich mein Handy mit meinem WLAN. Sobald ich nun mein Handy an die Ring Dooorbell halte summt die Haustüre und ich kann eintreten. Funktioniert mega smooth :slight_smile:

Grüße
Günni

16 Like

Coole Idee!
Wenn man auf die IP Adressen Prüfung verzichten möchte/kann, könnte man in den Tag doch die Lokale webhookadresse programmieren. Dann muss man auch im selben Netzwerk sein und braucht keinen zusätzlichen Pi.

2 Like

Stimmt, das ist eine coole Ergänzung. Und ich glaube der Mehrwert keinen pi hier zu brauchen und dafür die adressvalidierung zu verlieren ist schon überlegenswert :slight_smile:

Und wenn du die IP-Prüfung trotzdem willst, kannst du (geeignete Netzwerkinfrastruktur vorausgesetzt) mit verschiedenen Netzen(VLANs) und Firewallregeln arbeiten. :wink:

1 Like

Mir ist gerade ein nicht unerheblich Nachteil eingefallen… Wenn man den Tag mit der webhook Adresse von homee programmiert kann den ja theoretisch jeder auslesen und damit könnte auch jeder vergleichsweise einfach an deinen webhookschlüssel kommen, dann deine ip durch den „normalen“ nicht lokalen austauschen und schwupps die Türöffnung nach Belieben aus der Ferne initieren… Leider lässt homee ja keine Differenzierung zwischen lokalen und nicht lokalen webhooks zu.

Möglicher workaround: mit tasker oder sowas durch den Tag nur eine Aktion auf dem Handy initieren wodurch dann das Handy erst die URL aufruft. Dadurch könnte der Tag mit irgendeinem unnützen Codewort programmiert sein und die eigentliche webhookadresse ist nur auf deinem Handy gespeichert. Wenn sowas geht… - geht sowas?!

Gibt es auch NFC Tags die ich hinter Metall kleben kann?
Oder schirmt das zu stark ab.
Meine DoorBird Station ist aus Metall.

Vielleicht gibt es so kleine, dass sie hinter das Klarsicht-Namenschild passen?!

Nein. Egal ob es Aluminium, Edelstahl oder sonst ein mehr oder weniger leitfähiges Metall ist. Die elektromagnetischen Wellen, die ein RFID-Tag (dazu gehören die NFC-Tags auch) braucht, um aktiviert zu werden und seine Daten an den Leser (in diesem Fall das Handy) zurück zu senden, werden zu stark abgeschwächt.

Die Leserentfernung ist von der Größe der Antenne des Tags abhängig, Je größer die Antenne, um so mehr elektrische Energie kann aufgefangen, für das Auslesen des Chips und das zurücksenden eingefangen werden.
Hinter dem Türschild ist meistens nicht viel Platz. Auch sollte der Tag auch nicht auf einer metallischen Unterlage kleben. Das ist für die Reichweite, genauso schlecht, da die elektrische Energie dann in die Platte dahinter gezogen wird

1 Like

Habe jetzt einen NFC-Tag auf die Haustür geklebt.
Wenn ich mit dem iPhone auf den Tag gehe, wird eine Automation ausgeführt.
Allerdings habe ich festgestellt, dass die Aktion auch mit gesperrtem iPhone durchgeführt wird. Kann man das noch sicherer machen?

Mit ios geht es über Kurzbefehle und dann automationen

Ich wäre froh, wenn es bei Android so Out of the Box funktionieren würde.

Du kannst einstellen, dass du die automatisation bestätigen musst …

habe mich zu früh gefreut. habe alles am pc manuell getestet, aber ich kann die URL von Doorbird nicht auf dem iphone öffnen. Da fragt Safari immer nach dem User und Passwort, obwohl ich das über die URL mitgebe.
Jemand eine Idee?

Also hier ein Beispiel mit iPhone und Nuki.
Ich habe einen Kurzbefehl erstellt, der die Tür aufsperrt.
Danach eine Automation, der mit dem NFC Tag ausgelöst wird und den Kurzbefehl ausführt. In der Automation die Funktion „Vor Ausführen bestätigen“ aktiviert.
Funktioniert absolut sicher.

bei doorbird gibt es aber den kurzbefehl nicht oder übersehe ich etwas?
deswegen wollte ich es über einen http aufruf machen

Edit:
Lösung: Führe jetzt in homee den webhook in einem homeegramm aus.
Das homeegramm habe ich jetzt in den kurzbefehlen

Kann man den nfc-tag nicht irgendwie programmieren das er auf dem Smartphone (android) in der Automagic-App einen Flow auslösst und nur in diesem Flow ist der Webhook gespeichert der das Homeegramm zu Öffnen auslösst.

Dann kann man den Tag an die Tür kleben und keiner könnte etwas damit anfangen, da der Webhook ja auf MEINEM Smartphone ist.

Sollte doch gehen, oder hab ich den Denkfehler?

Gruss Thorben

jetzt mal eine, für Euch hoffentlich einfache, Frage…,
Wie muss ich den Tag und Automagic einrichten damit das Scannen des Tag als „Trigger“ in Automagic dient.
Eine „Action“ habe ich in Automagic schon hinterlegt. Dort steht jetzt der Webhook drin. Jetzt aber geht es mir nur um den NFC-Tag.

Gruß
Thorben

Ok, ich habs raus.
Man muss als Trigger-Typ „NFC-Tag“ auswählen.
Tag-Typ: Automagic Tag ID
Schreibe eine Tag-ID z.B.: Test_TAG
Wähle „schreibe ID auf …“
setze den Haken bei „Schreibe alternative Tag-Informationen“
Scanne den Tag und speichere ab.

Nun wird beim scannen des TAG in Automagic der Flow gestartet.

2 Like

Ich muss beim berühren des Tag immer die URL (Webhook) bestätigen. Kann man das umgehen?

Welche App verwendest du ? Und Andrid oder iOS?