„Nginx“ patarimai

iki

0

„Nginx“ negali įkelti sertifikato fullchain.pem – „CertBot“ pataisymas

„Nginx“ negali įkelti sertifikato fullchain.pem – „CertBot“ pataisymas

0
„Nginx“ patarimai

klaida nginx cannot load certificate path/fullchain.pem pasirodo, kai išbandome NGINX paslaugą ištrynę sertifikatus Let’s Encrypt sukurta su Certbot.

Serveryje klaida atrodo taip:

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

Fonas eroare nginx

Ankstesniame straipsnyje parodžiau, kaip iš Certbot galite ištrinti domenus, kurie anksčiau buvo priglobti serveryje, bet šiuo metu nebėra aktyvūs. Ištrinkite „Old Domains CertBot“ sertifikatus („Encrypt“ sertifikatas).

Ištrindami aktyvių domenų SSL sertifikatus, kurie vis dar yra serveryje, komanda: sudo certbot delete, sertifikatas ištrinamas automatiškai, bet išlieka aktyvus per seansus, kol paslauga nebus paleista iš naujo nginx. Naudodami komandą nginx -t (tikrinate paslaugą) galite nustebti, kad bandymas nepavyksta dėl aukščiau nurodytos klaidos. Tačiau sprendimas yra labai paprastas.

nginx negali įkelti sertifikato
nginx negali įkelti sertifikato

Pataisyti nginx: [emerg] negali įkelti sertifikato fullchain.pem

Kai įdiegiate SSL sertifikatą Let’s Encrypt per Certbot domeno nginx konfigūracijos faile pridedamos kelios eilutės, nurodančios sertifikato egzistavimą. Ištrynus sertifikatą, eilutės lieka nginx konfigūracijoje ir turi būti ištrintos rankiniu būdu. Tai yra, žemiau esančios eilutės:

.....    

    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

Ištrynę šias eilutes iš domeno, kurio SSL sertifikatą pašalinote, nginx confg failo, paleiskite komandą nginx -t patikrinti, ar viskas gerai.

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

Dabar galite saugiai iš naujo paleisti paslaugą nginx.

„Nginx“ negali įkelti sertifikato fullchain.pem – „CertBot“ pataisymas

Galbūt jus taip pat domina...

SSH ryšio laikas baigėsi – nutrūkęs vamzdis

Užkirsti

Kaip neleisti atjungti SSH seanso su serveriu. Baigėsi jungties laikas arba nutrūko vamzdis
Skaityti toliau

Palikite atsakymą

Jūsų el. pašto adresas nebus skelbiamas. Reikalingi laukai yra pažymėti *