Nextcloud direkt aus dem Netzwerk zugreifbar machen

Hey Leute,

ich nutze Nextcloud schon eine ganze Weile sehr aktiv und gerne. Was mich nur ein kleinwenig “stört” ist, dass ich selbst wenn ich mich im Lokalen Netzwerk befinde, immer über die Domain gehen muss. Wenn ich es über die IP Adresse versuche bekomme ich nur die Meldung, dass der Zugriff nicht möglich ist über Port 80.

Gibt es eine Möglichkeit da was anzupassen? Also dass man lokal auch direkt dran kommt? Ich nutze neben Nextcloud auch das “Addon” Passwords sehr aktiv. Ich fand das für mich die beste Lösung um meine Passwörter zu verwalten.

Ich habe aktuell ein Reversproxy (NGINX Reverse Proxy) am laufen, der die Zertifikatverwaltung übernimmt um HTTPS Verbindungen zur Cloud und ein paar anderen Dingen zu nutzen.

Michael

Warum stört dich das? Das ist eigentlich die “korrekte” und bessere Variante.

Ich hatte letztens Ausfall vom Internet gehabt, weil sich die Fritzbox verabschiedet hatte. Ich nutze die Fritzbox als Modem. Und so kam ich nicht an die Daten in der Cloud dran. Und bis meine neue Box da war, dauerte ein paar Tage.

Das ist vielleicht nicht “ständig” der Fall, aber kann trotzem auch so immer mal wieder passieren.

Ok, das ist ein Argument. Um das zu umgehen, würde ich empfehlen, einen lokalen DNS Server zu nutzen, der dann cloud.deinedomain.tld über direkt auf die loakle IP Adresse deines Reverse Proxy auflöst, und am besten auch gleich DHCP für dein lokales Netzwerk übernimmt. (Pi-Hole kann das z.B.) Damit umgehst du den Router komplett, vorausgesetzt du hast einen separaten Switch, an dem alle relevanten Geräte hängen, und WLAN geht dann natürlich trotzdem nicht, wenn du das des Routers nutzt.

Falls du trotzdem erstmal, die IP direkt direkt nutzen können möchtest, musst du den Webserver auf dem Nextcloud Server entsprechend konfigurieren. Evtl hilft dir ja der folgende Thread (in Englisch) weiter: How setup a local NC server so that it’s accessible by the local IP-address itself from inside a home network

Falls nicht, bräuchten wir mehr Infos, wie genau du Nextcloud installiert hast.

Die Fritzbox lief nur als Modem. Meine eigentliche Netzwerkstruktur besteht aus Geräten der UniFi Reihe. Sprich Switche, APs, Dreamrouter und Co.

Aber ich werde mir das mal angucken.

Aber grundsätzlich ist Nextcloud ohne Docker oder so installiert. Einfach auf dem Apache Webserver. Falls noch weitere Infos gebraucht werden, kann ich nachliefern was benötigt wird :slight_smile:

Aber ich habe auch die Überlegung gehabt, den Zugriff auf die Nextcloud nur noch über Wireguard laufen zu lassen. Klar dann kann ich von Unterwegs nur noch über Geräte auf die Cloud zugreifen, welche Zugriff aufs VPN haben. Aber anderseits kann ich auf meinem Handy auch PiHole nutzen, auch wenn ich unterwegs bin. Ich hoffe man versteht mein Gedankengang?

Grundsätzlich müsste es reichen, wenn du zu deiner Apache Config folgendes hinzufügst: (so wie in meinem Post im verlinkten Thread)

ServerAlias 192.xxx.xxx.xxx

und allenfalls noch die IP zu den Trusted Domains hinzufügen in der config.php:

  'trusted_domains' =>
  array (
    0 => '192.168.0.29',
    1 => 'cloud.example.com',
  ),

Ich würde aber selbst dann empfehlen HTTPS und einen Domainnamen zu verwenden.

  1. Passwörter unverschlüsselt herumzuschicken, finde ich einfach nicht so toll, obwohl es dann nur im lokalen Netzwerk bzw. via VPN geschehen würde.

  2. Moderne Apps und Webapplikationen gehen immer häufiger davon aus, dass man einen FQDN und HTTPS verwendet, d.h. gewisse Apps und Clients könnten allenfalls über IP Probleme machen, eher aber noch, wenn selbstsignierte Zertifikate verwendet werden.

  3. Wenn weitere Dienste auf dem selben Server / IP laufen sollen, musst du Krämpe mit verschiedenen Ports machen oder diese in Unterordner des Apache Webroots packen, anstatt namensbasierte VirtualHosts verwenden zu können. Beides suboptimal imho. :wink:

Aber ja, am Ende des Tages kommt es immer auf die spezifischen Dienste und auf deinen Usecase an. Solange damit alles geht, was du machen willst und es für dich passt, ist fast alles ok. Zumindest solange es einigermassen “sicher” betrieben wird, was ja mit dem VPN soweit der Fall wäre.

Bei Punkt 3 hätte ich erwähnen sollen, dass auf dem Hardwareserver Proxmox läuft. Nextcloud und andere Dienste habe ich in LXCs verpackt. Ich wollte möglichst meine Dienste etwas trennen. Da neben Nextcloud, ReversProxy und ein paar andere Dienste auf dem Server laufen. Darüber hinaus läuft noch Homeassistant für mein Smarthome. Der läuft aber in einem anderen VLAN. Aber denke das noch einmal ein anderes Thema.

Wo ich auf jedenfall ran möchte ist Homeassistant von außen zugreifbar zu machen, aber nicht unbedingt über die Cloudlösung vom Entwickler und da ist VPN nunmal eine schöne Lösung.

Aber ggf. werde ich auch getrennte Ansätze verfolgen. Sprich Nextcloud und eine kleine Webseite (Nur eine Willkommensseite) weiter über die Domain zugreifbar machen und VPN für HA. Habe HA in ein IoT Netzwerk (VLAN) gepackt, welches über Firewallregeln keine Zugriffe auf andere Netzwerke zulässt. Sprich eine VPN Verbindung ausschließlich für die IoT Geräte und HA. Aber da gucke ich nochmal.

Aber danke bis hier hin schon mal für deine Hilfe.

Ich werde einfach mal nach und nach verschiedene Dinge testen und gucken was für mich den “optimalen” Weg bringt.

1 Like

Das ist sowieso besser. :slight_smile: …und dann sollte es eigentlich auch klappen via IP so wie oben beschrieben.

Und dazu wenn man vernünftig Backups macht, kann man einzellne Dienste wiederherstellen, wenn mal was in die “Hose” geht ohne den Rest anpacken zu müssen.

Und zusätzlich kann man so auch immer mal gern einen zusätzlichen LXC erschaffen, wenn man was neues testen möchte, ohne gleich ins “Produktivsystem” ein zu greifen.

Ich kann von deiner Idee des lokalen Zugriffs nur abraten. Den Fehlerfall der FRITZ!Box als Grund zu nehmen ist schlecht.

Der Vorteil des Namen und des Zugriffs aus dem Internet ist, dass du mit all deinen Geräten von überall zugreifen kannst. Damit bist du den Leuten voran, die auf ihre Nextcloud es bis jetzt nur geschafft haben über die IP-Adresse zuzugreifen. Auf meine lokale Nextcloud greife ich von intern und extern und mit allen Geräten immer über den gleichen Namen zu. Keine Ahnung welche IP-Adresse mein Nextcloud-Server hat. Wobei meistens ist er sowieso aus, da er nur ein Testsystem ist. :wink:

Ich gehe man davon aus und hoffe, dass du keine serverseitige Veschlüsselung hast. Dann kannst du doch im Notfall z. B. per sftp/scp auf die Dateistruktur zugreifen. Das sollte doch dann reichen, oder?

Bei Desktop-Clients kannst du im Übrigen beim Ausfall vielleicht die hosts-Datei wie z. B. /etc/hosts bei Linux-Desktops anpassen. Wäre nur dumm, wenn parallel das Zertifikat abgelaufen wäre. :wink: Bei mobilen Clients weiß ich nicht, ob das geht. Du könntest aber einen lokalen DNS-Server für den Notfall aufsetzen bzw. vielleicht hast du den sogar. :wink: Aber ob mobile Geräte dann überhaupt noch laufen, weiß ich nicht.

Sehe ich auch so.

Das geht, wenn man den mobilen Geräten den lokalen DNS Server per DHCP mitteilt.

Und wie sich herausgestellt hat, nutzt @raspido die Fritz Box nur als Modem und hat noch einen Unifi Router, der diese Aufgabe allenfalls übernehmen könnte. Es sollte also kein Problem sein, alles im lokalen Netz namensbasiert anzusprechen.

Und natürlich kann theoretisch auch der UniFi Router, ein Switch, ein Access Point oder auch der Proxmox Host ausfallen. Dieses Risiko besteht nun mal, und in einem Heimnetzwerk wird wohl kaum jemand den Aufwand betreiben und das Geld ausgeben wollen, alles komplett redundant und hochverfügbar auszulegen :wink: