Nginx + Letsencrypt + Certbot kein SSL

  • Hallo zusammen,

    ich möchte gerne für meine Webseite ein SSL Zertifikat erstellen.
    Via certbot habe ich das Zertifkat wir folgt erstellt:

    Code
    sudo certbot --nginx -d domain.de -d www.domain.de

    Natürlich habe ich meine Domain dort verwendet.

    Nach kurzer Zeit werden die Zertifikate erstellt und sidn auch unter /etc/letsencrypt/live/domain.de zu finden.

    Durch den Parameter --nginx soll er die Config automatisch anpassen.
    Diese sieht nun wie folgt aus:


    Es ist also zu sehen, dass die entsprechenden Einträge gemacht wurden. Laut der NginX Dokumentation soll das so auch passen. Durch das Redirect werden http anfragen zwar jetzt zu einem https umgeleitet, aber das grüne begehrte grüne Schloß bleibt mir verwehrt. Cache im Browser habe ich gelehrt und den Port 443 im Router frei gegeben.

    Sieht irgendwo jemand den Fehler?

    Danke schonmal!

    Gruß Kokiri

  • Sicherheitshalber: Nginx neu gestartet?

    Ich weiß nicht ob das die Lösung ist, aber ich bin überrascht, dass du mehrere "listen"-Befehle in einem(!) "server"-Block einbaust. Normalerweise kenne ich Nginx-Konfigurationen so:

    So hab ich meinen Webserver konfiguriert; bei mir funktioniert das Lets Encrypt-Zertifikat einwandfrei. Allerdings habe ich die "--webroot"-Variante genutzt und Nginx danach eigenhändig konfiguriert.

    Zusätzlich hab ich noch einige Änderungen in diversen Dateien vorgenommen. Keine Ahnung ob die wirklich nötig sind, ich hab nur irgendwo mal im Internet aufgeschnappt, dass man das machen soll^^.
    (Warnung vorneweg: Ich nutze Archlinux; kann sein, dass es bei Raspbian andere Dateien sind)

    Code
    -- /etc/hostname --
    domain
    
    
    -- /etc/hosts --
    127.0.0.1       localhost.localdomain   localhost       domain.de domain

    Einmal editiert, zuletzt von Astorek86 (26. März 2017 um 19:25)

  • So Sachen mag NginX bei mir irgendwie garnicht. Ich habe den Vorschlag versuch umzusetzen und zwei Blöcke gebaut.
    Seitdem nur noch die Fehlermeldung:

    Code
    Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.

    Obwohl ich alles wieder zurück gesetzt und habe nen reboot ausgeführt habe.
    NginX hatte ich nach meinem Versuch neu gestartet, jap.

    Die Ausgaben von systemctl status nginx.service

    Code
    ● nginx.service - A high performance web server and a reverse proxy server
      Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
      Active: failed (Result: exit-code) since So 2017-03-26 20:00:00 CEST; 2min 27s ago
     Process: 1639 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)

    Jetzt muss ich erst mal wieder schauen, wie ich das hin bekomme, dass er überhaupt wieder läuft. So wirklich mag NginX mich ja nicht ^^

    Wäre es vielleicht möglich, dass du mir deine Konfiguration mal postest zum Vergleich? Kannst die Domain Daten ect, ja leicht abändern :)

    Danke schonmal

    Gruß Kokiri

    Einmal editiert, zuletzt von Kokiri (26. März 2017 um 20:06)

  • Hi,

    Fehler in der Nginx-Config findest Du mit

    Code
    sudo nginx -t

    Ansonsten 2 Blöcke, HTTP umleiten und HTTPS abarbeiten lassen...

    Knut

  • Nachtrag:

    Nun hat es geklappt 2 Blöcke einzufügen:


    Ich habe es auch mal mit der --webroot Methode versucht:

    Code
    sudo certbot certonly --webroot -w /var/www/html/domain/ -d www.domain.de -d domain.de

    Die Seite ist jetzt auch mit HTTPS aufrufbar, aber ohne das begehrte grüne Schloss :wallbash:
    Wie hast du denn die SSL Konfiguration gemacht? Muss ich eigentlich irgendwelche Dateien in /var/www/html/domain legen?

    [EDIT] Knut deine Config habe ich ebenfalls angepasst und probiert, mit gleichem Ergebnis. Redirect auf https geht ohne das grüne Schloss. Browsercache habe ich geleert.[/EDIT]

    Einmal editiert, zuletzt von Kokiri (26. März 2017 um 21:02)

  • Was gibt es denn für eine Meldung im Browser? Wird das Zertifikat angemeckert? Lädt deine Seite eventuell unsicheren HTTP irgendwo nach?

  • Wie ich vermutet habe. Zertifikat ist in Ordnung, aber es werden Teile der Seite unverschlüsselt übertragen. Du hast auf der Seite also Content eingebunden, der nicht auf deinem Server liegt und per HTTP abgerufen wird.

    Einmal editiert, zuletzt von BitterVoice28773 (26. März 2017 um 21:21)

  • Nicht gut.... Okay dann schonmal vielen Dank. Dann gehe ich mal auf die Suche danach und dann sollte es ja klappen, hoffe ich :D

  • Es funktioniert Jungs :D
    Danke für eure Hilfe.
    @Astorek, Habe die Variante mit dem Redirect gewählt :thumbs1:

    Gru0 kokiri

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!