nginx cannot load certificate fullchain.pem – Certbot Fixieren

Der Fehler nginx cannot load certificate path/fullchain.pem erscheint, wenn wir den NGINX-Dienst nach dem Löschen von Zertifikaten testen Let’s Encrypt generiert mit Certbot.

Auf dem Server sieht der Fehler so aus:

nginx: [emerg] cannot load certificate "/etc/letsencrypt/live/example.com/fullchain.pem": BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/etc/letsencrypt/live/example.com/fullchain.pem','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/nginx.conf test failed

Nginx-Fehler im Hintergrund

In einem früheren Artikel habe ich gezeigt, wie Sie aus löschen können Certbot die Domains, die in der Vergangenheit auf dem Server gehostet wurden, aber derzeit nicht mehr aktiv sind. Alte Domains löschen Certbot certificates (Let's Encrypt-Zertifikat).

Wenn Sie Zertifikate löschen SSL für aktive Domains, die noch auf dem Server gehostet werden, per Befehl: sudo certbot delete, wird das Zertifikat automatisch gelöscht, bleibt aber in Sitzungen aktiv, bis der Dienst neu gestartet wird nginx. Mit dem Befehl nginx -t (Testen des Dienstes) werden Sie möglicherweise überrascht sein, dass der Test mit dem obigen Fehler fehlschlägt. Die Lösung ist jedoch sehr einfach.

nginx cannot load certificate
nginx cannot load certificate

Behoben: nginx: [emerg] kann das Zertifikat fullchain.pem nicht laden

Wenn Sie ein Zertifikat installieren SSL Let’s Encrypt von Certbot, werden in der Konfigurationsdatei von nginx für die Domain einige Zeilen hinzugefügt, die auf die Existenz des Zertifikats hinweisen. Wenn das Zertifikat gelöscht wird, verbleiben die Zeilen in der nginx-Konfiguration und müssen manuell gelöscht werden. Das heißt, die folgenden Zeilen:

.....    

    listen 443 ssl http2; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
    if ($host = www.example.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = example.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    server_name example.com www.example.com;
    listen 80;
    return 404; # managed by Certbot

Nachdem Sie diese Zeilen aus der nginx-Konfigurationsdatei der Domäne gelöscht haben, für die Sie das Zertifikat entfernt haben SSL, führen Sie den Befehl aus nginx -t um zu prüfen, ob alles in Ordnung ist.

[root@server]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@server]# 

Jetzt können Sie den Dienst sicher neu starten nginx.

Technikbegeistert, schreibe ich seit 2006 gerne auf StealthSettings.com. Ich habe reichhaltige Erfahrung in Betriebssystemen: macOS, Windows und Linux, sowie in Programmiersprachen und Blogging-Plattformen (WordPress) und für Online-Shops (WooCommerce, Magento, PrestaShop).

So erreichen » Web Hosting » nginx cannot load certificate fullchain.pem – Certbot Fixieren
Hinterlasse einen Kommentar