[ISPConfig3] SSL-Fehler, Domain mit/ohne www als ServerName/ServerAlias?

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von mdn, 4. Apr. 2012.

  1. mdn

    mdn New Member

    Hallo,

    ich habe nach Einbinden eines extern generierten SLL-Zertifikats (Thawte) das Problem, dass der Webserver nicht per SSL erreichbar ist. "Fehlercode: ssl_error_rx_record_too_long"

    Im error-Log des vhosts finde ich:

    [Wed Apr 04 16:48:04 2012] [warn] RSA server certificate CommonName (CN) `www.example.com' does NOT match server name!?
    [Wed Apr 04 16:48:04 2012] [error] Unable to configure RSA server private key
    [Wed Apr 04 16:48:04 2012] [error] SSL Library Error: 185073780 error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch


    Ich vermute dass es daran liegt, dass wir das Zertifikat auf www.example.com (bzw. natürlich den echten Domainnamen) registriert haben, während in ISPConfig der Webserver nur mit example.com (bzw. natürlich wieder dem echten Domainnamen) als ServerName angelegt wurde (www.example.com ist nur als ServerAlias konfiguriert).

    Wenn das wirklich der Grund ist: Kann das in ISPConfig einfach verändert werden, also
    ServerName www.example.com
    ServerAlias example.com
    und wenn ja wie?

    Oder liege ich falsch und der Fehler hat eine ganz andere Ursache?

    Das Zert bei Thawte neu auszustellen wird wohl nicht gehen. Außerdem soll der Webserver von den Nutzern unter www.example.com angesprochen werden, d.h. das Zert muss auch auf diesen Namen lauten.

    ISPConfig-Version ist 3.0.4.3

    Für Hinweise dankbar,
    Martin
     
  2. nowayback

    nowayback Well-Known Member

    Moinsen,

    1. Normalerweise wird ein Standartzertifikat ausgestellt für domänenname.endung was auch www.domänenname.endung enthält. D.h. es sollte beides funktionieren.

    2. [Wed Apr 04 16:48:04 2012] [warn] RSA server certificate CommonName (CN) `IANA — Example domains' does NOT match server name!?
    Diese Meldung kannst du im Normalfall ignorieren. Sie kommt warscheinlich daher das dein Server server1.domänenname.endung oder so heißt anstatt www.domänenname.endung. Das macht auch sinn so. In dem Fall ist das ok.


    Zur Lösung:
    Prüfe bitte ob du ssl aktiviert hast:
    Code:
    a2enmod ssl
    Danach prüfe bitte ob du die default-ssl enabled hast:
    Code:
    a2enable default-ssl
    Grüße
    nwb
     
  3. mdn

    mdn New Member

    Hallo,

    erstmal danke für die Antwort!

    Meinst du ein Wildcard-Zertifikat, also "*.domain.tld"? Haben wir in diesem Fall leider nicht. Das Zertifikat ist explizit auf den Common Name mit www ausgestellt ("CN=www.domain.tld"). Ein Wildcard-Cert wäre deutlich teurer.

    Der Linux-Server selbst hat ohnehin einen komplett anderen Hostname, das ist kein Thema. Ignorieren geht leider nicht, da der Aufruf mit https ja eben nicht funktioniert. Ok, vielleicht liege ich auch falsch und die Meldung selbst (ist ja nur eine Warnung) wäre harmlos. Trotzdem bekomme ich keine SSL-Verbindung zu diesem vhost.

    Ja, "Module ssl already enabled".

    Du meinst "a2ensite"? Nein, die "default-ssl" ist nicht aktiv. Warum auch, ich will ja SSL in einem eigenen vhost, der via ISPConfig angelegt wurde.
    SSL hat mit genau diesem vhost und einem self-signed certificate auch schon funktioniert, nur eben nicht mit dem nachträglich eingebundenen offiziellen Thawte-Zertifikat.

    Firefox meldet "Fehlercode: ssl_error_rx_record_too_long", in Chrome heisst es "Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error."

    wget sagt:
    Code:
    Connecting to IPADRESSE:443...connected.
    OpenSSL: error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
    Unable to establish SSL connection.
    Gruß
    Martin
     
  4. Till

    Till Administrator

    Und das thawte ssl Zertifikat basiert auf dem CSR den ISPConfig erzeugt hatte, oder basiert es auf einem anderen csr? Wenn es nicht der ispconfig CSR ist, kann apache das ssl cert nicht laden da ein key mismatch vorliegt, dann wurde der ssl teil automatisch aus dem vhost entfernt.

    Die Vorgehensweise um ein offozielles SSL Zert einzufügen ist:

    1) Self signed cert erstellen.
    2) Das CSR das erzeugt wurde von einer authority wie thawte zertifizieren lassen.
    3) Das Cert was Du zurück bekommen hast in das ssl cert Feld in ISPConfig kopieren und dabei das selbstsignierte cert in dem Feld ersetzen, dann als Aktion "save certificate" auswählen und auf den speichern knopf drücken.
     
  5. mdn

    mdn New Member

    Nein, der CSR wurde leider schon außerhalb von ISPConfig erzeugt und damit das Zertifikat bei Thawte bestellt.

    Allerdings habe ich mich dann beim Einbinden streng an die Anleitung im ISPConfig Manual (Abschnitt 5.4 bzw. 5.4.1) gehalten, d.h. zunächst ein self-signed Cert+Key generieren lassen, dann auf der Shell die Dateien ersetzt und in der Weboberfläche die CSR und CRT eingefügt (ebenso das Bundle, das bei Thawte zusätzlich benötigt wird).

    Ich denke inzwischen habe ich die Ursache gefunden: Ich habe beim Generieren des Requests die Default-Einstellung für SSL-Domain auf "DOMAIN.TLD (ohne www!) gelassen. Das Manual geht an dieser Stelle auf diesen Punkt gar nicht ein.

    Habe nun das Cert nochmal komplett rausgelöscht und den ganzen Vorgang mit SSL-Domain=www.DOMAIN.TLD erneut ausgeführt - damit funktioniert jetzt der SSL-Aufruf und liefert das Thawte-Zertifikat aus.

    Danke fürs Mitlesen und Mitdenken!

    Gruß
    Martin
     
  6. Till

    Till Administrator

    Das Manual geht darauf nicht ein da es keine Rolle spielt. Wenn Du einen externen csr verwendest, dann sind alle Einstellungen für den Zertifikatsinhalt wie Domain, name etc. die Du in ISPConfig eingestellt hast nicht relevant, denn diese sind in Deinem Externen CSR drin. Der Fehler wird also irgendwo anders gelegen haben, vielleicht fehlte etwas beim reinkopieren von cert, key oder csr.
     

Diese Seite empfehlen