nginx kan ikke laste sertifikat fullchain.pem – CertBot Fix

feil nginx cannot load certificate path/fullchain.pem vises når vi tester NGINX-tjenesten etter å ha slettet sertifikater Let’s Encrypt generert med Certbot.

På serveren ser feilen slik ut:

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

Bakgrunn eroare nginx

I en tidligere artikkel viste jeg hvordan du kan slette fra Certbot domenene som var vert på serveren tidligere, men som for øyeblikket ikke lenger er aktive. Slett gamle domener Certbot Certificate (Let’s Encrypt Certificate).

Når du sletter SSL-sertifikater for aktive domener, som fortsatt ligger på serveren, med kommando: sudo certbot delete, slettes sertifikatet automatisk, men det forblir aktivt i økter til tjenesten startes på nytt nginx. Med kommandoen nginx -t (testing av tjenesten) kan du bli overrasket over at testen mislykkes med feilen ovenfor. Løsningen er imidlertid veldig enkel.

nginx kan ikke laste sertifikatet
nginx kan ikke laste sertifikatet

Fiks nginx: [emerg] kan ikke laste sertifikatet fullchain.pem

Når du installerer et SSL-sertifikat Let’s Encrypt gjennom Certbot, i konfigurasjonsfilen til nginx for domenet, legges det til noen få linjer som indikerer eksistensen av sertifikatet. Når sertifikatet slettes, forblir linjene i nginx-konfigurasjonen og må slettes manuelt. Det vil si linjene nedenfor:

.....    

    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

Etter å ha slettet disse linjene fra nginx confg-filen til domenet du fjernet SSL-sertifikatet for, kjør kommandoen nginx -t for å sjekke om alt er 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]# 

Nå kan du trygt starte tjenesten på nytt nginx.

Lidenskapelig om teknologi skriver jeg med glede på stealthsetts.com som starter med 2006. Jeg har en rik opplevelse innen operativsystemer: macOS, Windows og Linux, men også innen programmeringsspråk og bloggplattformer (WordPress) og for nettbutikker (WooCommerce, Magento, Presashop).

Hjem Din kilde til IT -opplæringsprogrammer, nyttige tips og nyheter. nginx kan ikke laste sertifikat fullchain.pem – CertBot Fix
Legg igjen en kommentar