Timeout für SSL Handshakes

Begonnen von rene, 07 Januar 2014, 23:50:33

Vorheriges Thema - Nächstes Thema

rene

Hi,

manche Router lassen nicht zu, dass man Services im LAN aus dem LAN über ihre öffentliche IP (port forward) anspricht und blockieren, vermeintlich um DNS Rebinding zu verhindern. Das wäre nicht weiter schlimm für FHEM, nur blockiert das blocking SSL Handshake (start_SSL) den fhem Prozess komplett.

Um dies zu verhindern sollte wenigstens ein Timeout für start_SSL festgelegt werden.

Beispiel:
    my $ret = IO::Socket::SSL->start_SSL($clientinfo[0], {
      SSL_server    => 1,
      Timeout       => 5,
    ...

Ich habe an mehreren Stellen von Problemen mit eingefrorenem FHEM Server gelesen. Der eine oder andere davon könnte durchaus hieran liegen. Mir hat es jedenfalls die letzten 3 Nächte Spaß bereitet. ;)

VG
René

rene

Danke. :)

------------------------------------------------------------------------
r4719 | rudolfkoenig | 2014-01-23 06:57:45 +0100 (Thu, 23 Jan 2014) | 2 lines
Changed paths:
   M /trunk/fhem/FHEM/TcpServerUtils.pm

TcpServerUtils: added a timeout for SSL handshaking