What is the difference between default-ssl.conf and what is 000-default-le-ssl.conf?

Solution 1:

The 0s at the front of the file name simply force an order when a directory is scanned and the results are processed one by one.

With apache, the first virtual host read/processed is the one clients are sent to if they connect requesting a host name that your server isn't configured to serve up.

The default-le configuration sounds as if it is the one that LetsEncrypt might use for authentication/confirmation, but this is simply a wild guess based on the presence of le in the filename. To know for sure you should examine the contents, and post if you have questions.

As to defaults, etc. you can share just about all of the configuration information, or at least the parent directories of file paths, etc.

Here's a template I use, replace DOMAIN and YOURIP as appropriate.

<VirtualHost *:80>
  ServerName DOMAIN
  ServerAlias www.DOMAIN
  RewriteEngine on
  RewriteRule ^/(.*)$ https://www.DOMAIN/$1 [R,L]
</VirtualHost>
<VirtualHost YOURIP:443>
    ServerName DOMAIN
    ServerAlias www.DOMAIN
    ServerAdmin webmaster@DOMAIN
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/DOMAIN/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/DOMAIN/privkey.pem
    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
    CustomLog ${APACHE_LOG_DIR}/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
    DocumentRoot /var/www-DOMAIN
    <directory /var/www-DOMAIN>
        Options All
                AllowOverride All
                Require all granted
    </directory>
    ErrorLog ${APACHE_LOG_DIR}/ssl-DOMAIN-error.log
    CustomLog ${APACHE_LOG_DIR}/ssl-DOMAIN-access.log combined
</VirtualHost>