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.

Gib mir gerne einen Kaffee ☕ aus!

Wenn dir meine Beiträge gefallen und geholfen haben, dann kannst du mir gerne einen Kaffee ☕ ausgeben.

PayPal Logo


liberapay.com/strobelstefan.org


Kaffee via Bitcoin

bc1qfuz93hw2fhdvfuxf6mlxlk8zdadvnktppkzqzj


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

Photo by Jordan Harrison on Unsplash

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.