Let´s Encrypt – Please add a virtual host for port 80.

Heute war es mal wieder soweit, die Aktualisierung meines SSL-Zertifikats stand an. Ich habe deshalb alle Schritte durchgeführt, wie in meinem früheren Beitrag ➡ Let´s Encrypt – Problem binding to port 80: Could not bind to IPv4 or IPv6. beschrieben. Leider hat es aber diesmal nicht funktioniert und ich habe den folgenden Fehler erhalten:

Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.

Was war das Problem?

Zuerst habe ich den Apache2 ausgeschaltet

sudo service apache2 stop

Ich habe versucht mit dem folgenden Befehl das Zertifikat zu erneuern:

sudo /etc/letsencrypt/letsencrypt-auto certonly --dry-run --agree-tos --renew-by-default --webroot-path /var/www/html/ -d meinenextcloud.de

Anschließend habe ich die Option 1 ausgewählt

How would you like to authenticate with the ACME CA?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Apache Web Server plugin (apache)
2: Spin up a temporary webserver (standalone)
3: Place files in webroot directory (webroot)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-3] then [enter] (press 'c' to cancel): 1

Bis dahin hat alles gut ausgeschaut und dann kam der Fehler:

Unable to find a virtual host listening on port 80 which is currently needed for Certbot to prove to the CA that you control your domain. Please add a virtual host for port 80.

Fehlersuche

Zuerst habe ich also mal nachgeschaut, ob ich in „/etc/apache2/sites-available/meinenextcloud.de.conf“ einen Virtual Host konfiguriert habe. Die Datei sieht folgendermaßen aus und passt.

VirtualHost *:80>
   ServerName meinenextcloud.de
   Redirect permanent / https://meinenextcloud.de/nextcloud
</VirtualHost>
 

<VirtualHost *:443>
   ServerName meinenextcloud.de/nextcloud
   Redirect permanent / meinenextcloud.de/nextcloud
    <IfModule mod_headers.c>
      Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains; preload"
    </IfModule>
</VirtualHost>

Im nächsten Schritt habe ich die Datei „/etc/apache2/sites-available/000-default-le-ssl.conf“ geprüft und dort keinen Virtual Host mit Port 80 gefunden. Deshalb habe ich ein paar Zeilen für den Port 80 eingefügt.


<IfModule mod_ssl.c>

<VirtualHost *:80>
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html
        ServerName meinenextcloud.de
</VirtualHost>

<VirtualHost *:443>
...
</VirtualHost>
</IfModule>

Nach der Anpassung hat dann auch die Aktualisierung des Zertifikats wunderbar funktioniert.

Nicht vergessen zum Schluss den Apache2 wieder anzuschalten!

sudo service apache2 start

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.