nginx kan geen certificaat fullchain.pem laden – Certbot fix

fout nginx cannot load certificate path/fullchain.pem verschijnt wanneer we de NGINX-service testen na het verwijderen van certificaten Let’s Encrypt gegenereerd met Certbot.

Op de server verschijnt de fout als volgt:

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

Achtergrond eroare nginx

In een vorig artikel liet ik zien hoe je uit Certbot de domeinen kunt verwijderen die in het verleden op de server werden gehost maar die momenteel niet meer actief zijn. Old Domains CertBot Certificaten verwijderen (laten we certificaat coderen).

Bij het verwijderen van SSL-certificaten voor actieve domeinen, die nog steeds op de server worden gehost, via een opdracht: sudo certbot delete, wordt het certificaat automatisch verwijderd, maar blijft het actief in sessies totdat de service opnieuw wordt gestart nginx. Met het commando nginx -t (de service testen) zal het je misschien verbazen dat de test mislukt met de bovenstaande fout. De oplossing is echter heel eenvoudig.

nginx kan het certificaat niet laden
nginx kan het certificaat niet laden

Fix nginx: [emerg] kan certificaat fullchain.pem niet laden

Wanneer u een SSL-certificaat installeert Let’s Encrypt via Certbot worden in het configuratiebestand van nginx voor het domein een paar regels toegevoegd die het bestaan ​​van het certificaat aangeven. Wanneer het certificaat wordt verwijderd, blijven de regels in de nginx-configuratie en moeten ze handmatig worden verwijderd. Dat wil zeggen, de onderstaande regels:

.....    

    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

Nadat u deze regels heeft verwijderd uit het nginx-configuratiebestand van het domein waarvoor u het SSL-certificaat hebt verwijderd, voert u de opdracht uit nginx -t om te controleren of alles in orde is.

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

Nu kunt u de service veilig opnieuw starten nginx.

Gepassioneerd over technologie schrijf ik met plezier op StealthSetts.com beginnend met 2006. Ik heb een rijke ervaring in besturingssystemen: macOS, Windows en Linux, maar ook in programmeertalen en blogplatforms (WordPress) en voor online winkels (WooCommerce, Magento, Presashop).

Home Uw bron van IT -tutorials, nuttige tips en nieuws. nginx kan geen certificaat fullchain.pem laden – Certbot fix
Leave a Comment