Let's Encrypt hinter Fritzboik

Hallo Zusammen,

da ich leider nur miserabel bis kein Englisch kann schreibe ich hier mal in Deutsch.

Ich betreibe meinen eigenen Webserver zu Hause. Mein Router/Modem ist eine Fritzbox 6591cable

Ich nutze LE schon eine ganze Weile, habe aber bei fast jedem neuen Zertifikat Probleme die Seite aufrufen zu können. Wenn ich die FB 6591c mit einem Zertifikat der FB verwende komme ich nicht auf die eingereichtete Freigabe für den Web-Server sondern bekomme eine Fehlermeldung:

„Fehler: Gesicherte Verbindung fehlgeschlagen
Beim Verbinden mit chralt.feste-ip.net trat ein Fehler auf. Eine Verwendung des Zertifikatschlüssels ist für den versuchten Arbeitsschritt unpassend.
Fehlercode: SEC_ERROR_INADEQUATE_KEY_USAGE
Die Website kann nicht angezeigt werden, da die Authentizität der erhaltenen Daten nicht verifiziert werden konnte.
Kontaktieren Sie bitte den Inhaber der Website, um ihn über dieses Problem zu informieren.Weitere Informationen…“

Der Aufruf der Seite über den Domainnamen ist nicht möglich, weder aus dem Internet noch über das (W)LAN direkt

Wenn ich das LE-Zertifikat für meine Domain auf die FB kopiere kann ich immer noch nicht über das Intgernet zugraifen, aber zumindest mit der IP (nicht dem Domainnamen!) per HTTPS funktioniert es.

Die für das Letsencrypt zuständige *.conf
/etc/apache2/sites-available/000-default-le-ssl.conf
sieht aus wie folgt, ohne Erklärungen:

<IfModule mod_ssl.c>
 <VirtualHost *:443>
 ServerAdmin webmaster@localhost
 DocumentRoot /var/www/html
 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLCertificateFile /etc/letsencrypt/live/chralt.feste-ip.net/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/chralt.feste-ip.net/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
 </VirtualHost>

Die/etc/apache2/apache2.conf sieht aus wie folgt – auch ohne Erklärungen:

 DefaultRuntimeDir ${APACHE_RUN_DIR}
PidFile ${APACHE_PID_FILE}
Timeout 300 
KeepAlive On 
MaxKeepAliveRequests 100 
KeepAliveTimeout 5 
User ${APACHE_RUN_USER} 
Group ${APACHE_RUN_GROUP}
HostnameLookups Off 
ErrorLog ${APACHE_LOG_DIR}/error.log 
LogLevel warn 
IncludeOptional mods-enabled/*.load 
IncludeOptional mods-enabled/*.conf 
Include ports.conf 
<Directory /> 
       Options FollowSymLinks 
       AllowOverride None 
       Require all denied 
</Directory> 
<Directory /usr/share> 
       AllowOverride None 
       Require all granted 
</Directory> 
<Directory /var/www/> 
       Options Indexes FollowSymLinks 
       AllowOverride None 
       Require all granted 
</Directory> 
AccessFileName .htaccess 
<FilesMatch "^\.ht"> 
       Require all denied 
</FilesMatch> 
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined 
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined 
LogFormat "%h %l %u %t \"%r\" %>s %O" common 
LogFormat "%{Referer}i -> %U" referer 
LogFormat "%{User-agent}i" agent 
IncludeOptional conf-enabled/*.conf 
IncludeOptional sites-enabled/*.conf

Wenn weitere _Ibformationen benötigt werden: bitte fragen, ich weiß leider nicht was alles relevant sein kann

Viele Grüße
chralt

1 Like

willkommen @chralt

Es tut mir leid, aber ich kann kein Deutsch schreiben oder sprechen. Versuchen Sie, meinen Kommentar mit Google Translate zu lesen

Why do you copy your certs to your router? Your Apache config looks good.

Your port 443 is not open right now. You should check the firewall settings on your router. And port 80 shows "closed" so it looks like Apache may not be running.

Your DNS has an A record for IPv4 and an AAAA record for IPv6. You should check that these are both correct. These commands will show your public IP

curl -4 ifconfig.co
curl -6 ifconfig.co

Should match your DNS:
Name:   chralt.feste-ip.net
Address: 94.114.45.111
Address: 2a02:908:1500:7:4dd0:e758:4263:cd68
3 Likes

Hallo @MikeMcQ

erst einmal Danke!

das Mit der Sprache werden wir wohl hinbekommen, allerdings ist Google nicht mein Fraund, ich nutze für Übersetzingen lieber "Babelfish"

Also: einen Fehler habe ich gefunden: die IP-Adressen meines DYNDNS-Anbieters waren falch, das habe ich nun korrigiert. Das Ergebnis ist das ich übers Internet zurückkomme, allerdings die Fehlermeldung bekomme das das Zertifikat nicht zur Domain passt. Das Zertifikat was verwendet wird ist das der FB (gültig bis 2038), und auf die Anmeleseite dieser FB wirde ich auch geleitet. Deshalb auch der Versuch das Zertifikat für die Domain auf die FB zu laden - allerdings erfolglos.

Was mir jetzt fehlt ist der Schritt diesen Verbindungsversuch auf die richtige IP zu lenken dazu ist in der FB die Portfreigabe für den Server eingerichtet: sowohl für den Port 443 als auch für den Port 80. letzterer wird ja auch benötigt um das LE-Zertifikat zu erneuern. Die Freigaben wind sowohl für IPv4 als auch für IPv6 eingerichtet.

Was mich ärgert ist das es ja alles schon funktioniert hat, aber bei jeder Aktualisierung des LE-Zertifikats tritt dieser ode rein anderer Fehler auf. :face_vomiting:

ENGLISH per babelfish:

first of all thank you! We'll probably get the language right, but Google isn't my Friend, I prefer to use "Babelfish" for translations.

So: I found an error: the IP addresses of my DYNDNS provider were wrong, I've now corrected that. The result is that I come back via the Internet, but get the error message that the certificate does not match the domain. The certificate that is used is that of the FB (valid until 2038), and I am also directed to the registration page of this FB. Therefore, the attempt to load the certificate for the domain on the FB - but unsuccessful.

What I am missing now is the step of directing this connection attempt to the correct IP. The port release for the server is set up in the FB: both for port 443 and for port 80. The latter is also required to get the LE certificate renew. The releases are set up for both IPv4 and IPv6.

What annoys me is that everything worked before, but this or another error occurs every time the LE certificate is updated. :face_vomiting:

Gruß / Greeting
chralt

1 Like

Please show:
certbot certificates

also IPv6 problem:

curl -Ii4 chralt.feste-ip.net
HTTP/1.1 301 Moved Permanently
Date: Fri, 22 Apr 2022 14:14:42 GMT
Server: Apache/2.4.38 (Debian)
Strict-Transport-Security: max-age=15552000; includeSubDomains
Location: https://chralt.feste-ip.net/
Content-Type: text/html; charset=iso-8859-1

curl -Ii6 chralt.feste-ip.net
curl: (56) Recv failure: Connection reset by peer
1 Like

Found the following certs:
Certificate Name: chralt.feste-ip.net
Domains: chralt.feste-ip.net
Expiry Date: 2022-07-10 20:37:08+00:00 (VALID: 79 days)
Certificate Path: /etc/letsencrypt/live/chralt.feste-ip.net/fullchain.pem
Private Key Path: /etc/letsencrypt/live/chralt.feste-ip.net/privkey.pem

Please show message.

1 Like

Kann keine sichere Verbindung zu chralt.feste-ip.net herstellen:

Das Zertifikat ist selbstsigniert und daher nicht vertrauenswürdig

( Cannot establish a secure connection to chralt.feste-ip.net: The certificate is self-signed and therefore not trusted

Maschinelle Übersetzung)

mit Zertifikat chralt.feste-ip.net

Organisation:
Einheit:
Land:

Fingerabdruck (SHA-256): bf:a4:f4:73:98:44:79:56:6b:d0:75:35:35:d1:4e:11:ef:e0:39:eb:8d:79:a3:66:f8:05:ad:37:8f:bc:0c:f3
Fingerabdruck (SHA-512): f9:f1:16:99:1a:ca:55:cb:bf:31:88:ec:4b:f5:8f:bb:58:76:cb:df:ab:74:0e:d5:88:ef:a6:d1:0f:a7:8a:8a:4b:15:0d:13:6c:9f:4b:90:18:24:d7:a0:25:42:04:b7:13:41:f7:0b:69:07:a0:87:4b:90:20:c7:cc:bc:79:48

Datum des Inkrafttretens: Fr. Apr. 22 13:33:16 2022 GMT
Ablaufdatum: Fr. Jan. 15 13:33:16 2038 GMT

Aussteller: chralt.feste-ip.net

Organisation:
Einheit:
Land:

IPv6-Anbindung

Native IPv4-Anbindung verwendenNative IPv6-Anbindung verwenden

Ihr Internetanbieter muss für diese Betriebsart natives IPv6 an Ihrem Anschluss unterstützen.

IPv6-Anbindung mit Tunnelprotokoll verwenden

IPv6 wird mit einem Tunnelprotokoll über eine herkömmliche IPv4-Anbindung verwendet. Für diese Betriebsart ist keine IPv6-Unterstützung durch Ihren Internetanbieter notwendig.

Verbindungseinstellungen

IP6 in der FB: (*=aktiviert)

  • Globale Adresse automatisch aushandeln
    Zunächst versucht die FRITZ!Box, die globale Adresse aus dem Router Advertisement des Anbieters zu lernen. Anschließend wird eine Adresse per DHCPv6 angefordert. Wenn das fehlschlägt, wird eine Adresse aus dem ersten /64-Subnetz des gelernten Präfixes verwendet.

  • Globale Adresse ausschließlich per DHCPv6 beziehen

Die globale IPv6-Adresse der FRITZ!Box wird ausschließlich über DHCPv6 angefordert. Nutzen Sie diese Einstellung, wenn Sie eine Internetverbindung über TV-Kabel nutzen.

Globale Adresse aus dem zugewiesenen Präfix ableiten

Zunächst versucht die FRITZ!Box, die globale Adresse aus dem Router Advertisement zu lernen. Wenn das fehlschlägt, wird eine Adresse aus dem ersten /64-Subnetz des gelernten Präfixes verwendet.

Statische Einstellungen nutzen

DHCPv6 Rapid Commit verwenden

IP6 in the FB: (* = activated)

  • Global address negotiate automatically First of all, the FRITZ! Box tries to learn the global address from the router advertisement of the provider. Subsequently, an address is requested via DHCPv6. If this fails, an address from the first / 64 subnet of the learned prefix will be used.

  • Global address exclusively via DHCPv6
    The global IPv6 address of the FRITZ! Box is only requested via DHCPv6. Use this setting when using an Internet connection over a TV cable.

First, enter the FRITZ! Box global address from the assigned prefix. If this fails, an address from the first / 64 subnet of the learned prefix will be used. Static settings use DHCPv6 Rapid Commit Maschinelle Übersetzung

Hallo,

Der DynDNS für die IPv6 war falsch, nach (erneuter) Korrektur funktioniert der Zugriff über

https://chralt.feste-ip.net/

aus dem (W)LAN wieder :rofl: aber aus dem Mobilfunknetz (noch) nicht.

Hello, The DynDNS for the IPv6 was wrong, after (re)correction, access via https://chralt.feste-ip.net/ from the (W)LAN works again :rofl: but not (yet) from the mobile network

Gruß und Danke!!!
Greetings and thanks!!!

chralt

I can't reach your domain with IPv4 or IPv6. It looks like your firewall is blocking all requests:

PORT    STATE    SERVICE
80/tcp  filtered http
443/tcp filtered https
2 Likes

Hallo,

ich habe mich ein paar Tage nicht kümert, auch weil es per VPN auch von außen funktioniert.

Da das aber keine Dauerlösung sein soll und andere Zugriffsberechtigte keinen VPN-Zugang haben ....

Was ich nicht verstehe ist warum beide Ports ausgefiltert sind. beim Port 80 ist mir das ziemlich egl, aber die Zertifikatserneuerung raucht ihn wohl - warum auch immer.

Ich jhabe auf der FB natürlich die Freigaben eingerichtet, sonst würde es vermtl. auch aus dem (W)LAN nicht funktionieren.

Was die Feuerwand betrifft: der Server läuft seit geraumer Zeit auf einer Proxnmoxumgebung, ich habe die Feuerwände sowohl für den eigentlichen Proxmox als auch für den Web-Server testweise ausgestellt, eider ohne Erfolg.

Was ich in der FB noch machen kann weiß ioh leider nicht. :roll_eyes: Ich erinnere mich daran das es auf der FB rendwo einen Kasten gab in dem man die Server-Adresse(n) eintragen konnte,auf der jetzt für den Internetzugang zuständigen FB 6591cable finde ich diese Einstellung nicht wieder. Auf der FB7490 finde ich die Einstellung leider auch nicht mehr weil sie nur noch als Router hinter der FB6591cable fungiert und daher nicht alle Einstellungen mehr hat/benötigt.

im Übrigen hat der ganze Krempel bis zur letzten Aktualisierung des Zertifikates ja funktioniert.

Englisch by Babelfish:
Hello, I didn't bother for a few days, also because it also works from the outside via VPN. But since that shouldn't be a permanent solution and other authorized users don't have VPN access....

What I don't understand is why both ports are filtered out. I don't really care about port 80, but the certificate renewal smokes it - for whatever reason. I jhabe set up the releases on the FB, of course, otherwise it would vermtl. do not work from the (W)LAN either.

Regarding the firewall: the server has been running on a Proxnmox environment for quite some time, I have tested the firewalls for both the actual Proxmox and the web server, without success. Unfortunately, I don't know what else I can do in FB. :roll_eyes:

I remember that there was a box on the FB rendwo in which you could enter the server address(es), on the FB 6591cable, which is now responsible for Internet access, I can't find this setting again. Unfortunately, I can no longer find the setting on the FB7490 because it only acts as a router behind the FB6591cable and therefore no longer has/needs all the settings.

Incidentally, all the junk worked until the last update of the certificate.
greetings chralt

Gruß
chralt

Hallo,

hab's gefunden.

funktioniert offensichtlich wieder.

noch mal herzlichen Dank!

Englisch per Babelfish:
Hello, found it. apparently working again.

Thank you again!

chralt

2 Likes

Hallo,

tja, war wohl nix - von außen doch nicht erreichber

Well, it was probably nothing - not accessible from the outside.

Gruß / Greeting
chralt