Nginx non è in grado di caricare il certificato fullchain.pem – Correzione certbot

errore nginx cannot load certificate path/fullchain.pem appare quando testiamo il servizio NGINX dopo aver eliminato i certificati Let’s Encrypt generato con Certbot.

Nel server, l'errore appare così:

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

Sfondo eroare nginx

In un precedente articolo ho mostrato come eliminare da Certbot i domini che in passato erano ospitati sul server ma che attualmente non sono più attivi. Elimina i certificati CERTBOT di Old Domains (certificato di crittografia).

Quando si eliminano i certificati SSL per i domini attivi, che sono ancora ospitati sul server, tramite il comando: sudo certbot delete, il certificato viene eliminato automaticamente, ma rimane attivo nelle sessioni fino al riavvio del servizio nginx. Con il comando nginx -t (testare il servizio) potresti rimanere sorpreso dal fatto che il test fallisca con l'errore sopra riportato. Tuttavia, la soluzione è molto semplice.

nginx non può caricare il certificato
nginx non può caricare il certificato

Correzione di nginx: [emerg] non può caricare il certificato fullchain.pem

Quando installi un certificato SSL Let’s Encrypt prin Certbot, in fisierul de configurare al nginx pentru domeniu, se adauga cateva linii care indica existenta certificatului. Atunci cand certificatul este sters, liniile raman in nginx config si trebuie sterse manual. Adica liniile de mai jos:

.....    

    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

Dupa ce stergeti aceste linii din fisierul confg nginx al domeniului pentru care ati eliminat certificatul SSL, executati comanda nginx -t pentru a verifica daca totul este ok.

[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]# 

Acum puteti restarta in siguranta serviciul nginx.

Appassionato di tecnologia, scrivo con piacere su stealthsetts.com a partire dal 2006. Ho una ricca esperienza nei sistemi operativi: macOS, Windows e Linux, ma anche nei linguaggi di programmazione e nelle piattaforme di blog (WordPress) e per i negozi online (WooCommerce, Magento, Presashop).

Casa La tua fonte di esso tutorial, suggerimenti utili e notizie. Nginx non è in grado di caricare il certificato fullchain.pem – Correzione certbot
Lascia un commento