nginx cannot load certificate fullchain.pem – Certbot Fix

fejlen nginx cannot load certificate path/fullchain.pem vises, når vi tester NGINX-tjenesten efter sletning af certifikater Let’s Encrypt genereret med Certbot.

På serveren ser fejlen sådan ud:

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-baggrundsfejl

I en tidligere artikel viste jeg, hvordan du kan slette fra Certbot de domæner, der tidligere var hostet på serveren, men som i øjeblikket ikke længere er aktive. Slet gamle domæner Certbot certificates (Lad os kryptere certifikat).

Når du sletter certifikater SSL for aktive domæner, som stadig er hostet på serveren, ved kommando: sudo certbot delete, certifikatet slettes automatisk, men det forbliver aktivt i sessioner indtil restartserviceområde nginx. Med kommandoen nginx -t (test af tjenesten) kan du blive overrasket over, at testen mislykkes med ovenstående fejl. Løsningen er dog meget enkel.

nginx cannot load certificate
nginx cannot load certificate

Rettet nginx: [emerg] kan ikke indlæse certifikatet fullchain.pem

Når du installerer et certifikat SSL Let’s Encrypt af Certbot, i konfigurationsfilen for nginx for domænet, tilføjes et par linjer, der angiver eksistensen af ​​certifikatet. Når certifikatet slettes, forbliver linjerne i nginx config og skal slettes manuelt. Det vil sige linjerne 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

Efter at have slettet disse linjer fra nginx confg-filen for det domæne, som du fjernede certifikatet for SSL, udfør kommandoen nginx -t for at tjekke 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]# 

Nu kan du restarttjenesten er sikker nginx.

Hvordan man » web Hosting » nginx cannot load certificate fullchain.pem – Certbot Fix

Lidenskabelig med teknologi, jeg kan godt lide at teste og skrive tutorials om operativsystemer macOS, Linux, Windows, om WordPress, WooCommerce og konfigurer LEMP webservere (Linux, NGINX, MySQL og PHP). jeg skriver videre StealthSettings.com siden 2006, og et par år senere begyndte jeg at skrive på iHowTo.Tips tutorials og nyheder om enheder i økosystemet Apple: iPhone, iPad, Apple Watch, HomePod, iMac, MacBook, AirPods og tilbehør.

Efterlad en kommentar