Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. https://crt.sh/?q=example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.
From the "Connection Refused" message that is displayed below the URL you've partially redacted, it looks like your apache server is not listening to port 80, and using a different port?
If so, you need to open port 80 on your firewall (and forward ports if applicable with your router / network configuration), and modify the Apache site configuration to listen to port 80.
Once you're issued a certificate, you can switch back to your standard port. The same issue of "Connection Refused" will appear when you attempt to renew the certificate, though. You'll need to repeat the port alterations each time the certificate needs to be renewed.
Now, there is the DNS-01 validation method that requires you to add a TXT DNS record to your domain name. Instead of using a file challenge validation on your server, a DNS query will be made to compare the token in the TXT DNS record on your domain with what Certbot provided. This is only supported on a select number of domain name providers.
More information: https://certbot.eff.org/docs/using.html?highlight=dns#dns-plugins.
A reasonable thought, but the last line is not technically true. Automated DNS changes of TXT records are only supported by certain providers. You can always use --manual --preferred-challenges dns then manually change the TXT record(s). You can instead use scripts with --manual-auth-hook and --manual-cleanup-hook to effectively build your own DNS plugin if your DNS provider provides a DNS update API that certbot currently doesn't support natively.
If your ISP allows port 53 (TCP & UDP), you could permanently delegate the DNS challenges to your own IP (even to DDNS IPs - via CNAME).
Which means when your DSP (DNS Service Provider) doesn't support API updates, you could do them yourself - (without having to be a DNS expert) with something like: ACME-DNS
READERS: Get involved and participate: If you read something you like, then click to like it