Wie Nextcloud erreichbar machen?

Option 1 oder Option 2?

  • Option 1 - VPN und Cloud passen einfach nicht zusammen

    Stimmen: 4 30,8%
  • Option 2 - Jedes Plus an Sicherheit mitnehmen

    Stimmen: 9 69,2%

  • Umfrageteilnehmer
    13

FrageVomAmateur

Lt. Junior Grade
Registriert
Feb. 2020
Beiträge
264
Hallo zusammen,

Ich habe nun seit längerer Zeit bei mir im Heimnetz eine Nextcloud unter Docker am Laufen. Diese hängt direkt an der Fritzbox, ich habe sie aber bisher nur im Heimnetz betrieben. Nun möchte ich aber auch von Unterwegs darauf zugreifen können, möchte meine Nextcloud also aus dem Internet erreichbar machen. Zusätzlich möchte ich meinen Kalender und meine Kontakte auf der Nextcloud speichern. Dazu habe ich zwei Optionen ins Auge gefasst, wozu ich noch ein paar offene Fragen habe:

Option 1: Nextcloud direkt erreichbar machen:
Würde mir persönlich erst mal besser gefallen, da ich dann nicht die ganze Zeit VPN anschalten müsste und ein paar Sachen mit anderen Personen teilen könnte (darauf könnte ich aber im Notfall auch verzichten).
Zum Sicherheitsaspekt hätte ich hier SSL, UFW-Firewall, 2-Faktor-Authentifizierung (und am besten noch end-zu-end Verschlüsselung) angedacht. SSH hätte ich im Heimnetz belassen.
Nun zu den offenen Fragen:
  • Ist dies von der Sicherheit ausreichend, oder habe ich noch irgendwas übersehen?
  • Einen reverse Proxy brauche ich ja nicht, wenn ich sowieso nur die Nextcloud von außerhalb erreichbar machen will, oder erfüllt dieser noch irendwelche Sicherehitsfunktionen, von denen ich nichts weiß?
Ansonsten habe ich überlegt auf Proxmox umzuziehen und einen separaten LXC mit einer Nextcloud zu erstellen, die dann aus dem Internet erreichbar sein soll. Meine wichtigeren Dokumente (etc.) würde ich dann in einem anderen LXC bei Openmediavault im Heimnetz belassen. Die bekommen dann auch jeweils zwei eigene interne IPs und sind ja dann quasi so wie zwei separate Computer (die dann aber nur einmal auf der Stromrechnung auftauchen :cool_alt: ) und können jeweils nicht aufeinander zugreifen?
Zudem sollte es ja für Hacker dann schonmal etwas schwerer sein aus dem LXC oder der VM rauszukommen.

Option 2: Über VPN auf Nextcloud zugreifen:
Wenn diese Option extrem viel sicherer sein sollte, dann würde ich dazu tendieren, wobei ich auf die Option meine Dokumente zu teilen oder anderen Familienmitgliedern auch einen Benutzer einzurichten ungern aufgeben würde. Jedenfalls das würde ich dann über Wireguard realisieren.
Hierzu auch noch eine Frage:
  • Bei VPN über Wireguard, brauche ich da für meinen Nextcloud-Server überhaupt ein SSL-Zertifikat? Ich bin doch dann quasi im Heimnetz - also der Server selbst ist ja von außen nicht erreichbar und kann nicht mit LetsEncrypt kommunizieren.

Problem: ds lite Anschluss:
Leider habe ich bei meinem aktuellen Anschluss keine Möglichkeit an eine IPv4 Adresse zu kommen. Ich habe zwar schon an einen VServer oder sowas gedacht, aber damit kenne ich mich dann doch zu wenig aus, um das dann sicher zu gestalten.
Fragen:
  • Ich kann doch einen DynDNS Dienst auch an eine iPv6 Adresse hängen? - ich kann dann zwar auf meine Nextcloud nicht mehr aus einem iPv4 Netz zugreifen, aber das stört mich nicht.
  • Muss ich dann die iPv6 von meinem LXC oder vom Router nehmen?
  • Brauche ich dann noch eine Portfreigabe an der Fritzbox? Habe gehört, dass das mit iPv6 nicht mehr so gemacht werden / funktionieren soll.
Ansonsten bin ich für jede Hilfe und jede Antwort Dankbar und freue mich auf eure Vorschläge :)

Mit den besten Grüßen
 
zu 1) würde sich traefik als reverse proxy anbieten, wenn du eh docker laufen hast, der kann sich auch um die Zertifikate per LetsEncrypt kümmern.

2) sollte doch mit Wireguard geradeaus out of the box funktionieren?

nextcloud selber bietet dir einen SecurityCheck an. In wie weit man sich da bei einem positiven Ergebnis drauf ausruhen kann, das muss jeder selber entscheiden.
 
FrageVomAmateur schrieb:
Ist dies von der Sicherheit ausreichend, oder habe ich noch irgendwas übersehen?
Fail2Ban würde mir spontan noch einfallen

FrageVomAmateur schrieb:
Einen reverse Proxy brauche ich ja nicht, wenn ich sowieso nur die Nextcloud von außerhalb erreichbar machen will, oder erfüllt dieser noch irendwelche Sicherehitsfunktionen, von denen ich nichts weiß?
Für mich war der nginx reverse Proxy (auf einer anderen VM in Docker am laufen) der einfachste Weg, ein SSL Zertifikat und einige Sicherheitseinstellungen zu implementieren und gleichzeitig mir die Option auf mehr Webserver/Webdienste in Zukunft zu lassen.

FrageVomAmateur schrieb:
Bei VPN über Wireguard, brauche ich da für meinen Nextcloud-Server überhaupt ein SSL-Zertifikat?
Nicht wirklich, solange die VPN an sich ordentlich abgesichert ist

FrageVomAmateur schrieb:
ich kann dann zwar auf meine Nextcloud nicht mehr aus einem iPv4 Netz zugreifen, aber das stört mich nicht.
Ist nicht das Mobilfunknetz immernoch zu Teilen IPv4 only? Oder haben die Provider das endlich auf die Reihe bekommen?...


Zu IPv6 kenne ich mich leider kaum aus, die Fragen kann ich dir nicht beantworten.
 
  • Gefällt mir
Reaktionen: FrageVomAmateur
FrageVomAmateur schrieb:
brauche ich da für meinen Nextcloud-Server überhaupt ein SSL-Zertifikat
Da der Aufwand ein SSL Zertifikat zu erhalten ca 10 Sekuinden betraegt und die nichts kosten: Ja. Immer eins haben. Einfach nutzen, wenn schon damit deine anwendungen nicht meckern
FrageVomAmateur schrieb:
Wenn diese Option extrem viel sicherer sein sollte
VPN macht nicht unbedingt etwas sicherer. Ich wuerde jedoch keine Dienste aus meinem Heimnetz nackt exposen. Wireguard ist da schonmal ein guter Ansatz :)
FrageVomAmateur schrieb:
ch kann doch einen DynDNS Dienst auch an eine iPv6 Adresse hängen?
hast du keine feste v6 adresse? sonst frag mal lieb was die kostet. dann kannst du dir dieses dyndns gefummel sparen.

FrageVomAmateur schrieb:
Einen reverse Proxy brauche ich ja nicht, wenn ich sowieso nur die Nextcloud von außerhalb erreichbar machen will, oder erfüllt dieser noch irendwelche Sicherehitsfunktionen, von denen ich nichts weiß?
ist was zertifikatshandling, session verwaltung und caching angeht aber doch ganz angenehm :)
FrageVomAmateur schrieb:
SSL, UFW-Firewall, 2-Faktor-Authentifizierung (
SSL verschluesselt daten waehrend der uebertragung.
UFW ist ein frontend, abermkeine Firewall. Damit erstellst du komfortabel regeln fuer ein FW Backend.
2 Faktor authentifizierung schuetzt dich beim login in einen account. Damit niemand nur mit deinem PW rein kann. Schuetzt dich nicht vor Sicherheitsproblemen in $Software

FrageVomAmateur schrieb:
Die bekommen dann auch jeweils zwei eigene interne IPs und sind ja dann quasi so wie zwei separate Computer (die dann aber nur einmal auf der Stromrechnung auftauchen :cool_alt: ) und können jeweils nicht aufeinander zugreifen?
warum? wie sind die getrennt ;)
FrageVomAmateur schrieb:
Zudem sollte es ja für Hacker dann schonmal etwas schwerer sein aus dem LXC oder der VM rauszukommen.
mit welchen permissions ist der Contaienr denn dann unterwegs?:heilig:


schau dir mal noch fail2ban an. damit den nextcloud login und alles was sonst noch exposed ist weiter absichern.
 
  • Gefällt mir
Reaktionen: FrageVomAmateur und Der Lord
Hi,

es ist immer schwierig zu sagen was sicher ist und was nicht. Grundsätzlich muss ich sagen, wenn auf der VM/dem Server nur der Port 443 aktiv ist, ist es schon mal nicht ein offenes Tor. Es kommt dann natürlich immer darauf an, wie sicher man das System hält. Alles was am Netz hängt, sollte stetig aktuell gehalten werden (Betriebssystem und die NextCloud selbst).
Somit ist eine Cloud auch ohne VPN durchaus betreibbar im Internet. Machen sehr viele Leute so. Updates sind hier das A und O.
Check deine Cloud auch auf jeden Fall über https://scan.nextcloud.com durch.
Über SSL-Labs kannst du auch noch einmal alles abchecken bzgl. Security/SSL.

Ein Zertifikat ist grundsätzlich erst einmal irrelevant. Selbst wenn man keins hat und trotzdem https:// vorne stehen hat und die Meldung bestätigt, wird genau so verschlüsselt wie mit einem gültigen. Ich rate aber immer dazu eins sauber zu erzeugen (z.B. mit Lets Encrypt).

Einen Reverse muss man nicht zwingend dabei stehen haben, kann aber die Arbeit ggf. erleichtern in Bezug auf Zertifikat. Aber auch das kann man problemlos auf dem Server selbst konfigurieren.

Zu IPv6: Bei IPv4 muss trotzdem ein Port freigegeben werden muss und beide Stellen (Client und Server) müssen explizit IPv6 sprechen. Per DynDNS kann man das natürlich ohne Probleme routen (AAAA-Record nennt sich das). Wichtig aber: Kann der Client kein IPv6 ist keine Kommunikation mit der Cliud möglich. Oft im Mobilfunknetz vorfindbar.
Bei der Fritz!Box und IPv6 ändert sich lediglich das NAT. Man gibt den Port quasi direkt für das Gerät frei und die Fritz!Box reicht es direkt durch anstatt die IP auf die lokale vorher noch umzumünzen.
 
Zuletzt bearbeitet:
truetone schrieb:
Selbst wenn man keins hat und trotzdem https:// vorne stehen hat
was nicht funktionieren wird. Vereinfacht ausgedrückt: ohne Zertifikat (public und private Key), keine Verschlüsselung - da macht der Webserver auf Port 443 (bzw. der Proxy vorher) einfach...gar nichts! Worauf du sicher hinaus möchtest: self signed Zertifikate. Ja, wäre möglich, aber man müsste dann schon sicherstellen, dass das, was man da im Client bestätigt, auch wirklich das eigene Zertifikat ist. Und in Zeiten von kostenlosen 1-Klick LE Zertifikaten nun wirklich nicht mehr nötig. :)
 
  • Gefällt mir
Reaktionen: truetone und madmax2010
Mickey Mouse schrieb:
nextcloud selber bietet dir einen SecurityCheck an. In wie weit man sich da bei einem positiven Ergebnis drauf ausruhen kann, das muss jeder selber entscheiden.
Ich denke ich würde den im Anschluss auf jeden Fall mal drüberlaufen lassen - schaden kanns ja nicht :)

Rickmer schrieb:
Fail2Ban würde mir spontan noch einfallen
Hab ich tatsächlich auch schonmal gehört, aber gar nicht mehr auf dem Schirm gehabt - Vielen Dank :)
Rickmer schrieb:
Ist nicht das Mobilfunknetz immernoch zu Teilen IPv4 only? Oder haben die Provider das endlich auf die Reihe bekommen?...
Normalerweise problematisch - ist bei meinem Anbieter aber zum Glück nicht so (O_2)
madmax2010 schrieb:
Da der Aufwand ein SSL Zertifikat zu erhalten ca 10 Sekuinden betraegt und die nichts kosten: Ja. Immer eins haben. Einfach nutzen, wenn schon damit deine anwendungen nicht meckern
Meine Frage ging da nur in die Richtung, ob das überhaupt möglich ist, weil dann dürfte meine Nextcloud ja nicht nach außen kommunizieren - dann komme ich mit meinen Clients ja quasi ins Heimnetz rein. Wie kann sie dann trotzdem ein Zertifikat bekommen?
Die Frage stelle ich mir gerade im Heimnetz nämlich auch - da bin ich nämlich bisher auch ohne SSL-Zertifikat unterwegs.
madmax2010 schrieb:
Schuetzt dich nicht vor Sicherheitsproblemen in $Software
Da hast du natürlich vollkommen recht :)
Da bin ich dann einfach auf die Entwickler von Nextcloud angewiesen, dass sie vieles (alles wäre wohl Wunschdenken) richtig machen und, dass ich entsprechend die Updates auch einspiele.
madmax2010 schrieb:
warum? wie sind die getrennt ;)
Da habe ich die Beschriebung in Wiki vielleicht ein wenig zu wörtlich genommen:
"LXC ist ein Verfahren zur Virtualisierung auf Betriebssystemebene, das mehrere voneinander isoliert laufende Linux-Systeme auf einem einzigen Host ermöglicht."
Werde ich aber auf jeden Fall nochmal genauer prüfen - sollte aber ähnlich zu Docker sein schätze ich.
madmax2010 schrieb:
Ich wuerde jedoch keine Dienste aus meinem Heimnetz nackt exposen. Wireguard ist da schonmal ein guter Ansatz :)
Könntest du das nochmal verdeutlichen? Was würden mir denn außer VPN denn noch für Möglichkeiten bleiben?
Damit ich das jetzt nicht falsch verstehe: Wäre es nicht besser ich muss nur meinen Nextcloud-LXC auf einen vorherigen Stand zurücksetzen, wenn doch mal jemand irgendwas schafft was zu manipulieren, als wenn über VPN irgendeines meiner Familienmitglieder den Schlüssel zu meinem ganzen Heimnetz verliert?
truetone schrieb:
Per DynDNS kann man das natürlich ohne Probleme routen (AAAA-Record nennt sich das).
Mache ich das dann mit der iPv6 vom Router oder mit der vom Endgerät - das System mit iPv6 hab ich irgendwie noch nicht ganz raus...
 
FrageVomAmateur schrieb:
Wie kann sie dann trotzdem ein Zertifikat bekommen?
Hier bietet sich die DNS-Challenge von LE an. Da läuft die Validierung eben nicht über http, sondern mittels DNS-Eintrag. So bekommen meine Container zuhause auch gültige LE Zertifikate und nicht ein Port (abgesehen für's VPN) ist am Router offen. :)

FrageVomAmateur schrieb:
Mache ich das dann mit der iPv6 vom Router oder mit der vom Endgerät - das System mit iPv6 hab ich irgendwie noch nicht ganz raus...
IPv6 vom Endgerät. Würdest du die IPv6 vom Router angeben, landest du auch nur auf dem Router (und den Router öffentlich erreichbar machen ist eine schlechte Idee :D). Portfreigabe in der Fritzbox aber trotzdem nötig, da die Fritzbox auch auf IPv6 intern eine Firewall laufen lässt.

Ohnehin bin ich auch ein VPN-Befürworter. Es gibt so viele Sicherheitslücken, dass man gefühlt aus dem Patchen gar nicht mehr rauskommt. Und sind wir ehrlich, gerade bei privaten Diensten hinkt man dann auch schnell mal etwas hinterher und schwupps, sind deine privaten Fotos schon abgegriffen oder du Teil eines Botnetzes.

Da du aber auch anderen Familienmitgliedern Zugang zur eigenen Cloud anbieten möchtest, ist das mit VPN zugegeben so eine Sache. Aber wenn wir hier nur von einer Hand voll Leute reden, wären die VPN-Zugänge auch schnell eingerichtet. Ansonsten gibt es auch Hosted Nextclouds bei einigen Anbietern für ein paar Euro. Die übernehmen dann die Absicherung und Wartung, wäre ggf. in dem Fall auch mal überlegenswert.

Ansonsten noch eine Empfehlung für DynDNS + IPv4/IPv6: https://dynv6.com/ (deutscher Anbieter, kostenlos, tolle API).
Klappt hervorragend, auch mit einer Fritzbox. Einmal eingerichtet und bei jedem Reconnect meldet die Fritzbox dem Dienst deine neue IPv4 (okay, bringt dir in deinem Fall nichts) und das aktuelle IPv6-Prefix - Rest macht der Dienst alleine.
 
  • Gefällt mir
Reaktionen: FrageVomAmateur und madmax2010
FrageVomAmateur schrieb:
Familienmitglieder
Hier wäre noch die Frage ob für Familienmitglieder der Zugriff von Unterwegs unbedingt sein muss oder ob hier nicht einfach der Zugriff aus deren zu Hause Bereich ausreichend wäre ?

Stichwort VPN zwischen den Routern (Heimnetzen) aufbauen.
Ich mein braucht man was um es mitzunehmen, kann man es sich vorher noch laden bevor man das Heimnetz verlässt und hochladen des gleiche, was wäre denn so Ultrawichtig, das es gleich noch unterwegs in die Nextcloud müsste und nicht noch so lange warten kann bis man im heimischen Netz wieder ist ?
 
  • Gefällt mir
Reaktionen: Der Lord
Der Lord schrieb:
Oh vielen Dank - nach so einem Hinweis habe ich immer gesucht :)

Ich denke dann würde ich doch einen reverse Proxy mit dazu nehmen, um mir die Sache mit den Zertifikaten zu erleichtern, falls doch nochmal mehr dazu kommen soll als die NC. Die WireGuard VM hängt dann aber nicht hinter dem reverse Proxy, oder?

Muss dann überhaupt irgendeine Verbindung zwischen meinem reverse Proxy (den will ich ja dann zertifizieren) und meiner Domain bestehen? Bisher habe ich in meinem Heimnetz immer die Domain .local verwendet. Muss ich dann bei meinem reverse Proxy und den anderen Geräten die Domain eintragen, die ich bei diesem DNS Anbieter erstellt habe und die ich dann verwenden möchte?
Der Lord schrieb:
Ansonsten gibt es auch Hosted Nextclouds bei einigen Anbietern für ein paar Euro.
Das ist auch eine Sache, die ich sofort gemacht hätte, wenn ich nicht schon 24/7 den Homeserver im Heimnetz am Laufen hätte, der sich mit den wenigen Aufgaben, die ich ihm gegeben habe, ein wenig unterfordert fühlt ;)
 
Also ich habe inzwischen nochmal ein wenig rumgelesen :)
Dabei ist mir v.a. der Proxy Manager Nginx ist mir dabei aufgefallen, da man mit dem die Weiterleitung an die Seite des Host-Servers zusätzlich noch mit einem Passwort versehen kann. Wäre dies eine vertretbare Alternative zu VPN? Denn dann wäre die Seite ja auch nicht "nackt" ausgestellt, sondern eben diese zusätzliche Anmeldeseite des reverse Proxy vorgeschaltet. Dazu könnte ich ja dann auch einfach ein normales LE http Zertifikat nehmen.
Mit VPN wäre das Konzept mit dem Passwort ja ein wenig witzlos, weil ich ja die Geräte hinter dem reverse Proxy auch einfach direkt ansurfen und so die Anmeldeseite umgehen könnte.

Was mich gerade noch stört: Nginx scheint lediglich als Docker Container verfügbar zu sein. Das heißt ich müsste, wenn ich an der Idee mit Proxmox festhalten würde (die Backuplösung soll ja da extrem toll sein), einen LXC mit Docker darin aufsetzen, über das dann Nginx läuft? Oder gibt es noch eine Alternative zu Ngnix, die sich auch "normal" installieren lässt?

Da frage ich mich, ob es nicht doch sinnvoller ist auf das bestehende Docker Setup aufzubauen:
  • Watchtower
  • Plex
  • Nextcloud (mit MariaDB und redis)
Gewünscht hätte ich mir dann noch OMV und das gibts ja nicht als Docker-Container. Das würde ich dann entweder in einem Ubuntu Docker-Container installieren oder ich nutze es direkt als Hostsystem. Die haben ja direkt ein ISO mit einem fertigen System und da wäre dann schon die Möglichkeit für Docker und Portainer frei.

Auf jeden Fall euch allen nochmal vielen Dank für die Hilfe :) :daumen:
 
Also nochmal vielen Dank für die Hilfe - der Server steht jetzt :schluck:

Das ganze System läuft auf Proxmox, wobei ich für jeden Dienst eine eigen eigenen Container erstellt habe. Diese hängen alle hinter einem reverse Proxy, der dann schlussendlich das Wildcard Zertifikat erhalten soll, welches bei meiner Domain mit dabei ist. Aufrufen kann ich die Dienste dann über Subdomains, die über einen lokalen DNS (Pihole) aufgelöst werden, der die Anfragen dann an den reverse Proxy weiterleitet.

Mit Wireguard überlege ich aktuell noch zu warten, da dieser Dienst sowieso im nächten Fritz!OS integriert sein soll und hoffentlich gleich mit einer brauchbaren Lösung für DynDNS :D

IchbinbeiCB schrieb:
Stichwort VPN zwischen den Routern (Heimnetzen) aufbauen.
Da wäre ich auch sofort dabei - nur schade, dass aktuell eines der beiden Router über eine IPv4 Adresse verfügen muss. Ich hoffe das ändert sich dann zusammen mit der Implementierung von Wireguard.

Was mich aktuell noch stört - als reverse Proxy habe ich aktuell den Nginx-Proxy-Manager unter Docker in einem LXC am Laufen. Ich hätte das ganze am liebsten manuell über Apache gemacht, aber immer hat irgendwas nicht funktioniert. Hat da jemand eine brauchbare Anleitung zu?
 
Zurück
Oben