Hello everyone,

I’ve been trying to set up a Mumble voice chat server on my home network using a Debian server. As part of the setup process, I need to obtain an SSL certificate from Let’s Encrypt for secure HTTPS access to the server. However, I’m encountering an error when running the Certbot client to request the certificate.

Here’s the command I’m running:

sudo certbot certonly -d mydomain.com

But I get the following error message:

Timeout during connect (likely firewall problem)

I’ve checked my firewall rules and confirmed that I’ve opened port 80 as required for the Let’s Encrypt verification process. Here’s the relevant rule in my ufw configuration:

80/tcp ALLOW Anywhere

Despite this, I’m still getting the timeout error. Has anyone else encountered this issue before? What steps should I take to troubleshoot further?

Thanks in advance for any advice!

  • qprimed@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    8 months ago

    are you actually running a web server on that host? iirc, certbot will place a temporary token to be served by your web server (Apache, etc.) to show that you actually control the domain you are requesting a cert for.

    I switched to DNS based retrieval as soon as let’s encrypt offered it, so its been years since I retrieved certs via http.

      • qprimed@lemmy.ml
        link
        fedilink
        English
        arrow-up
        0
        ·
        8 months ago

        if you are using http cert retrieval, certbot needs a place put the temp. token to authenticate your contrrol of the domain your are creating a certificate for. usually that will be the same webserver you want to serve the certificate from.

        if you are not running an actual weberver on port 80 that certbot can insert a token for, certbot cannot complete.

        this is, of course, in addition to other possible issues such as ISP port blocking - but without a web server listening on TCP/80, you will have to use other authorization methods (like DNS) to generate a cert.

  • Kid_Thunder@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    8 months ago

    Sounds like you have nothing listening on port 80 that resolves for your domain for Let’sEncrypt to verify that you own the domain. You need a webserver listening on port 80 and that Certbot can access if you’re using the http method.

    Basically you’re forwarding traffic to port 80 but there’s nothing on port 80.

  • witten@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    8 months ago

    Since this is on a home network, have you also forwarded port 80 from your router to your machine running certbot?

    This is one of the reasons I use the DNS challenge instead… Then you don’t have to route all these Let’s Encrypt challenges into your internal network.

  • epyon22@programming.dev
    link
    fedilink
    English
    arrow-up
    0
    ·
    8 months ago

    Many home ISPs block port 80 and 25. You should be able to Google that and confirm. If that’s the case you’ll have to use a different method.

    • PLAVAT🧿S@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 months ago

      In this situation certbot is using 80 for a challenge/response test to have the host validate itself as the source.