Nextcloud extern erreichbar machen mit myfritz als ddns

Support intro

Sorry to hear you’re facing problems. :slightly_frowning_face:

The community help forum (help.nextcloud.com) is for home and non-enterprise users. Support is provided by other community members on a best effort / “as available” basis. All of those responding are volunteering their time to help you.

If you’re using Nextcloud in a business/critical setting, paid and SLA-based support services can be accessed via portal.nextcloud.com where Nextcloud engineers can help ensure your business keeps running smoothly.

Getting help

In order to help you as efficiently (and quickly!) as possible, please fill in as much of the below requested information as you can.

Before clicking submit: Please check if your query is already addressed via the following resources:

(Utilizing these existing resources is typically faster. It also helps reduce the load on our generous volunteers while elevating the signal to noise ratio of the forums otherwise arising from the same queries being posted repeatedly).

Bekomme kein Zertifikat von let’sencrypt

Ich versuche zum ersten Mal eine nexcloud auf einem raspi5 einzurichten, ich habe mein myfritz-Adresse angegeben.

Automatic signed SSL certificates. Let’s Encrypt is a free, automated, and open Certificate Authority.

Internet access is required for this configuration to complete Both ports 80 and 443 need to be accessible from the internet Your certificate will be automatically renewed every month

Active
Domain
undefined ----
Additional domain
undefined ----
Email
undefined ----

[ letsencrypt ] (Wed Oct 1 16:26:34 CEST 2025)
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Requesting a certificate for xxxxx.myfritz.net

Certbot failed to authenticate some domains (authenticator: webroot). The Certificate Authority reported these problems:
Domain: xxxxx.myfritz.net
Type: unauthorized
Detail: 84.119.157.67: Invalid response from http://xxxxx.myfritz.net/.well-known/acme-challenge/1qLY_6kK3m2IvxiL3dn_QJA3El2fqHqPPmkcgEoWLz4: 400

Hint: The Certificate Authority failed to download the temporary challenge files created by Certbot. Ensure that the listed domains serve their content from the provided --webroot-path/-w and that files created there can be downloaded from the internet.

Some challenges have failed.
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

Ich muss noch erwähnen, dass die Portfreigabe extern für http in der Fritzbox nicht über Port 80 läuft, sondern einen anderen, weil der 80 schon belegt ist. Muss man das vielleicht auch noch irgendwo ändern?

In der Fritzbox ist im Feld “MyFritz-Konto” auch ein Häkchen aktiviert bei letsencrypt

“Sicherheitshinweise im Browser

Wenn Sie aus dem Internet auf die Benutzeroberfläche Ihrer FRITZ!Box zugreifen, wird Ihnen eventuell ein Sicherheitshinweis im Browser angezeigt. Sie können ein kostenloses vertrauenswürdiges Zertifikat von letsencrypt.org verwenden, mit dem sich Ihre FRITZ!Box im Internet ausweisen kann. Dadurch erscheinen im Browser keine Sicherheitshinweise mehr.

Zertifikat von letsencrypt.org verwenden (empfohlen)”

Außerdem habe ich “Force HTTPS” im nextcloud panel schonmal deaktiviert.

Danke für jede Hilfe,

Willi

Und das ist nicht möglich. Für Let’s Encrypt muss TCP 80 genutzt werden. Schönen Abend noch.

2 Likes

wenn du mehrere Dienste über Port 80 betreiben möchtest wird ein reverse proxy empfohlen. falls du bereits Docker verwendest, bietet sich NPM an.

kannst du vielleicht IPv6 nutzen? Ich habe auch grad ein problem with Let’s Encrypt, Fritz und haupt wahrscheinlich DS-Lite.

ja die SIP Videotürklingel nutzt Port 80. Ich habe keine Ahnung wie man Docker nutzt und was reverse proxy bedeutet geschweige denn das ich jetzt eine Anleitung googlen konnte wie man das umsetzt. Nextcloud selber habe ich aber durch nachmachen als Docker installiert!

Danke für deine Rückmeldung, leider unterstützt das myfritz ddns kein ipv6.

ddns nicht, aber die IPv6 addressen sind einzigartig Weltweit und dann brauchst du kein ddns, aber, das es einfacher zu errinern ist nutzt Mann DNS - AAAA rekord.

Hier ist der Global Unicast Address das verwendet kann.

das stimmt nicht!
meine Fritte hat ipv6 im Myfritz DDNS:

; <<>> DiG 9.20.11-4-Debian <<>> -t AAAA n0sv7ljf1yo342ql.myfritz.net. +answer
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 51494
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;n0sv7ljf1yo342ql.myfritz.net.  IN      AAAA

;; ANSWER SECTION:
n0sv7ljf1yo342ql.myfritz.net. 49 IN     AAAA    2a02:1210:22b4:1c00:2e91:abff:fec2:dc5b

;; Query time: 72 msec
;; SERVER: 8.8.8.8#53(8.8.8.8) (UDP)
;; WHEN: Wed Oct 01 21:35:49 CEST 2025
;; MSG SIZE  rcvd: 85

das ist nicht schlimm, aber man sollte einiges lernen wenn man Sachen selbt betreiben möchte 101: Self-hosting information for beginners

Doch, tut es. Selbstverständlich kann man eine Fritte (also deren WAN-Interface) auch per MyFritz-Adresse und über IPv6 erreichen.

Das Problem ist ein anderes. Bei IPv6 braucht es kein NAT. Man erreicht Geräte im LAN einer Fritte (oder eines anderen beliebigen Routers) also nicht über die IPv6-Adresse des WAN’s (wie bei IPv4 und NAT)) sondern über die IPv6-Adresse des Gerätes im LAN.

Man muss also dafür dann einen DynDNS-Anbieter nutzen, der nicht nur auf die IPv4- und IPv6-Adressen des WAN-Interfaces verweisen kann, sondern auch auf IPv6-Adressen im LAN. Im Idealfall nutzt man dann dazu Sub-Subdomains (sofern man keine eigene Domain gemietet hat) wie z.B. Nextcloud.MeineDynDNS.DynDNS-AnbieterA.de.

Diese Adresse (Nextcloud.MeineDynDNS.DynDNS-AnbieterA.de) löst dann auf zur IPv4 am WAN der Fritte (dafür wird NAT genutzt) und zur zur IPv6-Adresse, die dem Nextcloud-Server gehört (braucht kein NAT). Weil da dann kein NAT gebraucht wird, kann auch Port 80 verwendet werden, auch wenn dieser bereits anderweitig belegt ist. Let’s Encrypt bevorzugt sowieso IPv6, sofern ein FQDN zu IPv4 und IPv6 aufgelöst werden kann. Daher würden die erforderlichen Zertifikate dann über die IPv6-Verbindung und TCP 80 erstellt werden, auch ohne eigenen Proxy im LAN.

Du hast ernsthaft eine Videotürklingel am Start, die vom WAN (Internet) über einen offenen Port TCP80 ins LAN deiner Fritte will? Das kann ich fast nicht glauben, denn wozu sollte eine Videotürklingel das brauchen!? Okay, vielleicht damit du vom Büro in der Stadt aus gucken kannst wer im Dorf an deiner Haustür klingelt. Da sollte aber niemals über Port 80 (also unverschlüsselt ohne https) gehen. Schmeiß den China-Gammel der so etwas macht auf den Elektroschrott. Das ist ein eklatantes Sicherheitsrisiko. Wenn man so etwas überhaupt macht, dann nur per https (TCP 443) und nicht über http (TCP 80).

Noch besser aber man braucht für die Kamera und so etwas gar keine offenen Ports aus dem WAN und richtet sich stattdessen Wireguard ein und nutzt einen Wireguard-Tunnel um z.B. vom Büro das Bild der Videotürklingel zu sehen.

1 Like

Hallo Adelaar, danke für deine Rückmeldung. Dir auch. Das wir ein sehr guter Hinweis, den hat so ähnlich auch ein anderer gegeben, also die Videotürklingen hat nun gar keine Portfreigabe nach außen mehr und die Handys mit Fritzphone app erhalten außerhalb des heimischen WLANs nun den AV Stream, wenn sie über wireguard “zuhause” sind. Total cool, dass ihr direkt eine Sicherheitslücke erkannt habt und mich damit cor schaden bewahrt habt!

ABER damit stelle ich mir doch nun die Frage, warum die Nextcloud über Port 80 gehen will!?! Also ich als totaler Laie: Wie bekomme ich die nextcloud dazu - um von außen erreichbar zu sein - das myfritz DDNS zu verwenden, ein Sicherheitszertifikat zu erhalten und nicht Port 80 zu verwenden???

Übrigens ist die nextcloud auf dem Pi5 mittels Docker installiert.

Okay, vielleicht damit du vom Büro in der Stadt aus gucken kannst wer im Dorf an deiner Haustür klingelt.

Ja richtig, genau darum gehts, wenn es ande Haustür klingelt, klingelt meine fritzphoneapp am Handy und ich sehe, egal wo ich bin wer da steht und kann mit ihm sprechen. Ich danke dir erstmal für den Hinweis, es ist eine 800€ Klingelanlage für 4 Haushalte von Jakobi Kommunikationssysteme GmbH. Ich werde mal schauen, ob an dieser die Ports womöglich änderbar sind.

Damit wirfst du mir abe nun die Frage auf, warum nextcloud auch über den Port 80 möchte, wenn der doch unsicher ist?!?

Nachtrag: Auf deine Nachricht hin bin ich das Thema Türklingel angegangen und so wie du gesagt hast, war die Portfreigabe 80 unnötig. Das Videosignal wird noch von der Türklingel zum einen über einen anderen als internen Port80 in Heimnetzt gegeben, und zum underen ist die Freigabe auf den externen Port 80 nun komplett aus. Stattdessen also nor lokaler Zugriff und von außen via wireguard. Was hältst du davon?

Mir geht es zum Thema IPv4 bzw 4 so oder so nur darum, dass ich die kostenlose Lösung mit dem myfritz ddns nutzen kann.

Okay, bei dem mutmaßlichen China-Gammel hatte ich mich geirrt. Der Fehler bestand nicht im Kauf von billigem und unsicheren Kram bei T€MU, sondern der Fehler hatte Finger und Augen an/auf Bildschirm und Tastatur un bestand in fehlendem Sachverstand zur korrekten Konfiguration.

Die Nextcloud will eben genau NICHT über Port 80 gehen, sondern verschlüsselt über https und daher TCP-Port 443 !!!
Genau deswegen sollen ja die Zertifikate per Let’s Encrypt erzeugt werden, denn solche Zertifikate sind Voraussetzung für die Verschlüsselung über https. Dafür musst du nun zunächst die Zertifikate über TCP-Port 80 erzeugen.

Ein wenig Einlesen in die Thematik/Problematik sollten man sich schon, bevor man solche Projekte angeht, ganz unabhängig davon, ob es nun eine Nextcloud oder eine Türklingel ist, denn Fehlkonfigurationen aus Unwissenheit führen fast immer zu oft nicht unerheblichen Sicherheitsrisiken.

Nachtrag / Ergänzung:

An deiner Stelle würde ich nicht den MyFritz-DynDNS nehmen. Diese kryptischen Adressen kann sich ja keiner merken. Da gibt es weit bessere Alternativen. Im deutschsprachigen Raum mit passendem Supportforum für totale Laien wie dich z.B. IPv64.net | Free DynDNS2 Service und das zugehörige Forum v64-Forum

“Okay, bei dem mutmaßlichen China-Gammel hatte ich mich geirrt. Der Fehler bestand nicht im Kauf von billigem und unsicheren Kram bei T€MU, sondern der Fehler hatte Finger und Augen an/auf Bildschirm und Tastatur un bestand in fehlendem Sachverstand zur korrekten Konfiguration.”

Haha ist das nicht in 9 von 10 Fällen so?

”Ein wenig Einlesen in die Thematik/Problematik sollten man sich schon, bevor man solche Projekte angeht, ganz unabhängig davon, ob es nun eine Nextcloud oder eine Türklingel ist, denn Fehlkonfigurationen aus Unwissenheit führen fast immer zu oft nicht unerheblichen Sicherheitsrisiken.”

Richtig, genau das versuche ich seit einer Woche.

“An deiner Stelle würde ich nicht den MyFritz-DynDNS nehmen. Diese kryptischen Adressen kann sich ja keiner merken. Da gibt es weit bessere Alternativen. Im deutschsprachigen Raum mit passendem Supportforum für totale Laien wie dich z.B. IPv64.net..”

Das kryptische stellt für mich kein Problem dar, wenn ich das mal hinbekomme und die Handys mit der Cloud einrichte, tue ich das ja zuhause vor dem PC.

Also Aktuell versuche ich nun Docker zu nutzen, darüber “trafik” als revers proxy zu betreiben und dadurch nextcloud und pihole zu lenken.

Die Portweiterleitung der Klingel ist entfertn. Dennoch verwendet die Klingel als eigenen Port die 80 was bisher zur Folge hat, dass sobal der Raspi an ist (bisher ist nur nextcloud drauf) die Klingel nicht mehr richtig funktioniert. Alles im heimischen LAN.
Daher meine Verständnis-Frage, ob ich das mit dem reversproxy so betreiben kann, dass pihole/nextcloud quasi hinter dem prox stehen, der proxy selber keinen port 80 im Heim-LAN verwenden kann. Denn anscheinend kollabiert die Mehrfamilien-Türklingel sobald ein anderen Gerät im Heim-LAN ebenfalls Port 80 nutzt.

Zu den Ports in Nextcloud:
Nextcloud lauscht auf Port 80 und 443 auf Anfragen. Die über Port 80 werden automatisch auf SSL (Port 443) umgeleitet. Theoretisch wäre die Freigabe des Ports 80 damit obsolet, wenn da nicht noch Letsencrypt wäre.
Letsencrypt benötigt für Erstellung und Erneuerung des SSL-Zertifikats die Ports 80 (zur Validierung) und 443.

Somit ist Dein System aber ausreichend abgesichert, dass über Port 80 nichts “boses” passieren kann.

Wie ich bereits erwähnte reicht IPv6 zur Erzeugung der Let’s Encrypt Zertifikate. Befasse dich mit IPv6, dann kannste den ganzen Proxy-Gedöns gleich wieder vergessen, denn die NC selbst braucht keinen Port 80 sondern 443.

Danke für deine Mühe, nach der installation von nextcloud über docker sehe ich leider keinerlei möglichkeit irgendwo irgend etwas diesbezüglich einzustellen. Womöglich muss man es händisch in diese yml eintragen aber dafür finde ich leider keinerlei Anleitung online. Das ist unglaublich frustrierend, man macht ein Problem ausfindig und beim Versuch eine Lösung zu finden machen sich je drei neue Probleme auf.

Hier die Möglichkeiten von Letsencrypt über die verschiedenen Challenge-Methoden:

1 Like

Myfritz DNS service is an sich nicht schlecht - das funktioniert sogar besser als manche Alternativen z.B. wenn di “dynamische” IP monatelang nicht wechselt. Es ist aber richtig dass die MyFritz Adressen nicht einfach zu merken sind - hier würde ich “richtige” eigene Domain empfehlen und in DNS des Providers einfach ein CNAME auf die myfritz Adresse setzen:

mycloud.mydomain.tld.    7200    IN    CNAME    bcde5432xyzzyx.myfritz.net.

ein CNAME hat einen riesigen Vorteil - man kann das System dahinter einfach austauschen und zu Hause hosten, auf einem VPS oder “managed” - nur kurz den CNAME anpassen und die eigene Cloud ist auf der neuen Hardware betriebsbereit (Daten transferieren etc ist natürlich trotzdem notwendig..)

1 Like

Welche Möglichkeit irgendwo irgend etwas diesbezüglich einzustellen meinst du? Also was genau ist mit diesbezüglich gemeint? Man kann so nur Vermutungen anstellen.

IPv6 zur Erzeugung der Let’s Encrypt Zertifikate? Falls ja, das wird auf Betriebssystemebene (also dem OS des Docker Hosts) und auch im Router / der Firewall konfiguriert.

1 Like

Vielleicht hilft dieser Thread und die Links darin z.B. zu Github:

1 Like