Wieder mal Probleme mit SSLv2 (HttpUtils ?)

Begonnen von CQuadrat, 08 Juli 2015, 08:48:44

Vorheriges Thema - Nächstes Thema

CQuadrat

Hallo Zusammen,

wie im Wiki beschrieben, wollte ich mir TabletUI installieren:

update all https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt


Leider bekomme ich folgende Fehlermeldung:

https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt:
Can't connect(2) to https://raw.githubusercontent.com:443:  SSL Version
SSLv2 not supported error:00000000:lib(0):func(0):reason(0)


Dieses Problem wurde hier schon in diversen Zusammenhängen (SendEmail, Google Kalender, PushBullet, etc.) diskutiert, aber wohl noch nie im Zusammenhang mit update.

Ich habe bereits einige der in Vergangenheit hier diskutierten Änderungen an der HttpUtils ausprobiert. Außerdem habe ich diverse SSL-Libs reinstalliert. Leider alles ohne Erfolg.

Was mich wundert, dass ich hier sonst keine Probleme von SSLv2 in Verbindung mit update finde. Es gibt ja doch einige Fhem-Zusatzpakete, die so installiert werden.


Hat hier jemand vielleicht einen Tip für mich?


Danke und Gruß

Christoph
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

rudolfkoenig

Ich kann
{ GetFileFromURL("https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt") }
ohne Probleme unter OSX, Ubuntu 12.04 und auf einer FritzBox 7360SL ausfuehren, ohne etwas an HttpUtils.pm zu drehen, oder crypto-Bibliotheken zu installieren (bis auf die FB, aber das ist eine andere Baustelle).

Das bisher kaum Probleme mit update via SSL gemeldet wurden, liegt vermutlich daran, dass die meisten update-Quellen nicht via https eingebunden sind, und selbst https funktioniert normalerweise, s.o.

Otto123

Ich weiß nicht ob das ne ähnliche Sache ist, aber als ich versucht habe FHEM auf debian über den Weg Repository zu installieren war das ein gruseliges Erlebnis. Ich bin zwar zum Ziel aber auch zum Entschluss gekommen diesen Weg niemanden zu empfehlen.
Die Verknüpfung aus Fehlermeldung und Zertifikate installieren war nicht unbedingt logisch und man brauchte Kreativität bei der Interpretation.

Vielleicht liegt es an Zertifikaten die man per Hand installieren muss?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CQuadrat

Ich kann

{ GetFileFromURL("https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt") }


ohne Fehlermeldung aufrufen. Ich beobachte aber leider keinen Effekt. Die Datei controls_fhemtabletui.txt sollte dann doch in ./FHEM/(?) geladen werden.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

rudolfkoenig

Kein Effekt ist de-facto ein Fehler, Details stehen erst ab "attr global verbose 5" im Log. Wenn es funktioniert, dann bekommt man die gleiche Daten, wie man ueber den Browser. Ja, das URL kann man ohne Gefahr auch im Browser eingeben.

Otto123

aber Browser geht bei mir und Zertifikat ist es wahrscheinlich nicht.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CQuadrat

Mit verbose=5 (global) kommt die gleiche Fehlermeldung im FHEM-Log wie oben beschrieben.

Ich habe auf meinem FHEM-Rechner zwar kein graphisches Frontend, aber mit dem guten alten Textbrowser lynx funktioniert es. Aufruf:

lynx https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt


Das heißt, dass es nicht an meiner Linux-Installation hängen kann.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), MQTT, SONOS (div. Gimmicks), OneWire, Hue

rudolfkoenig

Das heisst nur, dass lynx und das Perl SSL Modul nicht die gleichen Bibliotheken verwenden, oder dass diese anders parametrisiert aufrufen.

MichaS

Hallo zusammen,

da hänge ich mich gerne mal dran, auch ich habe beim FTUI Update an einem RasPi B mit Raspbian und inzwischen mehreren Updates auf rel. aktueller Version 3.18.11 dieses Problem:
https://raw.githubusercontent.com/knowthelist/fhem-tablet-ui/master/controls_fhemtabletui.txt[/url]: Can't connect(2) to [url]https://raw.githubusercontent.com:443[/url]: SSL Version SSLv2 not supported error:00000000:lib(0):func(0):reason(0)

Wenn es hier Fortschritte zur Problemlösung gibt, teste ich gerne mit  :)

Gruß
Micha

MichaS

Ich habe mich heute daran erinnert, bei der Einrichtung von DebianMail auf dem RPi wegen der Fehlermeldung invalid SSL_version specified at /usr/share/perl5/IO/Socket/SSL.pm line 332 folgenden Tip umgesetzt zu haben:
pi@raspberrypi ~ $ sudo vi /usr/share/perl5/IO/Socket/SSL.pm
In der Zeile 1490 sollten Sie den folgenden regulären Ausdruck vorfinden.
            m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1[12]?))$}i
Ziemlich am Ende des regulären Ausdrucks befindet sich ein $-Zeichen welches Sie entfernen sollten.
Nach der Änderung sollte die Zeile wie folgt aussehen.
            m{^(!?)(?:(SSL(?:v2|v3|v23|v2/3))|(TLSv1[12]?))}i


Das hat dann mit DebianMail funktioniert, aber genau die Anpassung stört wohl die https Zugriffe jetzt  >:(

Also Codinganpassung zurückdrehen oder reinstallieren mit sudo apt-get install --reinstall libio-socket-ssl-perl und rebooten.
Schon geht die https Geschichte bei mir wieder einwandfrei  :) :)

Für die Probleme mit DebianMail wird jetzt folgendes empfohlen:
am Raspberry muss folgende Datei angepasst werden: /usr/bin/sendEmail
In Zeile 1907 muss
    if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {
in folgendes geändert werden
    if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2')) {


Vielleicht hilft euch das weiter, viel Erfolg  8)

Grüße
Micha