As
@zEitEr pointed out, you now have HTTP(S) ports closed.
TLS requires ports 80,443 open for a HTTP(S) challenge for issuing a certificate. and requires port 53 open (DNS) for a dns challenge. It can only do a DNS challenge if you are running the BIND9/NAMED services on your server for DNS. Doubt it will work with Cloudflare automatically as the DNS challenge inserts a TXT record in briefly to verify you have control of the DNS. Prob works better with a manual CLI TLS install as it will give you a DNS record to create at Cloudflare.
A HTTP(S) challenge requires ports 80 and/or 443 open as it will place a txt file in (usually) /var/www/html/.well-known/
As you don't have ports 80/443 open, there is a simple workaround. You'll either need 2 SSH terminals running, or SSH and access to your control panel domain:2222 to issue a certificate.
Make sure you have /var/www/html folder
then run a python simple server.
Code:
cd /var/www/html
python3 -m http.server 80 #HTTP
or use
Code:
cd /var/www/html
python3 -m http.server 443 #HTTPS
These should open one of the ports and as they re running a simple server, but only for duration of python script running.
To exit (when finished) - <CTRL> + C
Then on the other SSH manually request the certificate, or request it with the Admin Panel. If you CLI it, you'll see on the python terminal what acme certbot is doing and it can give you a clue as to what might be wrong.
If you get errors with running the python script above, check you havent got apache, nginx, or open/litespeed running.
Code:
systemctl stop httpd
systemctl stop nginx
etc...
Make sure you start them again after you've installed cert and killed python server.
Code:
systemctl restart httpd
systemctl restart nginx
Hope this helps