FHEM Forum

FHEM - Hardware => Einplatinencomputer => Thema gestartet von: Jens2014 am 13 Oktober 2014, 17:49:01

Titel: RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 13 Oktober 2014, 17:49:01
Hallo,
ich versuche auf meinem Raspberry nach dieser Anleitung: http://www.fhemwiki.de/wiki/Raspberry_Pi_%26_HTTPS den HTTPS Zugang einzurichten. Leider gibt es bei mir immer den Fehler FHEMWEB SSL/HTTPS error: No such file or directory.
Ich habe das Verzeichnis certs im unter fhem liegen, wie beschrieben.
Was mich allerdings irritiert ist, dass ich das perl-io Package nicht installieren kann: Unable to locate package perl-io-socket-ssl
Außerdem habe ich in irgendeinem Google Eintrag etwas von einem tcpUtil.pm gelesen. Das gibt es aber in der aktuellen Version nicht.

Hat jemand einen Tip für mich, was ich tun muss?

Danke
Jens
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: franky08 am 13 Oktober 2014, 18:48:46
Das Paket heißt libio-socket-ssl-perl

VG
Frank
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: franky08 am 13 Oktober 2014, 23:41:51
Ne Rückmeldung ob es geklappt hat ?

VG
Frank
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 22 Oktober 2014, 09:56:03
Hallo Frank,
sorry für meine späte Antwort. Ich war im Stress.
Ich habe die Bibliothek noch einmal kontrolliert. Sie war installiert.
Ich bekomme trotzdem noch immer den Fehler FHEMWEB SSL/HTTPS error: No such file or directory
Dabei habe ich alles korrekt vorliegen, zumindest meines Wissens nach. Es wäre ja schön, wenn die Fehlermeldung ausgeben würde, wo er etwas nicht findet, bzw. erwartet.
Das Verzeichnis sieht wie folgt aus:
-rwxrwxrwx  1 fhem root 1363 Okt 13 17:26 server-cert.pem
-rwxrwxrwx  1 fhem root 1704 Okt 13 17:26 server-key.pem
pi@raspberrypi /opt/fhem/certs $

Was sollte daran falsch sein?

Gruß Jens
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: betateilchen am 22 Oktober 2014, 10:19:24
Zitat von: Jens2014 am 22 Oktober 2014, 09:56:03
Was sollte daran falsch sein?

Es fängt schon damit an, dass die Rechte auf die zwei Dateien falsch gesetzt sind. Ein privater Schlüssel darf nicht beschreibbar sein und schon gar nicht von jedem x-beliebigen User!

chmod 644 *.pem
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 22 Oktober 2014, 10:47:17
Die Rechte hatte ich irgendwann mal vor lauter Verzweiflung so gesetzt. Denn auch mit der richtigen Einstellung klappt es nicht.
Ich habe TcpServerUtils.pm mal etwas bearbeitet und lasse mir den modpath ausgeben. Der steht auf . Also habe ich das certs Verzeichnis unter das FHEM Verzeichnis kopiert, da ich annehme dass modpath für Modulpfad steht und der ist ja nun einmal /opt/fhem/FHEM. Hat aber auch nichts genützt, außer das die Fehlermeldung nur noch 3 Mal und nicht 6 Mal kommt. Dann habe ich noch einen Versuch gemacht und den Pfad komplett eingetragen. Auch das hat nicht funktioniert. Jetzt weiß ich nicht mehr weiter.
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: betateilchen am 22 Oktober 2014, 14:30:00
Mit Deinem planlosen Rumgewurschtel machst Du alles nur noch schlimmer und machst es anderen Leuten unmöglich, Dir wirklich weiterzuhelfen.

Tatsache ist: Die https-Verbindungen funktionieren einwandfrei und völlig simpel, wenn man aktuelle Modulversionen in seinem fhem verwendet und sich an die Anleitung im Wiki hält.

Ich schlage vor, Du stellst erstmal einen klar definierten Zustand in Deinem fhem wieder her (mit unverbastelten Moduldateien und Konfigurationswerten) und meldest Dich dann hier nochmal.
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 22 Oktober 2014, 15:28:13
Was heißt hier planlos. Ich habe versucht mehr Informationen zu bekommen und an die Fehlerursache herauszufinden. Deshalb hatte ich kurzzeitig den Logeintrag geändert, um zu schauen auf welchen Pfad er zugreift. Der scheint auf jeden Fall korrekt zu sein. Ergo ist die Fehlermeldung falsch.
Wenn der update Befehl im fhem korrekt funktioniert, wovon ich ausgehe, habe ich die aktuellste Software installiert und sogar eben noch einmal das update durchgeführt.
Ferner habe ich meine Config noch einmal geprüft, sie ist korrekt und entspricht dem Standard, bzw. den Werten wie sie in einer jungfräulichen Datei stehen plus natürlich den Infos zu meinen Geräten.
Hier die Werte.
Zum Einschalten von HTTPS entferne ich nur das # von WEB.


attr global userattr devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride
attr global autoload_undefined_devices 1
attr global logfile ./log/fhem-%Y-%m.log
attr global modpath .
attr global motd SecurityCheck:\
\
WEB,WEBphone,WEBtablet has no basicAuth attribute.\
\
Restart FHEM for a new check if the problem is fixed,\
or set the global attribute motd to none to supress this message.\

attr global sendStatistics onUpdate
attr global statefile ./log/fhem.save
attr global uniqueID ./FHEM/FhemUtils/uniqueID
attr global updateInBackground 1
attr global verbose 3

# define telnetPort telnet 7072 global

define WEB FHEMWEB 8083 global
# attr WEB basicAuth
# attr WEB HTTPS

define WEBphone FHEMWEB 8084 global
attr WEBphone stylesheetPrefix smallscreen
# attr WEBphone HTTPS
# attr WEBphone basicAuth

define WEBtablet FHEMWEB 8085 global
attr WEBtablet stylesheetPrefix touchpad
# attr WEBtablet HTTPS
# attr WEBtablet basicAuth

# Fake FileLog entry, to access the fhem log from FHEMWEB
define Logfile FileLog ./log/fhem-%Y-%m.log fakelog

define autocreate autocreate
attr autocreate autosave 1
attr autocreate filelog ./log/%NAME-%Y.log
attr autocreate weblink 1
attr autocreate weblink_room Plots

define eventTypes eventTypes ./log/eventTypes.txt
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: gero am 22 Oktober 2014, 15:48:06
Hat dein Problem evtl. hiermit etwas zu tun?
http://forum.fhem.de/index.php?topic=17767.0 (http://forum.fhem.de/index.php?topic=17767.0)


Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 22 Oktober 2014, 20:48:37
Oja, das kann gut sein. Ich werde das morgen testen :)
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 23 Oktober 2014, 08:10:55
So, ich habe das Thema gelöst.
1. SSL mäßig war alles richtig.
2. Der Hinweis mit Sendmail war sehr gut, auch wenn ich am Ende nicht weiß, ob dies auch ein Grund gewesen wäre (siehe 3.). Hier noch einmal die Zusammenfassung des Bugfixes:
    in der Datei /usr/bin/sendEmail
    die Zeile 1907 ändern :
    von
       if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {
    nach
       if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2')) {
3. Der Fehler war die Einstellung des ModPath, der bei mir relativ war
    attr global modpath .
    Damit es aber funktioniert, muss der ModPath auf den richtigen Pfad absolut stehen, im Fall meines RaspberryPi auf
    attr global modpath /opt/fhem

Dann klappt es auch mit HTTPS.

Übrigens: Der Umstieg von der Fritzbox auf den Raspberry, den ich vor ein paar Wochen durchgeführt habe, war schnell und einfach umzusetzen. Ich konnte die fhem.cfg 1:1 übernehmen, so dass das System praktisch sofort lief. Nur der ModPath sollte geändert werden, wie sich jetzt herausgestellt hat.
:)
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: foxmulder am 01 April 2015, 09:00:54
Hallo zusammen,

ich hab irgendwie noch Probleme SSL bei FHEM zum Laufen zu bekommen. :-/
Die Einrichtung hab ich anhand von diversen HowTos gemacht...ist ja nicht kompliziert: http://mkleine.de/blog/2014/01/19/raspberry-pi-zugriff-auf-fhem-per-https-sichern/

Aber ich komme nicht via HTTPs auf das Webinterface von FHEM. In den Logs steht beim Aufruf dann "2015.03.31 17:32:52 1: FHEMWEB SSL/HTTPS error: No such file or directory"

Ich habe FHEM auf einem Raspberry laufen.
Unter " /opt/fhem " ist der Ordner mit den Zertifikaten angelegt:
drwx--x--x  2 fhem root      4096 Mar 31 17:30 certs

pi@raspberrypi /opt/fhem $ sudo ls -l ./certs/
total 8
-rw-r--r-- 1 root root 1367 Mar 31 17:30 server-cert.pem
-rw-r--r-- 1 root root 1704 Mar 31 17:30 server-key.pem

In der "fhem.cfg" hab ich die entsprechenden Settings auch vorgenommen:

attr global modpath /opt/fhem

und

define WEB FHEMWEB 8083 global
attr WEB HTTPS
attr WEB basicAuth ZmhlbWZveDpIb21lNFN3RWV0WSE=
attr WEB hiddenroom DashboardRoom
attr WEB room Settings
attr WEB stylesheetPrefix dark


Aber nach einem Neustart von FHEM wird im Browser nur ein Fehler ausgegeben das die Verbindung nicht möglich ist! Und wie oben geschrieben der Fehler im FHEM Log angelegt. :-/

Auch die Bugfixes für SendEMail /IO::Socket habe ich versucht...leider mit gleichem Ergebnis. :-/


Hat noch jemand einen Tipp für mich???


Vielen Dank und viele Grüße
Fox
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: Jens2014 am 05 August 2015, 14:22:28
Hallo Fox,
versuche es mal mit einer 1 hinter dem HTTPS.
Bei mir sehen die Einträge alle so aus:
attr WEB HTTPS 1

Jens
Titel: Antw:RaspberryPi HTTPS perl-io-socket-ssl
Beitrag von: foxmulder am 17 August 2015, 15:34:29
Hey,

hatte es dann noch irgendwie hinbekommen... Glaub hatte ein update von fhem gemacht... Danach hatte es geklappt.

Lg und danke
Fox