interner Zugriff auf NexctluoPi via Domain

LabNelson

New member
Hallo liebes Forum,

ich möchte gerne im Hausnetz über die externe Domain (persönlicherCode.myfritz.net) auf meine Nextcloud zugreifen.
Von extern funktioniert das schon, per MyFritz-Dienst und einer Portweiterleitung von Port 80 und 443.
Die Fritz-Box hat ein Zertifikat, ausgestellt auf die externe Domain. Deshalb bekomme ich eine Warnung, wenn ich die Nextcloud aus dem Heimnetz über die interne IP (192.168.178.XXX) anspreche.
Im DNS-Rebind-Schutz der Fritz-Box habe ich die Ausnahme (persönlicherCode.myfritz.net) auch schon hinzugefügt.

Wenn ich nun aus dem Heimnetz die externe Domain (persönlicherCode.myfritz.net) eingebe, lande ich bei der Anmeldemaske meiner FritzBox und nicht auf meiner Nextcloud.

Ich habe etwas über CNAME gelesen: https://wiki.ubuntuusers.de/Howto/DDNS_für_eigene_Domain_mit_Fritzbox-Router_und_TLS/
Komme an Punkt 3 aber nicht weiter, weil ich das entsprechende Fenster bei MyFritz nicht finde.
Was kann ich tun, um aus dem Heimnetz meine Nextcloud über die externe Domain zu erreichen?
 
Zuletzt bearbeitet:
Die Fritz-Box hat ein Zertifikat. Deshalb bekomme ich eine Warnung, wenn ich die Nextcloud über die IP anspreche.
Dann sprichst Du vermutlich die falsche IP an, was sich wiederum sehr stark nach IPv6 anhört.

IPv4: Nur Dein Router hat eine öffentlich erreichbare IPv4-Adresse, alles andere "versteckt" sich dahinter (Source-NAT) und hat "private" Adressen (z.B. 192.168.x.x). Daher auch die Port-"Weiterleitung" (Destination-NAT) von der öffentlichen Router-IP auf die interne private IP (welche von aussen nicht direkt ansprechbar ist).

IPv6: "Alle" Geräte (sofern sie es unterstützen) kriegen eine öffentliche IPv6-Adresse, es wird kein NAT mehr eingesetzt. In der Fritzbox wird dann nur noch eine Port-"Freigabe" für das gewünschte interne erstellt (quasi nur eine Firewall-Regel).

Jetzt das Problem mit der DynDNS-Adresse: Die Fritzbox meldet dem DynDNS lediglich "ihre eigenen" Adressen. Bei IPv4 wäre das richtig, bei IPv6 müsste es aber die öffentliche IPv6 der Nextcloud-Instanz sein.

IPv4: DynDNS-Adresse auf die IPv4 der Fritzbox (WAN) + Portweiterleitung auf die Nextcloud-Instanz
IPv6: DynDNS-Adresse auf die IPv6 der Nextcloud-Instanz + Portfreigabe auf die Nextcloud-Instanz

Könntest mal hier schauen: https://avm.de/service/wissensdaten...0/845_IPv6-Freigaben-in-FRITZ-Box-einrichten/

Es gibt wohl noch die Möglichkeit, dass die Fritzbox da auch etwas bzgl. IPv6 bereitstellt (meine, das ist dann sowas in Form von z.B. nextcloud.persönlicherCode.myfritz.net), aber da habe ich keine Ahnung von.

Ein CNAME ist derweil nur ein "Alias" im DNS-System (bei Deinem Domain-Anbieter). Das wäre dann wie folgt:

nextcloud.deine-domain.tld -> CNAME -> nextcloud.persönlicherCode.myfritz.net

DNS ist auch nur ein "Zeiger" auf eine IP, wobei die eigentliche Route zum Ziel dann rein IP-basiert ist. Quasi eine Adressauskunft. Oben drauf wird DNS aber noch dazu genutzt, den angesprochenen FQDN festzulegen. Somit sind es eigentlich 2 Dinge:

1) Adressauskunft, womit die Ziel-IP für die Pakete bestimmt wird (via IPv6 dann Deine Nextcloud), damit werden die Pakete für den angesprochenen FQDN schon mal an die Nextcloud geschickt.
2) Informationen für den Ziel-Webserver: Was hast Du angesprochen bzw. von welcher Domain möchtest Du etwas? Die Info steckt dann im HTTP-Header.

Bzgl. Punkt 2 musst Du da auch entsprechendes bei der Nextcloud konfigurieren (glaub trusted_domains oder sowas war das). Gehst Du jetzt hin und erstellt einen CNAME-Record bei Deinem Domain-Anbieter (falls Du eine eigene vollwertige Domain besitzt, z.B. labnelsen.tld), z.B. in Form von: nextcloud.labnelson.tld -> CNAME -> nextcloud.persönlicherCode.myfritz.net und sprichst Deine Nextcloud darüber an, greifen wieder die beiden o.g. Punkte:

1) nextcloud.labnelson.tld -> nextcloud.persönlicherCode.myfritz.net -> IPv6 der Nextcloud
2) Angesprochener FQDN: nextcloud.labnelson.tld

Bei Punkt 2 müsste dann also nextcloud.labnelson.tld ebenfalls in die Liste der trusted Domains aufgenommen werden (wie schon die myfritz-Adresse zuvor), da die Nextcloud ansonsten einen Fehler wirft.
 
Mal doch erstmal folgendes in der Windows-Eingabeaufforderung (oder irgendeiner anderen Shell)...:

1) nslookup persönlicherCode.myfritz.net
2) nslookup persönlicherCode.myfritz.net 8.8.8.8
3) nslookup persönlicherCode.myfritz.net 2001:4860:4860::8888

Dann weisst Du zumindestens schon mal, wie es mit der Namensauflösung läuft (v4/v6).

Die Fritz-Box hat ein Zertifikat, ausgestellt auf die externe Domain.
Du kannst halt nicht mehrere Dinge gleichzeit auf einem Port laufen lassen. Entweder reagiert die Fritzbox auf dem HTTPS-Port (443/TCP), oder der Port wird weitergeleitet an die interne IPv4 der Nextcloud (dann kommt da aber nichts mehr von der Fritzbox, da diese die Pakete einfach nur stumpf weiterleitet).

Ein "mögliches" Szenario wäre noch folgendes - je nachdem, ob IPv4 oder IPv6....

Zugriff via IPv4: Port wird weitergeleitet an Nextcloud (keine Zertifikat der Fritzbox)
Zugriff via IPv6 - falsche IP via DynDNS: Webinterface der Fritzbox wird angezeigt (inkl. Zertifikat)
Zugriff via IPv6 - korrekte IP via DynDNS: Webinterface von Nextcloud erscheint

Nun kann es halt auch sein, dass es "mal so, mal so" läuft. Ist das nix mit dem DynDNS-Dienst und "alles" (v4+v6) zeigt auf die Fritzbox, wäre folgendes Szenario denkbar: Greifst Du von extern via IPv4 zu, ist alles in Ordnung denn der Port wird an Nextcloud weitergeleitet. Kommst via IPv6 von extern, landest Du bei der Fritzbox...

Ich bleibe einfach mal dabei bzgl. der IPv6-Problematik bzw. ist es eher eine DynDNS-Problematik, IPv6 kann da nix für. Zu Testzwecken könntest Du an Deinem lokalen internen Client aber mal testweise IPv6 ausschalten: https://www.uni-kassel.de/its/diens...g/internetprotokoll-ipv6-deaktivieren-windows. Wenn es dann funktioniert, kannst Du Dir ziemlich sicher sein, dass an einer falschen IPv6-Adresse im DynDNS-Eintrag liegt.
 
IPv4 habe ich nun auch in der Frage ergänzt.

Das Ergebnis der nslookups:
1)
nslookup persönlicherCode.myfritz.net
Server: 127.0.0.53
Address: 127.0.0.53#53

Non-authoritative answer:
Name: persönlicherCode.myfritz.net
Address: 77.1.75.52
Name: persönlicherCode.myfritz.net
Address: 2a01:c23:8e00:2343:5e49:79ff:fe25:3f9f

2)
nslookup persönlicherCode.myfritz.net 8.8.8.8
Server: 8.8.8.8
Address: 8.8.8.8#53

Non-authoritative answer:
Name: persönlicherCode.myfritz.net
Address: 77.1.75.52
Name: persönlicherCode.myfritz.net
Address: 2a01:c23:8e00:2343:5e49:79ff:fe25:3f9f

3)
nslookup persönlicherCode.myfritz.net 2001:4860:4860::8888
Server: 2001:4860:4860::8888
Address: 2001:4860:4860::8888#53

Non-authoritative answer:
Name: persönlicherCode.myfritz.net
Address: 77.1.75.52
Name: persönlicherCode.myfritz.net
Address: 2a01:c23:8e00:2343:5e49:79ff:fe25:3f9f

Ich habe gerade gesehen, dass die FritzBox ein Zertifikat hat und auch die Nextcloud ein Lets-encrypt-Zertifikat hat.
Du kannst halt nicht mehrere Dinge gleichzeit auf einem Port laufen lassen. Entweder reagiert die Fritzbox auf dem HTTPS-Port (443/TCP), oder der Port wird weitergeleitet an die interne IPv4 der Nextcloud (dann kommt da aber nichts mehr von der Fritzbox, da diese die Pakete einfach nur stumpf weiterleitet).
Ah, darüber habe ich noch nicht nachgedacht. Ist aber logisch.
Kann man den Port der Fritz-Box ?
Die Fritz-Box kann nicht unterscheiden, ob die Anfrage von extern oder intern kommt, oder? Sonst könnte man die Portweiterleitung daran koppeln (Port 80 und 443 von extern weiterleiten, Port 80 von intern FritzBox-Oberfläche, Port 443 von intern weiterleiten).

Die Nextcloud leitet Anfragen an Port 80 eh an 443 weiter...
 
Na da schau her... IPv4 und IPv6, also wird es sein, wie schon oben beschrieben. Die IPv6-Adresse, welche Dir da angezeigt wird, ist die der Fritzbox und diese leitet die IPv6-Pakete eben nicht weiter an die Nextcloud (ganz im Gegensatz zu IPv4 und der Portweiterleitung). Heisst, dass Du für die Nextcloud eine andere Lösung finden musst (z.B. DynDNS-Client auf der Nextcloud).

Das Problem dabei ist dann allerdings, dass der DynDNS-Client auch folgendes können muss:

1) IPv6 + IPv4
2) IPv6 auf die lokale IP der Nextcloud setzen + IPv4 auf die "erste öffentliche IPv4" setzen (das wäre die WAN-IP der Fritzbox)

Dazu bräuchtest Du dann halt noch einen entsprechenden DynDNS-Anbieter - ich weiss nicht, ob man da auch einfach MyFritz nutzen kann, oder ob man sich da ggf. einen anderen suchen muss.
 
Bzw. aber da bin ich mir nicht sicher, weil ich es selbst so noch nie gemacht habe, aber ich glaube es hier so im Forum von jemandem gelesen zu haben. Kann das der MyFritz-DynDNS Dienst nicht regeln?!

Wenn Du anstatt Portfreigaben sogenannte MyFritz-Freigaben in der FritzBox machst - wie gesagt, ich habe hier keine praktische Erfahrung - dann soll der MyFritz-DynDNS Dienst das doch direkt richtig regeln und auch einen FQDN mehr anlegen z.B. next.<persönlicher Code>.myfritz.net Unter dieser Freigabe wären dann die "korrekte" IPv4 und IPv6 für die Next drin. Zumindest hatte ich das mal so verstanden.

Habe es gerade mal ausprobiert... JA! Tut es! Da hat AVM mal wieder mitgedacht... über die MyFritz!-Freigabe geht es. Die FritzBox trägt für das mittels MyFritz-Freigabe freigegebene Gerät sogar die korrekten A und AAAA ins DNS ein!

Ich habe zum Test mal meine "HUE Bridge" kurz freigegeben:

A+AAAA Record der HUE-Bridge unter hue.<myCode>.myfritz.net
#:~$ host hue.<myCode>.myfritz.net
hue.<myCode>.myfritz.net has address 8x.x9.7x.xx
hue.<myCode>.myfritz.net has IPv6 address 20xx:4xx0:xxx4:x:exx5:xxx:xxx:eb16


A+AAAA Record der FritzBox unter <myCode>.myfritz.net
#:~$ host <myCode>.myfritz.net
<myCode>.myfritz.net has address 8x.x9.7x.xx
<myCode>.myfritz.net has IPv6 address 20xx:4xx0:axxe:xxx4:2xx1:xxx:xxx:8875


Dabei muss man beachten, dass die FritzBox für die MyFritz-Freigabe den IHR bekannten Namen des Geräts verwendet. Wenn das Gerät also z.B. als "nextcloud" in der Netzwerkübersicht bekannt ist, so wird der MyFritz-DNS-Eintrag: nextcloud.<yourCode>.myfritz.net
 
Zuletzt bearbeitet:
Es gibt wohl noch die Möglichkeit, dass die Fritzbox da auch etwas bzgl. IPv6 bereitstellt (meine, das ist dann sowas in Form von z.B. nextcloud.persönlicherCode.myfritz.net), aber da habe ich keine Ahnung von.
aber ich glaube es hier so im Forum von jemandem gelesen zu haben. Kann das der MyFritz-DynDNS Dienst nicht regeln?!
Sag ich ja, aber im Gegensatz zu mir, hast Du wenigstens die Möglichkeit, das auch mal auszuprobieren 😅 Hatte diesbezüglich schon bei den AVM-Anleitungen geschaut, aber nix gefunden.
Wenn das Gerät also z.B. als "nextcloud" in der Netzwerkübersicht bekannt ist, so wird der MyFritz-DNS-Eintrag: nextcloud.<yourCode>.myfritz.net
Genau so hatte ich das auch verstanden (kann man mögen, muss man aber nicht).

Das die v4 auch direkt "richtig" angegeben wird, finde ich da recht nett (wir alle wissen, dass es da auch hätte ganz anders laufen können... 😅), insofern schliesse ich mich...
Da hat AVM mal wieder mitgedacht...
... mal an, wobei ich grade nochmal nachschauen wollte, aber... ich habe wohl schon ein paar normale Freigaben und kann auch nur noch normale Portfreigaben hinzufügen. Dürfte dann vermutlich daran liegen, dass hier auf der Fritzbox kein IPv6 läuft... :unsure:

Aber so oder so - genau das, was @Barungar beschrieben hat, ist genau die richtige Lösung für das o.g. Problem @LabNelson, also... machen und jut ist :)
 
Danke für eure Hilfe @blurrrr und @Barungar. Ich bin begeistert :)
Über die MyFritz-Freigabe klappt nun der Zugriff von intern und von extern (Ich bekomme natürlich Zertifikatswarnungen)


Die Portweiterleitungen benötige ich dann ja nicht mehr.
Ich habe Sie erstmal drin gelassen und versuche gerade das Lets-encrypt Zertifikat auf die neue Domain (nextcloud.persönlicherCode.myfritz.net), umzustellen, leider ohne Erfolg.
Habt ihr da noch einen Tipp?
 
Der Fehler bei Lets-encrypt lautete:
error getting validation data

Nach einer Überlegung auch logisch:
Ich hatte HTTPS-Zwang in den Nextcloudpi-Einstellungen noch aktiviert. Logisch, dass das Zertifikat nicht neu erstellt werden kann.


Also HTTPS Zwang entfernt. Ports (80 und 443) wieder weitergeleitet und Zertifikat neu erstellt. Und anschließend den HTTPS-Zwang wieder eingeschaltet.
Jetzt läuft alles wie gewünscht.

Danke nochmal euch beiden @blurrrr, @Barungar
 
Der Let's Encrypt greift aber auch nur auf ein ganz spezielles Verzeichnis auf dem Webserver zu. Du kannst also in der vHost-Konfiguration des Port 80 genau dieses Verzeichnis "ausklammern" und für alle anderen Verzeichnisse eine HTTPS-Weiterleitung aktivieren. Dann führt jeder andere Aufruf von http zur Weiterleitung zu https; nur ddie Let's Encrypt-Aufrufe bleiben dann http.
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.567
Beiträge
46.751
Mitglieder
4.199
Neuestes Mitglied
krebsvo
Zurück
Oben