Certbot unable to locate virtual host

October 13, 2019 155 views
Ubuntu 18.04

My apache2/sites-available/mydomain.com.conf file
<VirtualHost *:80>
ServerAdmin webmaster@mydomain.com
ServerName mydomain.com
ServerAlias www.mydomain.com
DocumentRoot /var/www/mydomain
ErrorLog ${APACHELOGDIR}/error.log
CustomLog ${APACHELOGDIR}/access.log combined
</VirtualHost>

When I run the following:
sudo certbot –apache -d mydomain.com -d www.mydomain.com

I get the following output:
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Cert not yet due for renewal

You have an existing certificate that has exactly the same domains or certificate name you requested and isn’t close to expiry.
(ref: /etc/letsencrypt/renewal/mydomain.com.conf)

What would you like to do?


1: Attempt to reinstall this existing certificate
2: Renew & replace the cert (limit ~5 per 7 days)


Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel): 1
Keeping the existing certificate
No vhost exists with servername or alias of mydomain.com. No vhost was selected. Please specify ServerName or ServerAlias in the Apache config.
No vhost selected

IMPORTANT NOTES:

  • Unable to install the certificate
  • Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/mydomain.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/mydomain.com/privkey.pem Your cert will expire on 2020-01-11. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the “certonly” option. To non-interactively renew all of your certificates, run “certbot renew”

What have I done wrong and how can I resolve it?

Thanks

1 Answer

Hey, @damianyates

Can you check if the saved SSL’s fullchain in /etc/letsencrypt/live/mydomain.com/fullchain.pem is the one you need?

If that is correct you can copy the files to the directory where your Apache conf SSL block is checking against.

  • I was only able to access that directory as root.
    sudo would not grant me access to it.

    Could this be the problem?

    • Figured it out.
      I made a change to the conf file and needed to execute sudo a2ensite your_domain.conf for the changes to register in apache.

      Thank you all for your assistance in resolving this snafu.

Have another answer? Share your knowledge.