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
Das Paket heißt libio-socket-ssl-perl
VG
Frank
Ne Rückmeldung ob es geklappt hat ?
VG
Frank
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
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
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.
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.
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
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)
Oja, das kann gut sein. Ich werde das morgen testen :)
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.
:)
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
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
Hey,
hatte es dann noch irgendwie hinbekommen... Glaub hatte ein update von fhem gemacht... Danach hatte es geklappt.
Lg und danke
Fox