Certbot failed to authenticate some domains (authenticator: apache)

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. crt.sh | example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is: ed1c54a.online-server.cloud

I ran this command: sudo certbot --apache

It produced this output:

Certbot failed to authenticate some domains (authenticator: apache). The Certificate Authority reported these problems:
Domain: www.ed1c54a.online-server.cloud
Type: dns
Detail: DNS problem: NXDOMAIN looking up A for www.ed1c54a.online-server.cloud - check that a DNS record exists for this domain; DNS problem: NXDOMAIN looking up AAAA for www.ed1c54a.online-server.cloud - check that a DNS record exists for this domain

Domain: ed1c54a.online-server.cloud
Type: unauthorized
Detail: 217.160.250.79: Invalid response from http://ed1c54a.online-server.cloud/.well-known/acme-challenge/7TrtrJeSMJKb3_s9kMx-3PqVCyX3ZwG2BHJXSC1SCI8: 400

Hint: The Certificate Authority failed to verify the temporary Apache configuration changes made by Certbot. Ensure that the listed domains point to this Apache server and that it is accessible from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

My web server is (include version): Apache/2.4.52 (Ubuntu)

The operating system my web server runs on is (include version): Ubuntu 22.04.3 LTS

My hosting provider, if applicable, is: N/A (My uni)

I can login to a root shell on my machine (yes or no, or I don't know): Yes

I'm using a control panel to manage my site (no, or provide the name and version of the control panel): PUTTY Windows newest version

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot): certbot 1.21.0

This is my webserver config:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName ed1c54a.online-server.cloud
    ServerAlias www.ed1c54a.online-server.cloud
    Redirect permanent "/" "https://www.ed1c54a.online-server.cloud/"
    DocumentRoot /var/www/ed1c54a.online-server.cloud
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
    SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key


</VirtualHost>

<VirtualHost *:443>
    ServerName ed1c54a.online-server.cloud
    ServerAlias www.ed1c54a.online-server.cloud
    # enable HTTP/2, if available
    Protocols h2 http/1.1

    # HTTP Strict Transport Security (mod_headers is required) (63072000 second>
    Header always set Strict-Transport-Security "max-age=63072000"

    # SSL Configuration
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
    SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key

  # Other Apache Configuration

</VirtualHost>

SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite          ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA2>
SSLHonorCipherOrder     off
SSLSessionTickets       off

SSLUseStapling On
SSLStaplingCache "shmcb:logs/ssl_stapling(32768)"

With regard to the www subdomain: please see the provided error message:

For the other domain: please surf to the challenge URL provided in the error message and you'd see the following:

Bad Request

Your browser sent a request that this server could not understand.
Reason: You're speaking plain HTTP to an SSL-enabled server port.
Instead use the HTTPS scheme to access this URL, please.

You need to fix your webserver configuration.

1 Like

My professor gave me a domain name connected to an IP Address, so I don't know why the DNS problem comes up.

What do I need to fix in the webserver config? Should I post the file, so you can help me?

You have SSLEngine on on the port 80 virtual host. That doesn't make much sense. Port 80 is for HTTP, not HTTPS.

3 Likes

I guess your professor may be "testing you" - LOL

3 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.