OptimalBits / redbird

A modern reverse proxy for node
BSD 2-Clause "Simplified" License
4.39k stars 278 forks source link

Unable to renew Let's Encrypt certificates anymore #245

Open runekm opened 4 years ago

runekm commented 4 years ago

Renewing Let's Encrypt certificates have started failing here with version 0.9.1 of Redbird. I also tried upgrading to Redbird version 0.10.0, but that didn't solve the problem. I also tried deleting the old certificates from the /certs folder, and then restarted Redbird. When I do that, the certificate folder is recreated with ./well-known/acme-challenge/test-[some random string]-0 inside it. But the process stops there, and none of the .pem files are created.

Any idea what is the problem?

manast commented 4 years ago

no idea, it should be working. Did you try with the simplest setup and go from there?

runekm commented 4 years ago

My setup is quite simple. It looks like this:

var proxy = require('redbird')({
    port: 80,
    xfwd: true,
    bunyan: false,
    letsencrypt: {
        path: __dirname + "/certs",
        port: 9999
    },
    ssl: {
        http2: true,
        port: 443
    }
});

proxy.register("mydomain.com", "http://localhost:3000", {
    ssl: {
        letsencrypt: {
            email: "name@email.com",
            production: true
        }
    }
});

This has worked flawlessly for a couple of years, before I suddenly realized that the certificate wasn't renewed anymore. I spent some time trying to debug the problem. But I find it a bit hard to debug, so I didn't come far.

My temporary solution - which I might make permanent, if the problem persists - is to use a certificate created with Certbot instead. Certbot created the certificate without any problems.