Autor Thema: Probleme Zertifikate  (Gelesen 2359 mal)

kadettilac89

  • Newbie
  • *
  • Beiträge: 13
  • Gerät: S6 Edge
  • Version: 7.0
Probleme Zertifikate
« am: 28.01.2017, 18:27:21 »
Hallo,

ich spiele mich schon eine Weile und bringe die Verbindung über HTTPS:// nicht zum laufen.

Setup:

Verbindung zu FHEM über lokale IP (http://192.168.0.x:8083/fhem/geo) funktioniert. Auch Readings werden aktuallisiert daher gehe ich davon aus, dass es nicht am Fhem-Setup liegt.

App-Version: 2.1.6
OS: Android 6.0.1
Gerät: Samung S6 Edge

Fhem läuft auf einem Banana Pro (vergleichbar zu Raspberry).
Router ist eine Fritzbox 6490 (Kabel Deutschland). Kein IPv6, kein DSlite,  echte IPv4
Portforwarding in der Fritzbox 8083<-->lokale IP des Banana:8083

Was habe ich bis jetzt gemacht:
1) Zertifikate nach dieser Anleitung erstellt: https://www.libe.net/XCA
2) Zertifikat in die Fritzbox importiert. Nicht in den Browser bzw. Internetoptionen in Win10.
--> Zertifikatswarung
Seite die aufgerufen wird ist die https://xxx.spdns.de:8083/fhem (ohne geo) am Ende. Normales Fhemweb über https auf Port 8083.
3) Zertifikat in Internetoptionen importiert - vertrauenswürdig ....
--> Zertifikate in Fritzbox und Webbrowser importiert. Keine Zertifikatswarnungen mehr (außer dass halt lokal zertifiziert wurde)
--> Wären die Zertifikate falsch hätte ich hier auch Warnungen erwartet

Weiterer Test, Zertifikate online erstellt über http://www.selfsignedcertificate.com/
*.cert + *.key per openssl-befehlen auf einem Linux-System zu PEM und P12 konvertiert
--> Selbes Verhalten wie oben mit lokal erstellten Zertifikaten

Die App. kann keinen Update an Fhem senden. "home: Error (GR02) in get ot the server ... handshake timed out"

Was kann ich noch tun oder Testen? Gibt es eine detailierte Anleitung zum Erstellen der Zertifikate? Ich möchte ausschließen dass es ggf. falsche Hash-methoden oder Einstellungen gibt die zwar Browser zu Fritzbox funktionieren jedoch nicht in Android.

Mir würde die App gut gefallen, gäbe es alternativ die Möglichkeit die Zertifikatsfehler zu ignorieren und die Daten dennoch zu senden?

Ich packe noch eine weitere Frage rein auch wenn das nicht mit dem Problem zu tun hat. Wie kann ich einstellen, dass die App die Koordinaten nur überträgt wenn ich in einem bestimmten Gebiet bin. Z. B. "home". Ich möchte nicht dass alle Bewegungen übertragen werden. Wenn ich den Link ***./fhem/geo in "URL Zone betreten" eintrage gibt es kein event in Fhem.
 
Vielen Dank im Voraus!

Log angehängt und auch Screenshots der Einstellungen.

List auf Fhem
Internals:
   CFGFN
   DEF        geo
   NAME       geofancy
   NR         1027
   STATE      id:6a472d6d-3e78-3ac1-94ed-91e80114a65e trig:1 date:1485621607 lat:48.66596798306155 long:13.072553314268589 dev:6a472d6d-3e78-3ac1-94ed-91e80114a65e devAlias=S6
   TYPE       GEOFANCY
   Readings:
     2017-01-28 17:40:07   S6              arrived home
     2017-01-28 17:40:07   currLocAddr_S6  -
     2017-01-28 17:40:07   currLocLat_S6   18.66596798306155
     2017-01-28 17:40:07   currLocLong_S6  23.072553314268589
     2017-01-28 17:40:07   currLocTime_S6  2017-01-28 17:40:07
     2017-01-28 17:40:07   currLoc_S6      home
     2017-01-28 17:40:07   lastArr         S6 home
     2017-01-28 17:40:07   lastDevice      S6
     2017-01-28 17:40:07   lastDeviceUUID  6a472d6d-3e78-3ac1-94ed-91e80114a65e
     2017-01-28 17:40:07   state           id:6a472d6d-3e78-3ac1-94ed-91e80114a65e trig:1 date:1485621607 lat:48.66596798306155 long:13.072553314268589 dev:6a472d6d-3e78-3ac1-94ed-91e80114a65e devAlias=S6
   Fhem:
     infix      geo
   Helper:
     Device_aliases:
       6a472d6d-3e78-3ac1-94ed-91e80114a65e S6
     Device_names:
       S6         6a472d6d-3e78-3ac1-94ed-91e80114a65e
Attributes:
   DbLogExclude .*
   devAlias   6a472d6d-3e78-3ac1-94ed-91e80114a65e:S6
   room       GEO

Aufbau der PEM-Datei ... beide Teile - Certificate + CA - enthalten.
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEA0/M/5EoVRICVo5AaB6wXvDEMa4peuwIxRK5qZHwcThUMsQzl
R7xKsxkvVRy4WXlr+slbYZbu2SZXFodJ2srnvGSR8etzvrQ9FWPJz5nZiWEuIk23
<....Zeilen übersprungen .....>
N3KplwKBgQCcjJ0wCYg2byl976gblWd+lG1Zdcj/HHaNRoINkc+tTi0F8okMPLHX
YznoQUf1/qXmMco/NFbhaivHc8NRVFjzhFAmBmsb7SSQaURRx4GU5fiUca89omij
e6wcn3FoRrYTKyLLXBhjW6vv3bYmc55fsfbbxCCE5jBFjhYNx+Iu4Q==
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
tyIxFUfjh4zFN5v7G0c9T+DTTTiF+m6SqWRUwVfqYJnzJQ84T4yb4X7A1OWTMHw6
KOvmG6aKbJgaVNVi2k03jhTSKSBkdpkiYNNYXRoyzD2qzJaMJcLwbsm1uSjYdN4I
<..... Zeiilen übersprungen ....>
NTneTNYb9eZKujkvb66BwXfKdXpn1F17V3rtEIWqlgkBzGZ/Ycll2Ls/FN6bq94o
X0a++VGXdH1tPNA=
-----END CERTIFICATE-----

satprofi

  • Jr. Member
  • **
  • Beiträge: 54
  • Gerät: One PlusOne
  • Version: Android 4.4.4
Re: Probleme Zertifikate
« Antwort #1 am: 28.01.2017, 20:18:29 »
Hahaha, selbige Fehlermeldung bekomme ich komischer Weise seit 3tagen. Und ich dachte das irgendwas an fhem Schuld sei. Habe aber keine Zertifikate angelegt

send from OP3

gruss

satprofi

  • Jr. Member
  • **
  • Beiträge: 54
  • Gerät: One PlusOne
  • Version: Android 4.4.4
Re: Probleme Zertifikate
« Antwort #2 am: 28.01.2017, 20:20:24 »
Zur zweiten Frage, einfach keinen Server aktivieren bei anderen zonen

send from OP3

gruss

Admin

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 768
    • EgiGeoZone
  • Gerät: Xiaomi Redmi Note 5, Samsung Galaxy Note 2, S4, S5, S2, S7
  • Version: MIUI 10.0 Global, Android 4.4, 5, 6, 7, 8, 8.1, 12, 13
Re: Probleme Zertifikate
« Antwort #3 am: 28.01.2017, 22:05:47 »
Ich melde mich am Montag nach dem Skiurlaub.
Schöne Grüße
Egmont

kadettilac89

  • Newbie
  • *
  • Beiträge: 13
  • Gerät: S6 Edge
  • Version: 7.0
Re: Probleme Zertifikate
« Antwort #4 am: 28.01.2017, 22:28:43 »
Ich melde mich am Montag nach dem Skiurlaub.

Kein Stress, ich bin erstmal nur am Testen. Als Workaround gehts mit heimischem Wlan und VPN und wenn dann muss ich über HTTP gehen ...

Schönen Urlaub!

kadettilac89

  • Newbie
  • *
  • Beiträge: 13
  • Gerät: S6 Edge
  • Version: 7.0
Re: Probleme Zertifikate
« Antwort #5 am: 29.01.2017, 12:17:34 »
Hi,

ich habe jetzt nochmal neue Zertifikate erstellt, in Fritzbox und die Endgeräte importiert und nun funktioniert es. Ich weiß nicht ob es an den Zertifikaten liegt oder was die Ursache war. Kopieren von Windows PC auf Linux sollte eigentlich keine Probleme verursachen ... Ich hatte ja keine Zertifikatsfehler.

Kann es am Header im Zertifikat liegen? Openssl hat kein "RSA" im Header-Text enthalten (im Private key).

openssl-Zertifikat:
-----BEGIN CERTIFICATE-----
-----BEGIN PRIVATE KEY-----

Zertifikate über XCA bzw. online
-----BEGIN CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----


Für mich erledigt, trotzdem danke für das Angebot drüber zu schaun. Ich werde es jetzt nicht mehr anfassen solange es läuft :)


Erstellt habe ich die Zertifikate direkt mit dem openssl-commands auf Linux. Commands unten, vielleicht stößt jemand über die Suche auf ein Zertifikatproblem.


sudo openssl req -new -x509 -nodes -out fhem_cert.pem -days 3650 -keyout fhem_key.pem

sudo openssl pkcs12 -export -in fhem_cert.pem -inkey fhem_key.pem -out server.p12

Admin

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 768
    • EgiGeoZone
  • Gerät: Xiaomi Redmi Note 5, Samsung Galaxy Note 2, S4, S5, S2, S7
  • Version: MIUI 10.0 Global, Android 4.4, 5, 6, 7, 8, 8.1, 12, 13
Re: Probleme Zertifikate
« Antwort #6 am: 29.01.2017, 17:40:32 »
Bin vom Skifahren wieder zurück  8)

Zitat
Ich packe noch eine weitere Frage rein auch wenn das nicht mit dem Problem zu tun hat. Wie kann ich einstellen, dass die App die Koordinaten nur überträgt wenn ich in einem bestimmten Gebiet bin. Z. B. "home". Ich möchte nicht dass alle Bewegungen übertragen werden. Wenn ich den Link ***./fhem/geo in "URL Zone betreten" eintrage gibt es kein event in Fhem.
Wie von satprofi geschrieben. Eine Home Zone anlgegen. Dazu eun Serverprofil und nur in die Hom Zone hängen.

Schön, dass du es geschafft hast. Es ist echt nicht einfach mit den Zertifikaten.
Ich habe diese anhand der folgender Anleitung erstellt und im Apache Web Server installiert: https://gist.github.com/gbirke/8608543

Zitat
Kann es am Header im Zertifikat liegen? Openssl hat kein "RSA" im Header-Text enthalten (im Private key).
Kann ich spontan nicht sagen.

Eine Frage. in welchen Server hast du die Zertifikate installiert?

« Letzte Änderung: 29.01.2017, 17:46:16 von Admin »
Schöne Grüße
Egmont

Admin

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 768
    • EgiGeoZone
  • Gerät: Xiaomi Redmi Note 5, Samsung Galaxy Note 2, S4, S5, S2, S7
  • Version: MIUI 10.0 Global, Android 4.4, 5, 6, 7, 8, 8.1, 12, 13
Re: Probleme Zertifikate
« Antwort #7 am: 29.01.2017, 17:43:02 »
Hahaha, selbige Fehlermeldung bekomme ich komischer Weise seit 3tagen. Und ich dachte das irgendwas an fhem Schuld sei. Habe aber keine Zertifikate angelegt
Wenn du keine Zertifikate installiert hast, dann: Falsches Thema Hier geht es genau um das Erstellen und Installieren von Zertifikaten auf einem Server und Konfiguration dazu in der App.
Schöne Grüße
Egmont

kadettilac89

  • Newbie
  • *
  • Beiträge: 13
  • Gerät: S6 Edge
  • Version: 7.0
Re: Probleme Zertifikate
« Antwort #8 am: 29.01.2017, 22:04:28 »
Eine Frage. in welchen Server hast du die Zertifikate installiert?

In diesem Fall geht es nur um Fhem als Https-Server. Das Zertifikat wäre nur hier nötig. Da ich aber nicht etliche Zertifikate in meine PCs importieren möchte nutze ich das Zertifikat auf meiner Fritzbox, meinem Apache (Ordner irgend was mit SSL) und in Fhem (/opt/fhem/certs). Fhem läuft nicht über Apache darum ist der erstmal außen vor.

In Fhem ist im Web per HTTPS Attribut on.

Es ist echt nicht einfach mit den Zertifikaten.
Ich habs bis jetzt immer hinbekommen. Hab das mal gelernt.

Nun sehe ich dass die App soweit mal funktioniert. Jetzt kann ich mich weiter damit spielen. Möchte die Freigabe (Portweiterleitung im Router) wieder zumachen und die Funktionen "Link beim Betreten" und "Link beim Verlassen" füllen und Webservice oder PHP nutzen.

Für die App an sich ... Daumen hoch  und Danke fürs bereitstellen!