FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: franky08 am 31 Dezember 2016, 19:39:56

Titel: [gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 31 Dezember 2016, 19:39:56
Hallo, habe heute etwas testen wollen und dafür Debian Mail genutzt. Das lief vor ca. einer Woche noch völlig fehlerfrei jetzt bekomme ich folgende Log. Meldung:
sendEmail returned: Dec 31 19:17:45 zotac2 sendEmail[16916]: ERROR => TLS setup failed: SSL connect attempt failed with unknown error error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number


Ich habe in global sslVersion auf TLSv12:!SSLv3 gesetzt bedingt das den Fehler und wie kann ich das wieder zum laufen bekommen?

P.S. bitte keine Hinweise auf msg umzusteigen, das bringt mir hier, in diesem Fall nichts

Guten Rutsch
VG
Frank
Titel: Antw:Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 31 Dezember 2016, 19:57:29
Gut, ich antworte mir mal selber, falls es mal jemand braucht:

Die Zeile in sendEmail:
if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {

in

if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'TLSv1_0:TLSv1_1:TLSv1_2')) {

ändern  ;)

VG
Frank
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: rudolfkoenig am 01 Januar 2017, 16:20:39
Wo findet man sendEmail?
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 16:46:37
Hallo Rudi, unter /usr/bin bei einem Debian Wheezy.
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: rudolfkoenig am 01 Januar 2017, 17:20:39
Ok, dann bin ich endgueldig verloren: was hat das mit IO::Socket::SSL zu tun?
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: Otto123 am 01 Januar 2017, 17:31:06
Hallo Frank,

da hattest Du aber offenbar eine alte sendEmail Version!?
Meine ist von (ls -l) -> "80249 Feb 22  2015"
Ich weiß gar nicht ob das Datum dabei wirklich ein Orginal Dateidatum ist?  :-[

Bei mir läuft das seit fast zwei Jahren stabil und mindestens seit Dezember 2015 ist die erwähnte Zeile in sendEmail genau so drin.

Dummerweise haben die Entwickler offenbar nie die Versionsnummer geändert.  :(
Ich hatte das seinerzeit mal hier  (http://heinz-otto.blogspot.de/2015/02/email-senden-von-fhem-und-raspberrypi.html)genauer beleuchtet.

Gruß Otto
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 18:01:33
use strict;
use IO::Socket;
use IO::Socket::INET6;


########################
##  Global Variables  ##
########################

my %conf = (
    ## General
    "programName"          => $0,                                  ## The name of this program
    "version"              => '1.56',                              ## The version of this program
    "authorName"           => 'Brandon Zehm',                      ## Author's Name
    "authorEmail"          => 'caspian@dotconf.net',               ## Author's Email Address
    "timezone"             => '+0000',                             ## We always use +0000 for the time zone
    "hostname"             => 'changeme',                          ## Used in printmsg() for all output (is updated later in the script).
    "debug"                => 0,                                   ## Default debug level
    "error"                => '',                                  ## Error messages will often be stored here
   
    ## Logging
    "stdout"               => 1,
    "logging"              => 0,                                   ## If this is true the printmsg function prints to the log file
    "logFile"              => '',                                  ## If this is specified (form the command line via -l) this file will be used for logging.
   
    ## Network
    "server"               => 'localhost',                         ## Default SMTP server
    "port"                 => 25,                                  ## Default port
    "bindaddr"             => '',                                  ## Default local bind address
    "alarm"                => '',                                  ## Default timeout for connects and reads, this gets set from $opt{'timeout'}
    "tls_client"           => 0,                                   ## If TLS is supported by the client (us)
    "tls_server"           => 0,                                   ## If TLS is supported by the remote SMTP server
   
    ## Email
    "delimiter"            => "----MIME delimiter for sendEmail-"  ## MIME Delimiter
                              . rand(1000000),                     ## Add some randomness to the delimiter
    "Message-ID"           => rand(1000000) . "-sendEmail",        ## Message-ID for email header
   
);


Da ich die Datei gerade offen hatte  ;) Laut der Angabe im Prog. ist es eine Version 1.56. Nach dem original Dateidatum kann ich nicht sehen, da ich die Datei ja gestern geändert habe.
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: rudolfkoenig am 01 Januar 2017, 18:02:32
Ach, das ist auch ein perl-Programm. Jetzt ist es mir klarer.
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: Otto123 am 01 Januar 2017, 18:16:27
Ja die Version ist immer 1.56
Ich habe das gerade nochmal installiert.
Das aktuelle debian Paket trägt die Nummer (1.56-5) hat 2262 anstatt 2236 Zeilen und die fragliche Zeile ist 1933 und nicht 1907.

Die Änderung die Du gemacht hast ist "alt" siehe Wiki -> https://wiki.fhem.de/wiki/E-Mail_senden#sendEmail

So sieht die aktuelle Datei auch aus, Zeile 1933
            if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2')) {


Wie schon in meinem Blog geschrieben, darf man aber die Datei SSL.pm nicht manipulieren.

Gruß Otto
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 20:11:26
@otto123
Das ist noch ein Relikt von 2013, zu der Zeit hatte ich mein Testsystem auf diesem Host am laufen und zu dieser Zeit funktionierte sendEmail nur mit der angepassten SSL_version => 'SSLv23:!SSLv2'. Bin dann später mit meinem Produktivsystem auf diesen Host umgezogen da die SSD im Produktivsystem das zeitliche gesegnet hatte.

ZitatWie schon in meinem Blog geschrieben, darf man aber die Datei SSL.pm nicht manipulieren.
Das hatte ich vor etlicher Zeit hier im Forum schon einmal ausführlich anderen Usern erklärt  :)
VG
Frank
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: Otto123 am 01 Januar 2017, 20:51:14
Dann hat Dein SMTP Host offenbar zum Jahreswechsel auch SSL gewechselt?
naja Du weißt Bescheid und es geht wieder!

Schönes Restjahr! Man liest sich  ;)
Otto
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 21:10:33
Kann man übrigens hier: http://www.gtkdb.de/index_36_2665.html schön nachlesen und wenn ich den Artikel richtig deute ist die Zeile:
if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) {

so original in der sendEmail! Siehe Sceenshot
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: Otto123 am 01 Januar 2017, 21:23:53
In der wheezy Version mag das sein.
In der jessie Version ist das so wie ich oben geschrieben habe. Da steht Original
            if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv23:!SSLv2')) {drin.
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 21:28:42
Das ist doch der gleiche Code wie ich ihn gepostet habe  :o, googlemail funktioniert damit aber seit ein paar Tagen nicht mehr, nur mit der Änderung auf if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'TLSv1_0:TLSv1_1:TLSv1_2')) {
läuft das Ganze wieder!


VG
Frank
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: Otto123 am 01 Januar 2017, 21:44:28
Du hast doch if (! IO::Socket::SSL->start_SSL($SERVER, SSL_version => 'SSLv3 TLSv1')) { gepostet  :o
Das ist die wheezy Version.

Und ich kann mit der Jessie Version einwandfrei über smtp.gmail.com:587 senden. Ich muss lediglich die geringere Security Meldung akzeptieren, ist ja aber schon lange so.
Titel: Antw:[gelöst] Debian Mail bringt jetzt eine Fehlermeldung, betr. SSL Version
Beitrag von: franky08 am 01 Januar 2017, 22:04:29
Ähhm, richtig! Da habe ich wohl falsch hingesehen  ;D.

VG
Frank