Pi findet Port 80 und Port 443 nicht

Hallo zusammen,
ncp zeigt die Ports 80 und 443 als geschlossen an. Die Prüfung mit Portscan von außerhalb des lokalen Netzes zeigt die Ports aber als offen an. Warum nimmt der Pi die Information, dass die Ports geöffnet sind, nicht an?

Ich denke wirklich verlässlich ist diese Angabe nicht. Läuft denn Nextcloud oder nicht. Was sagt z. B.

netstat -tulpen
netstat -tulpe

Hätte gedacht, dass das verlässlich ist: wenn ich UFW aktiviere, erscheinen die Ports als freigeschaltet, aber gefiltert, und wenn ich UFW dann wieder deaktiviere, erscheinen die Ports wieder komplett frei. Also müssten die Router-Einstellungen ja eigentlich korrekt sein, oder was übersehe ich da? Ich bin dieser Anleitung (und den Hinweisen im Kommentar von Xy8000) gefolgt: https://www.youtube.com/watch?v=sRAPWv2GsJc

sudo netstat -tnlp | grep :80 bzw. 443 gibt Folgendes aus:

pi@nextcloudpi:~ $ sudo netstat -tnlp | grep :80
tcp6 0 0 :::80 :::* LISTEN 1713/apache2
pi@nextcloudpi:~ $ sudo netstat -tnlp | grep :443
tcp6 0 0 :::443 :::* LISTEN 1713/apache2

Also sind die Ports doch offen. Das ncp-Panel nimmt die Information aber nicht an.
Innerhalb meines heimischen Netzes funktioniert die Nextcloud, aber ich habe keinen Zugriff von außen. Woran mag das liegen?

Hast du nur IPv6 und nicht IPv4 aktiviert? Das ist schlecht.

Zudem ist der Einsatz einer Firewall wie UFW vollkommen sinnlos und zudem fehleranfällig.
Auf allen Ports wo Dienste horchen, kann zugegriffen werden. Das muss eine Firewall durchlassen.
Und alle Ports, wo keine Dienste horchen, da braucht an keine Firewall, da der Port gar nicht nutzbar ist.

Eine meist Personal Firewall hilft nur gegen
a.) interne Angreifer, die die Firewall evtl. deaktivieren können
b.) gegen deine eigene Dummheit bei der Installation und Konfiguration

Von außen ist der Schutz gleich Null.
Ich installiere unter Linux nie Firewalls.
Das gilt wahrscheinlich auch für die meisten Managed Nextclouds.
Aber gerne kannst du hier im Forum mal eine Umfrage starten.
Am besten dann aber auf Englisch.

Im Router ist IPv4 aktiviert. Allerdings lässt sich darin keine Portweiterleitung dafür einrichten, das funktioniert nur mit IPv6. (Zugang über Kabel & Unitymedia Connect Box). Ist das schon das ganze Problem, oder lässt sich da im Pi noch etwas konfigurieren?

Wenn dir dein Anbieter (aus Kostengründen) nur IPv6 bereitstellt, kannst du es von außen auch nur verwenden. Von ein paar komischen Ausnahmen wie Tunnel mal abgesehen. Viele Clients unterstützen mittlerweile IPv6. Es gibt aber z. B. Firmennetze, die immer noch z. B. hinter reinen IPv4-Proxies arbeiten. Die erreichen dann deine Nextcloud nicht. Von innen könntest du IPv4 und IPv6 verwenden.

Genau so habe ich in den Anbieter- und sonstigen Hilfeforen gelesen, aber das würde dann doch eigentlich bedeuten, dass man aus einem Firmennetz, das nicht nur IPv4 benutzt, zugreifen können müsste. Für diesen Fall müsste das Panel doch eigentlich grün anzeigen. Oder läuft der Pi selbst nur auf IPv4? Ich will den Anbieter nicht kontaktieren, solange der Fehler nur einfach in meiner Konfiguration liegt.

Das glaube ich nicht. Das Problem dürfte eher sein, dass er keine öffentliche IPv6 hat und die ConnectBox das irgendwie nicht korrekt forwardet. Muss aber gestehen, dass ich mich nicht wirklich auskenne mit IPv6, habe mich bis jetzt immer gesträubt, mich damit zu befassen :wink:

Was du aber noch versuchen könntest ist Connect Box in den Bridge Mode zu setzen. Wenn du Glück hast bekommt sie dann eine Dynamische IPv4 Adresse. Zumindest ist das bei mir in der Schweiz bei UPC so und ich habe auch gelesen, dass es bei Vodofone in D offenbar bei einigen so funktionieren soll. Nachteil dieser Lösung ist, dass du dann noch einen seperaten Router hinter der Connect Box brauchst. Sehe ich persönlich aber eher als Vorteil.

Falls deine Connect Box keinen Bridge Mode hat oder du damit keine öffentliche IPv4 Adresse bekommst, könntest du noch bei Unitymedia anrufen und sagen das du aus Grund XY zwingend eine öffentliche IPv4 brauchst. Ein Alarmsystem, dass nur IPv4 unterstützt soll der Legende nach schon funktioniert haben als Begründung… :wink:

@Pikiert
Ich konfiguriere immer nur IPv4 und dann funktioniert es auch. Es ist nämlich so, dass praktisch alle Clients IPv4 können. Umgekehrt können einige Server kein IPv4 und das ist das Problem. Die Vorteile von IPv6 existieren in deinem Umfeld gar nicht. Das sind alles nur Nachteile.

Wenn du nur IPv6 hast, dann musst du auch IPv6 konfigurieren. Parallel kannst du auch noch IPv4 (für intern) konfigurieren. Einige Anwender wirst du jedoch durch den Einsatz von nur IPv6 von außen ausschließen. Mag aber für dich nicht relevant sein.

@devnull Die Unitymedia-Connectbox ermöglicht nur eine Portweiterleitung für IPv6, und die scheine ich korrekt eingerichtet zu haben. Zumindest erweckt der Portscan von außerhalb meines heimischen Netzes den Eindruck, aber das sieht das NCP-Panel nicht ein. Da sich in der Connectbox IPv4 zwar aktivieren lässt, aber darin die Portweiterleitung nicht möglich ist, erscheint natürlich auf jedem angeschlossenen Rechner bei fest zugewiesener IPv6 im Portscan von außerhalb dieselbe IPv4. Ich komme also um einen redseligen Anruf bei Unitymedia nicht herum.

@bb77
Danke für den Tipp, ich werde dem Unitymedia-Sachbearbeiter am Telefon dann mal etwas von unwilligen Kameras oder so erzählen. Laut deren Forum bleibt einem gelegentlich der Aufpreis erspart. :innocent:

1 Like

@Pikiert
Keine Ahnung wie dir Unitymedia helfen soll. Du musst einfach IPv6 durchgängig konfigurieren. Die Anwender können dann deine Nextcloud über den DNS-Namen erreichen. Benutzer ohne IPv6 z. B. in einigen Firmennetzen hinter IPv4-Proxies haben dann keinen Zugriff.

Die könnten evtl. mit einer öffentlichen IPv4 aushelfen, wenn es gute Gründe dafür gibt… :wink:

1 Like

Wäre das nett. Oder man sucht sich einfach einen anderen Provider. Im übrigen braucht man zum Fernseh schauen schon lange keine Antenne, Satelliten oder Kabel mehr. Es reicht einfaches Internet.

Ist jenachdem nicht so einfach. Da wo ich wohne, habe ich die Wahl zwischen 80/30 DSL oder 1000/100 Kabel. Da fällt die Wahl leicht. Zum Glück kann ich via Bridge Mode noch eine öffentliche IPv4 beziehen. Nutzt man das Modem auch als Router, bekommt man aber mittlerweile als Privatkunde keine öffentliche IPv4 Adresse mehr.

Ich habe hier nur DSL 25000, was für viele unter dem Durchschnitt liegt. Für ein paar HD-Streams gleichzeitig ist das vollkommen ausreichend. Wofür brauchst du so viel Bandbreite? Ich denke viele bezahlen für Bandbreite, die sie gar nicht benötigen.

Hauptsächlich wegen dem Upload. 30 vs 100 ist schon ein Unterschied, wenn man ausserhalb auf die Nextcloud zugreifen will. Habe jedenfalls den Unterschied von 50 auf 100 deutlich gemerkt als der Provider damals die Bandbreite erhöht hat. Ob man es unbedingt braucht, ist natürlich wieder eine andere Frage. Da ich aber auch noch regelmässig offsite Backups mache, gilt natürlich je mehr desto besser. Und Fact ist auch, dass ich bei den meisten ADSL Providern auch nur CGNAT erhalten würde und keine Möglichkeit hätte in den Bridge Mode zu gehen. Solange also mein Provider nicht plötzlich meint mir DS-Lite/CGNAT aufzuzwingen zu müssen, werde ich erst mal nichts ändern. Ausser wenn ich an meinem Standort FTTH bekommen würde, dann würde ich ohne mit der Wimper zu zucken zu init7 wechseln.

1 Like

Nja ich übergebe alle unerlaubten Portanfragen die bei UFW ankommen an Fail2ban und das sind bei mir 18699 BAN’s innerhalb 5 Tagen. Also wenn du meinst das UFW nix bringt dann viel Glück :smiley:

Offene Ports führen maximal zu unnötigen Traffic. Mit Sicherheit hat das nichts zu tun.

Das Problem ist halt, gerade bei unerfahrenen Usern, dass sie oft gar nicht wissen, ob Ports offen sind oder nicht. Bei einer Basisinstallation von Debian oder Ubuntu laufen keine Dienste, die von aussen erreichbar sind, ausser SSH wenn der SSH Deamon installiert ist. Aber Leute installieren Software und starten Dienste ohne immer genau zu wissen, was diese Dienste mit dem System machen. Und ja jetzt kann man sagen, dass solche Leute in einer idealen Welt keine Server im Internet betreiben :wink: Aber die Realität sieht anders aus und selbst erfahrene User, wissen nicht immer jedes Detail über die Software und Dienste, die sie betreiben, und sie sind häufig auch keine Netzwerkexperten. Da installiert man dann mal schnell Software xyz und schon läuft ein Dienst, der von aussen erreichbar ist. In so einem Fall hilft es, wenn eine Firewall aktiv ist und man dann den entspechenden Port bewusst öffnen muss, wenn man merkt, dass etwas nicht funktioniert. Schaden tut es jedenfalls nicht, wenn sie aktiv ist.

Ich würde den meisten Usern und vorallem den unerfahrerenen emfehlen die UFW (Debian/Ubuntu) oder Firewalld (RedHat basierte Systeme) aktiv zu haben, ausser der oder diejenige hat ganz spezifische Gründe es nicht zu tun und weiss warum er oder sie es nicht tut. Das gilt vorallem dann, wenn man Dinge auf Cloud Servern installiert, die sich häufig nicht hinter einem NAT oder einer seperaten Firewall befinden, und dann direkt aus dem Internet erreichbar sind.

Fail2ban braucht keine UFW, um zu funktionieren. Fail2ban kann auch direkt mit IP tables interagieren. Es kann aber zusammen mit UFW verwendet werden.

1 Like

In Teilen stimme ich dir.

Unerfahrenen Bentuzern würde ich aber überhaupt nicht empfehlen selbst z. B. Nextcloud oder andere Serverdienste zu betreiben. Wobei das Problem ist hier nicht nur die Sicherheit, sondern auch der Frust, wenn man die Nextcloud mit den ganzen wichtigen Daten zerschossen hat.

Die Annahme, dass irgendetwas wie eine Firewall oder eine automatische Intallation (z. B. NextcloudPi) einem die Arbeit abnimmt ist einfach falsch. Es ist wichtig, dass man auch bzgl. der Serverdienste und evtl. Firewall (oder auch nicht) entsprechendes Know How aufbaut. Wer das nicht will sollte einen Dienstleister suchen. Wer nicht Haare schneiden kann, geht auch zum Friseur. Wer krank ist behandelt sich nicht selbst, sondern geht zum Arzt. Und wer einen ordentlichen Datenspeicher möchte … macht es selbst.