Lets Encrypt - mehrere Domains, verschiedene DocumentRoot mit Port 443

  • Gehen wir mal systematisch vor. Zunächst das, was auffällt:

    /etc/apache2/mods-available/ssl.conf:

    Code
    SSLSessionCache        shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)

    Hast Du mod_socache_shmcb aktiviert (gibt es das für Apache 2.2)?


    Sind alle <VirtualHost> Blöcke für Port 443 auf *:443 gesetzt, auch in default-ssl.


    Was sagt apachectl configtest?


    Willst Du bei Apache 2.2 bleiben?

  • mod_socache_shmcb... gibt es das für Apache 2.2?

    Ich beantworte mal selbst, da ich es in einer alten Konfigurationsdokumentation noch gefunden habe: shmcb scheint tatsächlich unter Apache 2.2 möglich zu sein. Das Modul habe ich allerdings nicht gefunden, möglicherweise war dies unter Apache 2.2 noch nicht modular.

  • Gehen wir mal systematisch vor. Zunächst das, was auffällt:

    Hast Du mod_socache_shmcb aktiviert (gibt es das für Apache 2.2)?

    Ich glaube nicht, konnte jetzt aber auch nichts finden, wie ich es aktiviere (habe leider keine httpd.conf in /etc/apache2/)

    Sind alle <VirtualHost> Blöcke für Port 443 auf *:443 gesetzt, auch in default-ssl.

    Ja.

    Was sagt apachectl configtest?

    Syntax OK

    Willst Du bei Apache 2.2 bleiben?

    Erstmal ja - oder ist die Migration unter Debian 7 möglich, ohne größere Probleme zu bereiten?
    An sich sollte das alles doch unabhängig von der Version sein, oder? :/


    Für ein komplettes Upgrade auf eine höhere Version fehlt mir aktuell leider die nötige Zeit.

  • Die hier gezeigte Konfiguration ist korrekt und kann nicht erklären, warum nur der zuletzt aktivierte virtual Host Block berücksichtigt wird. Auch die von Dir am Montag geposteten Listen und NameVirtualHost Direktiven sind korrekt, solange mod_ssl aktiv ist; das ist aber augenscheinlich der Fall.


    Das nächste wäre, in den nicht gezeigten Dateien zu suchen, und dabei insbesondere auf die Include Reihenfolge und doppelt vorkommende Direktiven zu prüfen. Dazu müsstest Du aber den kompletten Inhalt von /etc/apache2 zur Verfügung stellen (als tar, zip o.ä).

    Erstmal ja - oder ist die Migration unter Debian 7 möglich, ohne größere Probleme zu bereiten?

    Dein Problem ist Debian 7. Ab Juni gibt es dafür nicht einmal minimalen Support. Wenn für irgendein genutztes Programm eine Sicherheitslücke veröffentlicht wird, musst die dann wahrscheinlich vorhandenen Patches selbst portieren bzw. die Lücke auch selbst schließen. Wenn Du aktuell keine Zeit für ein Upgrade hast, musst Du Dir jetzt sofort die Zeit nehmen, das Upgrade zu planen, Anfang Juni brauchst Du ein funktionierendes Konzept.

  • Das nächste wäre, in den nicht gezeigten Dateien zu suchen, und dabei insbesondere auf die Include Reihenfolge und doppelt vorkommende Direktiven zu prüfen. Dazu müsstest Du aber den kompletten Inhalt von /etc/apache2 zur Verfügung stellen (als tar, zip o.ä).

    Ich habe dir über das Forum eine E-Mail mit dem Link zum Zip geschickt - ich hoffe, es kam an :)

  • Ja, beim Durchsehen ist mit aufgefallen, dass es unter sites-available/card.w-s.org vermutlich einen Schreibfehler gibt:

    Code
    <VirtualHost *:4433>

    sollte wohl lauten:

    Code
    <VirtualHost *:443>

    Denn auf Port 4433 fehlt der Listen.

    Tritt der Fehler oder ggf. ein anderer nach der Korrektur noch auf?

  • Ja, beim Durchsehen ist mit aufgefallen, dass es unter sites-available/card.w-s.org vermutlich einen Schreibfehler gibt:

    Code
    <VirtualHost *:4433>

    sollte wohl lauten:

    Code
    <VirtualHost *:443>

    Denn auf Port 4433 fehlt der Listen.

    Tritt der Fehler oder ggf. ein anderer nach der Korrektur noch auf?

    Ah verdammt ja, also das hab ich hier geändert, weil sonst die ganze Seite eben nicht mehr läuft.

    Wenn ich es also auf 443 ändere, dann habe ich das besagte Problem, dass zwar alles mit card.w-s.org funktioniert, aber w-s.org nicht mehr.

  • Die Konfiguration des Apache auf Port 443 ist korrekt und macht genau das, was sie soll. Aber:

    1. Du hast 2 virtuelle Hosts in 2 verschiedenen über Include sites-enabled/ eingefügten Konfigurations-Schnipseln. Diese werden in alphabetischer Reihenfolge eingefügt.
    2. Der eine virtuelle Host hört auf den ServerNamen card.w-s.org, der Konfigurations-Schnipsel ist in der gleichnamigen Datei card.w-s.org. Der andere virtuelle Host hört auf den ServerNamen w-s.org, der Konfigurations-Schnipsel ist in der gleichnamigen Datei w-s.org.
    3. Nach der unter 1. genannten Reihenfolge, liest Apache zuerst card.w-s.org und dann w-s.org.
    4. Ruft man die URL https://w-s.org auf, erfolgt im Content-Management-System ein Redirect auf https://www.w-s.org.
    5. Für https://www.w-s.org, auf welchen der Client umgeleitet wird, gibt es keinen virtuellen Host. Daher nimmt Apache den ersten passenden, dies ist nach 3. card.w-s.org.

    Zunächst solltest Du die Datei für den Standard-Host mit einem Zahlen-Präfix versehen, damit es künftig eine von Dir bestimmte vordere Position beibehält. Außerdem sollte in w-s.org der ServerAlias http://www.w-s.org gesetzt werden, damit Apache Bescheid weiß und den Client nicht in eine Endlosschleife schickt.

  • Dankeschön!
    Das mit den Zahlenpräfixen hat zumindest schonmal einen Teil meines Problems gelöst! :)

    Jetzt kann ich card.w-s.org aufrufen, jedoch funktioniert es mit card.w-s.net nicht (habe insgesamt 3 TL-Domains mit mehreren Subdomains).


    Jedoch ist die Config doch 1:1 die selbe, nur eben einmal mit und einmal ohne card. - hast du hier vielleicht noch eine Idee?