Warum wird Debian ohne eine Firewall ausgeliefert, die standardmäßig aktiviert ist?

15

Ich verwende Debian 9.1 mit KDE und frage mich, warum es ohne eine Firewall auskommt, die standardmäßig installiert und aktiviert ist? gufw ist noch nicht mal in dvd1s paketen.

Wird von den Leuten erwartet, dass sie sich vorher mit dem Internet verbinden? sie eine Firewall erhalten? Warum? Selbst wenn alle Ports standardmäßig geschlossen sind, könnten verschiedene installierte, aktualisierte oder heruntergeladene Programme diese öffnen (oder nicht?) Und ich wünsche mir, dass nicht ein einziges Bit ohne meine Erlaubnis meine Maschine verlässt.

Edit: Ich habe gerade von iptables erfahren, aber ich denke, die Frage bleibt immer noch so wie iptables, da die Firewall für die meisten eher unbekannt zu sein scheint, ihre Standardregeln, ihre Zugänglichkeit und Benutzerfreundlichkeit und die Tatsache, dass standardmäßig alle iptable-Regeln zurückgesetzt werden beim Neustart .

mYnDstrEAm
quelle
Sehr gute frage Der Ubuntu-Server ist noch nicht einmal iptablesvorinstalliert! Ich schätze, die Leute versuchen nur, das End-to-End-Prinzip auf die extreme Ebene 7 zu übertragen ...
rlf
8
Was ist Ihr Grund für die Feststellung, dass iptables für die meisten "unbekannt" ist?
SaAtomic
1
Ich habe vor einiger Zeit
StrongBad
1
"Auch wenn standardmäßig alle Ports geschlossen sind, können verschiedene installierte, aktualisierte oder heruntergeladene Programme diese öffnen ..." - Wenn Sie vermuten, dass böswillige, dann installierte, aktualisierte oder heruntergeladene Programme auch die Firewall-Regeln löschen.
Marcelm
1
@mYnDstrEAm zum Beispiel , weil Sie diese Programme geben installieren Skripte Root - Zugriff , wenn Sie geben sudoIhr Passwort wie insudo apt-get install package ...
Katze

Antworten:

28

Erstens geht Debian davon aus, dass Sie wissen, was Sie tun, und versucht, Entscheidungen für Sie zu vermeiden.

Die Standardinstallation von Debian ist ziemlich klein und sicher - es werden keine Dienste gestartet. Und selbst die standardmäßigen optionalen Extras (z. B. Webserver, ssh), die einer Installation hinzugefügt werden, sind normalerweise recht konservativ und sicher.

Eine Firewall wird in diesem Fall also nicht benötigt. Debian (oder seine Entwickler) gehen davon aus, dass Sie, wenn Sie zusätzliche Dienste starten, wissen, wie Sie diese schützen und bei Bedarf eine Firewall hinzufügen können.

Wichtiger ist vielleicht, dass Debian es vermeidet, für Sie die Wahl zu treffen, welche Firewall-Software verwendet werden soll. Es gibt eine Reihe von Möglichkeiten - welche sollte es verwenden? Und selbst in Bezug auf eine grundlegende Firewall-Einstellung, welche Einstellung sollte gewählt werden? Dies iptablesist jedoch von vorrangiger Bedeutung, daher wird es standardmäßig installiert. Aber natürlich weiß Debian nicht, wie Sie es konfigurieren möchten, also konfiguriert es es nicht für Sie. Und vielleicht bevorzugen Sie sowieso den iptablesNachfolger von nftables.

Beachten Sie auch, dass die Firewall-Funktionalität bis zu einem gewissen Grad bereits in den Linux-Kernel integriert ist. zB nftablesund netfilter. Debian und andere Linux-Distributionen bieten User-Space-Tools iptables, um diese Funktionalität zu verwalten. Aber was du mit ihnen machst, liegt bei dir.

Beachten Sie, dass diese Entitäten nicht konsistent benannt sind. So zitieren Sie die Wikipedia- nftablesSeite :

nftables wird über das User-Space-Dienstprogramm nft konfiguriert, während netfilter über die Dienstprogramme iptables, ip6tables, arptables und ebtables konfiguriert wird.

Faheem Mitha
quelle
4
@sourcejedi Soweit ich mich erinnern kann, war die Standardinstallation von Debian sehr ähnlich, zumindest seit Potato, als ich anfing, sie zu verwenden. Also bin ich mir nicht sicher, was du meinst.
Faheem Mitha
1
@FaheemMitha die vorherige Standardeinstellung war nicht für es, um Verbindungen von außen zu akzeptieren, jedenfalls :)
Hobbs
1
+1 für Versuche, Entscheidungen für Sie zu vermeiden. . Es gibt viele verschiedene Tools zum Verwalten von Firewalls mit unterschiedlichen Vor- und Nachteilen und Anwendungsfällen. und es gibt noch mehr Möglichkeiten, eine Firewall zu konfigurieren. Die Tiefenverteidigung (zB eine eigenständige Firewall / Router UND Iptables-Regeln pro Host) ist gut, aber ich würde es sehr ärgerlich finden, wenn der Debian-Installer voraussetzen würde, dass er weiß, wie mein Netzwerk eingerichtet ist und welche Firewall-Regeln ich wollte. das muss ich wissen und ich muss entscheiden.
cas
4
Eine gute Antwort, obwohl "Debian es vermeidet, die Wahl für Sie zu treffen, [da] eine Reihe von Wahlmöglichkeiten zur Verfügung stehen", ergibt für mich keinen Sinn. Debian trifft bereits Entscheidungen (z. B. Apache über lighttpd auswählen, wenn ich "Webserver" auswähle, deb über rpm ... na klar), wo Alternativen verfügbar sind. Ist es nicht der eigentliche Sinn einer Distribution, Entscheidungen zu treffen?
gd1
1
@ gd1 Es ist wahr; Debian bietet und installiert Standardeinstellungen - zB Exim, historisch gesehen. Aber sie sind leicht zu ändern. Und ich nehme an, es iptablesist auch ein Standard für Debian. Eine Sache, die Debian nicht alleine macht, ist die nicht offensichtliche Systemkonfiguration für den Benutzer.
Faheem Mitha
12

Zunächst möchte ich wiederholen, was bereits gesagt wurde: Debian richtet sich an eine ziemlich andere Gruppe von Benutzern als viele andere Mainstream-Distributionen, insbesondere an Ubuntu. Debian richtet sich an Leute, die wissen, wie das System funktioniert, und die keine Angst haben, von Zeit zu Zeit für ein hohes Maß an Kontrolle über das System zu basteln. Ubuntu zum Beispiel spricht eine ganz andere Zielgruppe an: Leute, die einfach nur wollen, dass Dinge funktionieren und sich (wirklich) nicht darum kümmern, was unter der Haube vor sich geht, und auf keinen Fall die Systemkonfiguration ändern müssen, um Dinge zu erledigen Arbeit. Dies wirkt sich auf eine Reihe von Aspekten des resultierenden Systems aus. Und bis zu einem gewissen Grad ist das eine Schönheit von Linux. Mit demselben Basissystem können Umgebungen erstellt werden, die unterschiedlichen Anforderungen gerecht werden. Denken Sie daran, dass Ubuntu ein Debian-Derivat ist,

gufw ist noch nicht mal in dvd1s paketen.

Die erste Festplatte enthält die gängigste Software, die durch das Sammeln anonymer Statistiken von installierten Systemen ermittelt wurde. Die Tatsache, dass sich gufw nicht auf der ersten Festplatte befindet, zeigt lediglich an, dass dies kein sehr beliebtes (in Bezug auf die installierte Basis) Paket in Debian ist. Es ist auch einfach zu installieren, wenn Sie das Basissystem mit funktionierendem Netzwerk eingerichtet haben und es Alternativen vorziehen.

Wird von den Leuten erwartet, dass sie eine Verbindung zum Internet herstellen, bevor sie eine Firewall erhalten? Warum?

Zum einen glaube ich, dass Debian die Installation über ein Netzwerk erlaubt. (Während einer normalen Installation werden nicht nur Pakete aus dem Netzwerk heruntergeladen, sondern die Installation wird buchstäblich von einem anderen Host als dem Host gestartet, auf dem sie installiert ist .) Eine Firewall, die standardmäßig mit einem restriktiven Regelsatz konfiguriert ist, könnte dies beeinträchtigen. Dies gilt auch für Installationen, die während des Installationsvorgangs ausgehenden Netzwerkzugriff benötigen, um nicht nur die neuesten Versionen der zu installierenden Pakete herunterzuladen.

Zum anderen gibt es das, was ich oben erwähnt habe; In der Regel erwartet Debian, dass Sie wissen, was Sie tun. Wenn Sie eine Firewall wollen, wird erwartet, dass Sie sie selbst konfigurieren können und dass Sie besser als die Debian-Betreuer wissen, was Ihre besonderen Bedürfnisse sind. Debian ist in dieser Hinsicht ein bisschen wie OpenBSD, nur nicht so extrem. (Wenn die OpenBSD-Betreuer die Wahl haben, das Basissystem ein wenig sicherer und ein wenig benutzerfreundlicher zu machen, entscheiden sie sich praktisch immer für die Sicherheit. Dies zeigt die Sicherheitslückenstatistik ihres Basissystems, hat jedoch enorme Auswirkungen auf die Benutzerfreundlichkeit.)

Und natürlich die Technik: Firewall-Unterstützung ist im Basissystem enthalten. Es ist nur so, dass es auf eine allzulässige Regel festgelegt ist, die standardmäßig vom Kernel festgelegt wird, und eine Basis-Debian-Installation ändert daran nichts. Sie können einige Befehle ausführen, um den Verkehrsfluss einzuschränken.

Selbst wenn alle Ports standardmäßig geschlossen sind, könnten verschiedene installierte, aktualisierte oder heruntergeladene Programme diese öffnen (oder nicht?) Und ich wünsche mir, dass nicht ein einziges Bit ohne meine Erlaubnis meine Maschine verlässt.

Erstens werden Firewalls normalerweise verwendet, um den eingehenden Datenverkehr einzuschränken . Wenn Sie ausgehende einschränken möchten Verkehr , ist das ein ganz anderer Fischkessel. sicherlich machbar, aber muss viel mehr auf Ihre spezifische Situation zugeschnitten werden. Eine Firewall, die ausgehenden Datenverkehr standardmäßig blockiert und häufig verwendete Ports offen lässt (wobei häufig verwendete Ports ftp / 20 + 21, ssh / 22, smtp / 25, http / 80, https / 443, pop3 / 110, imap / 143 und Ein Bündel von anderen) und das Zulassen von Datenverkehr für bestehende Sitzungen wären nicht viel sicherer als eine Firewall, die standardmäßig zulässt. Es ist besser, sicherzustellen, dass die vom Basissystem installierten Pakete auf eine Reihe von gut verständlichen, als sicher konfigurierten Paketen beschränkt sind, und dem Administrator das Einrichten geeigneter Firewall-Regeln zu ermöglichen, wenn sie mehr Schutz benötigen.

Zweitens ein geschlossener Port (einer, der auf eine TCP-SYN mit einem TCP-RST / ACK reagiert)Wird normalerweise als "Verbindung abgelehnt" gemeldet. Dies ist in der Regel der Standardzustand eines TCP-Ports auf einem Live-System, das TCP / IP unterstützt, wenn keine gegenteilige Konfiguration vorliegt oder Software darauf lauscht. Dies ist keine signifikante Sicherheitsanfälligkeit. auch auf einem System, das nicht über eine separate Firewall verbunden ist. Die einzige erhebliche Sicherheitsanfälligkeit in einer vollständig geschlossenen Konfiguration besteht darin, dass die TCP / IP-Stack-Implementierung des Kernels eine Sicherheitsanfälligkeit aufweist. Aber die Pakete durchlaufen bereits den Netfilter-Code (iptables) im Kernel, und dort könnte auch ein Fehler lauern. Die Logik für die Reaktion auf das, was dazu führt, dass eine "Verbindung verweigert" wird, ist so einfach, dass ich nur schwer davon ausgehen kann, dass es sich um eine Hauptquelle für Fehler handelt, geschweige denn um sicherheitsrelevante Fehler.

Drittens werden Pakete normalerweise als root installiert, von wo aus Sie (das Paket) die iptables-Regeln ohne Ihr Wissen ändern können. Es ist also nicht so, als müsste der menschliche Administrator den Datenverkehr durch die Host-Firewall manuell zulassen. Wenn Sie diese Art der Isolierung wünschen, sollten Sie eine Firewall haben, die von dem Host getrennt ist, den sie in erster Linie schützt.

Ich habe gerade von iptables erfahren, aber ich denke, die Frage bleibt immer noch so wie bei iptables, da die Firewall den meisten eher unbekannt zu sein scheint, ihre Standardregeln und die Zugänglichkeit und Benutzerfreundlichkeit.

Eigentlich würde ich sagen, dass das Gegenteil der Fall ist. iptables als Firewall ist bekannt . Es ist auch auf praktisch jedem Linux-System verfügbar, auf das Sie wahrscheinlich stoßen. (Sie ersetzte ipchains während der Entwicklung, die etwa im Jahr 2000 zur Linux-Kernel-Version 2.4 führte. Wenn ich mich richtig erinnere, war die größte vom Benutzer sichtbare Änderung zwischen den beiden für den allgemeinen Anwendungsfall von Firewalling die eingebaute Regel Ketten wurden jetzt in Großbuchstaben, wie INPUT, anstelle von Kleinbuchstaben, wie, benannt input.)

Wenn überhaupt, kann iptables Dinge tun , andere als Firewalling , die nicht weit verbreitet sind oder verstanden. Beispielsweise können damit IP-Pakete neu geschrieben werden, bevor sie durch die Firewall geleitet werden.

ein CVn
quelle
Hervorragende und detaillierte Zusammenfassung des Problems. Sie haben jedoch geschrieben: "Zweitens ist ein geschlossener Port keine erhebliche Sicherheitsanfälligkeit, selbst auf einem System, das nicht über eine separate Firewall verbunden ist." Wollten Sie vielleicht "open" schreiben? Wenn nicht, können Sie erläutern, inwiefern ein geschlossener Port eine Sicherheitsanfälligkeit darstellt? Vielen Dank.
Faheem Mitha
"Wenn ich mich recht entsinne, ersetzte es einige Zeit ipchains in der Kernel 2.5-Entwicklung. Das ist ungefähr 15 Jahre her." - 2.3 eigentlich. Das macht es näher an 20.
Jules
Ausgezeichnete Antwort, einverstanden. Ich würde auch hinzufügen, dass, wenn Sie von der minimal möglichen Installations-Iso, derzeit netinstall, installieren, ein Teil des Installationsprozesses darin besteht, die Pakete von apt über das Netzwerk zu installieren, damit Ihre Installation nicht veraltet ist, es ist Das ist genau das, was Sie möchten. Sie können jedoch auch die Installation von der Festplatte auswählen, sodass für die Installation wirklich eine sofort funktionierende Netzwerkverbindung erforderlich ist. Aber diese Antwort war sehr gut.
Lizardx
1
Verspäteter Kommentar: "Denken Sie daran, dass Ubuntu als Fork von Debian begann und bis heute eine große Ähnlichkeit mit Debian aufweist." Soweit ich weiß, ist Ubuntu immer noch von Debian abgeleitet. Es ist keine Gabel.
Faheem Mitha
6

Wenn ich raten würde, ohne tatsächlich an der Spitze einer Generation von Debian-Entwicklern und -Wartern zu stehen, würde ich Folgendes raten:

Debian ist in erster Linie als Server-Betriebssystem konzipiert. Sowohl sid- als auch testing-Zweige haben den primären Zweck, den nächsten stabilen Zweig zu erstellen. Zum Zeitpunkt des Einfrierens werden sie eingefroren und der neue stabile Zweig wird aus dem Test genommen passiert mit Stretch.

Angesichts dessen würde ich weiter annehmen, dass ich dies mit einem Sysadmin-Freund bestätigen müsste, dass Datencenter-Firewalls externe Geräte sind, eine viel höhere Sicherheit (zumindest hofft man, dass dies der Fall ist) für die Server und die Hauptverwaltung Firewall-Aufgaben. Selbst in einem kleinen LAN mit einem Router ist dies der Fall. Der Router ist die Firewall. Ich verwende auf keinem meiner Systeme lokale Firewall-Regeln. Warum sollte ich das tun?

Ich denke, vielleicht verwechseln die Leute ihre lokalen Installationen von Desktop-Debian oder einem einzelnen Dateiserver in einem Büro oder zu Hause mit der eigentlichen Arbeit, die mit Debian verbunden ist, von der ich glaube, dass sie sich hauptsächlich auf den Produktionsgebrauch konzentriert.

Ich bin mir nicht sicher, aber nach über einem Jahrzehnt Debian-Nutzung habe ich das Gefühl, sowohl Entwickler als auch Unterstützer von Debian zu sein.

Ich kann das überprüfen, da es eigentlich eine gute Frage ist, aber ich vermute, dass echte Netzwerke an den Einstiegspunkten des Netzwerks durch eine Firewall geschützt sind, nicht pro Computer, oder zumindest ist dies die Grundidee, die möglicherweise die Grundlage sein könnte Debian. Außerdem würde der Systemadministrator, wenn dies nicht der Fall wäre, die Firewall-Regeln pro Computer einrichten und dabei so etwas wie Chefkoch verwenden, ohne sich auf eine Standardinstallation zu verlassen, was normalerweise nicht der Fall ist Um beispielsweise zu vertrauen, dass die standardmäßigen Debian-ssh-Konfigurationen nicht das sind, was ich persönlich als Standard verwenden würde, erlauben sie beispielsweise standardmäßig die Anmeldung als root, und es ist Sache des Systemadministrators, dies zu korrigieren, wenn sie dies für eine schlechte Praxis halten .

Das heißt, es gibt eine Kompetenzübernahme, die meines Erachtens für Debian in einigen anderen Distributionen fehlen könnte. Wie in ändern Sie, was Sie ändern möchten, erstellen Bilder, verwalten sie mit Site-Management-Software und so weiter. Das sind nur einige Möglichkeiten. Zum Beispiel würden Sie niemals die DVD verwenden, um einen neuen Server zu erstellen. Zumindest niemals in der Produktion. Sie würden wahrscheinlich so etwas wie die minimale Netzinstallation verwenden. Das ist es, was ich zum Beispiel immer verwende. Früher habe ich ein noch kleineres Image verwendet , aber sie haben es eingestellt). Wenn Sie sich ansehen, was in dieser Basisinstallation enthalten ist, bekommen Sie einen guten Eindruck davon, was Debian für entscheidend hält und was nicht. ssh ist zum Beispiel da. Xorg ist nicht, Samba ist nicht.

Man könnte sich auch fragen, warum sie als Standard-Desktop zu GNOME zurückgekehrt sind, aber dies sind nur Entscheidungen, die sie treffen und die ihre Benutzer im Grunde ignorieren, da Sie die Systeme so gestalten können, wie Sie es möchten (das heißt, um Xfce-Desktops zu erhalten, nehme ich an Ich kann Xdebian nicht installieren (wie in Xubuntu), sondern nur Debian Core, Xorg und Xfce und los geht's. In ähnlicher Weise würde ich, wenn ich eine Firewall wollte, diese konfigurieren, die Vor- und Nachteile kennenlernen, aber ich würde nicht persönlich erwarten, dass Debian mit dieser Funktion ausgeliefert wird. Wenn dies der Fall wäre, wäre es für mich wirklich ärgerlich . Vielleicht spiegeln meine Ansichten dazu eine Art Konsens wider, den Sie vielleicht auch intern in Debian finden.

Außerdem gibt es so etwas wie Debian wirklich nicht, es gibt verschiedene Installationsimages, netinstall, full install, diese variieren alle von Barebones, nur CLI, bis zu einem einigermaßen vollständigen Benutzerdesktop. Produktionsbenutzer würden wahrscheinlich Bilder erstellen, die so konfiguriert würden, wie der Benutzer es wünscht. Ich weiß, wenn ich einen Debian-Server einrichten würde, würde ich mit den Grundlagen beginnen und sie aufbauen, bis sie das tun, was ich wollte.

Dann haben Sie die Welt der Webserver, die ein ganz anderer Wachsball sind, die ganz andere Sicherheitsfragen haben, und, wie ein alter Freund von mir, der gut mit dem Hacker-Untergrund verbunden ist, sagte, jemand, der einen Webserver betreibt, ohne zu wissen, wie man sichert Man kann es auch jemanden nennen, dessen Server Crackern gehört.

Lizardx
quelle
Ich mag normalerweise keine langen Antworten wie diese :), aber Sie berühren einen sehr relevanten Punkt. Wenn Sie einen Webserver ausführen, muss dieser Verbindungen zum Webserver akzeptieren. Es ist fraglich, welchen Wert die Konfiguration einer zweiten Software hat, um zu sagen: Ja, ich möchte Webanfragen annehmen, die an meinen Webserver gesendet werden. Und dieser Anwendungsfall scheint in Debian besser aufgehoben zu sein als der Desktop.
Sourcejedi
sourcejedi, lol, wäre es nicht lange her, wäre ich nicht auf die Webserver-Frage gekommen, das war das Letzte, was ich hinzugefügt habe. In diesem Fall haben Sie jedoch einen Benutzer, der eindeutig neu und weniger erfahren ist und möglicherweise nicht erkennt, dass verschiedene Distributionen radikal unterschiedliche Anwendungsfälle und Benutzer abdecken. Sie haben also im Grunde keine Informationen und zu diesem Zeitpunkt ist es schwer zu wissen, was sie wissen und nicht wissen, also zu viele Wörter. Oder gerade genug. Schwer zu wissen.
Lizardx
"Außerdem gibt es natürlich wirklich kein Debian". Ich bin mir nicht sicher, was Sie damit meinen - es gibt definitiv so etwas wie Debian. Es ist das Betriebssystem, das vom Debian-Projekt produziert wird. Technisch ist es eine Familie von Betriebssystemen, aber natürlich ist die Linux-Variante sehr dominant. Es gibt verschiedene Installationsmethoden, die jedoch alle dasselbe System installieren. Natürlich haben Sie viel Freiheit darüber, welche Teile davon installiert werden sollen.
Faheem Mitha
Nicht im Sinne einer Sache. Was Sie als das anmerken, was es technisch ist, ist das, was ich meine. Das heißt, ist Debian das DVD-Installations-Image, auf das sich diese Person bezieht? Ist es die Kerninstallation, die Sie bei netinstall erhalten? Ist es der passende Paketpool für die spezifische Architektur? Ist es der Sid Pool dafür? Der Testpool? und so weiter. In Bezug auf die Art und Weise, wie Benutzer Dinge definieren, würde ich sagen, dass es solche Dinge nicht gibt. Tatsächlich gibt es das Projekt Debian, das die Verpackungsregeln und Pakete regelt, die apt und .deb definieren. Deshalb gefällt es mir übrigens, es sind die Regeln, die das Projekt definieren.
Lizardx
Schwer zu erklären, aber ich werde versuchen: Ich installiere 'Debian' nicht, ich installiere zB Debian Testing / Buster, 64-Bit-Variante, von der Netinstall-ISO. Debian ist also der Regenschirm, der läuft und erstellt, was ich installiere. Dies ist, was ich im Laufe der Jahre gemerkt habe, warum ich Debian so sehr mag, sie haben strenge Regeln, und diese Regeln definieren für mich wirklich etwas wie Debian und nicht Ubuntu. Wenn Sie zum Beispiel eine Reihe von Paketen aus Debian nehmen und Ubuntu erstellen, wann hört es dann auf, Debian zu sein? Zumindest für eine Weile sind es die gleichen Pakete, und ich würde vorschlagen, dass sie aufhören, wenn Sie die DFSG-Regeln nicht mehr befolgen.
Lizardx
5

Die allgemeine Idee ist, dass Sie auf den meisten Systemen keine Firewall benötigen sollten, mit Ausnahme komplexer Setups.

SSH wird ausgeführt, als Sie einen Server installiert haben. Nichts anderes sollte zuhören und Sie möchten wahrscheinlich in der Lage sein, sich mit ssh zu verbinden.

Wenn Sie einen Webserver installieren, erwarten Sie, dass der Webserver verfügbar ist, nicht wahr? Und für die Grundeinstellung können Sie den Webserver nur an die private LAN-Schnittstelle binden, z. B. 192.168.172.42 (Ihre lokale LAN-IP) anstelle von 0.0.0.0 (alle IPs). Sie benötigen noch keine Firewall.

Natürlich kann alles einen Port> 1024 öffnen, aber wenn Sie nicht vertrauenswürdige Software (oder nicht vertrauenswürdige Benutzer) haben, sollten Sie mehr tun, als nur eine Firewall zu installieren. In dem Moment, in dem Sie etwas oder jemandem misstrauen müssen, benötigen Sie ein Sicherheitskonzept, nicht nur eine Software. Es ist also eine gute Sache, wenn Sie aktiv über Ihre Firewall-Lösung nachdenken müssen.

Jetzt gibt es natürlich komplexere Szenarien. Aber wenn Sie tatsächlich eines davon haben, müssen Sie die Firewall wirklich selbst fein abstimmen und lassen Sie es nicht zu, dass ein halbautomatisches System wie ufw dies tut. Oder Sie können sogar ufw verwenden, aber dann haben Sie es entschieden und nicht die Standardeinstellung des Betriebssystems.

allo
quelle
1
IIRC, Firewalls für PCs, waren eine Reaktion auf eine der Sicherheitslücken in Windows 95, bei denen standardmäßig alle Ports geöffnet waren. Bei den meisten Betriebssystemen ist ein Port vor und nach dem Öffnen nur dann geöffnet, wenn tatsächlich ein Dienst an diesem Port empfangsbereit ist. Zweitens sind Firewalls häufig so konfiguriert, dass sie Pakete im Hintergrund ablegen, anstatt sie explizit abzulehnen, sodass es schwierig ist, festzustellen, ob ein System überhaupt über eine IP-Adresse verfügt.
BGVAUGHAN
Ich bin mir nicht sicher, was Sie mit einem offenen Port ohne Abhördienst meinen. Wohin sollte das Paket gehen und warum sollte dies eine Sicherheitslücke sein? Und wenn Sie Pakete in Ihrer Firewall ablegen, werden Sie zwar nicht ausgeblendet, es wird jedoch noch deutlicher, dass es einen Computer mit einer Firewall gibt. Wenn Ihr System nicht online ist, sendet der Router vor Ihrem System eine "nicht erreichbare" Antwort. Dies ist nicht der Fall, wenn Ihr Computer vorhanden ist (auch nicht, wenn Sie Pakete annehmen, ablehnen oder verwerfen). Sie können den Effekt selbst überprüfen, indem Sie a tracerouteauf Ihrem System ausführen.
Allo
1
Wenn ich eine Traceroute zu Ihnen beginne, sehe ich möglicherweise 7 Hopfen. Der erste ist mein PC, der letzte ist der Einstiegspunkt in Ihr Netzwerk. Wenn Ihr PC offline ist, sendet der 6. Hop eine "nicht erreichbare" Antwort. Wenn Ihr PC verbunden, aber durch eine Firewall geschützt ist, sendet der 6. Hop eine normale Antwort und der 7. Hop verwirft das Paket (oder lehnt es ab). Und Sie haben keine Kontrolle über den 6. Hop, also können Sie dort keine Pakete fälschen oder ablegen.
Allo
1
"Ältere Windows-Systeme, wie 95 und XP, würden alle Ports offen halten, selbst wenn keine Dienste ausgeführt würden." Ich habe absolut keine Ahnung, was Sie damit meinen, einen Port offen zu halten, ohne ihn abzuhören. Wenn ein Paket eingeht, können Sie es entweder an ein Hörprogramm senden, rejectes oder dropes. Es gibt kein "Port open without listening" -Konzept. Vielleicht meinst du das Löschen (akzeptieren, ohne es an ein Programm zu senden).
Allo
1
Persönlich habe ich eine Standard-Firewall sowie einen sicheren Fallback verweigern. Aber ich verstehe, wenn Debian den Benutzer die Firewall installieren lässt. Ich experimentiere viel, andere wählen Webserver in tasksel und sind fertig. Keine Ahnung von der Win95-Sache, aber ich denke, es ist heute sowieso egal;).
Allo
4

Wird von den Leuten erwartet, dass sie sich vorher mit dem Internet verbinden?

Ja

eine Firewall bekommen?

Auch wenn standardmäßig alle Ports geschlossen sind

Entschuldigung, das sind sie nicht. rpcbindscheint standardmäßig im Netzwerk installiert, aktiviert und empfangsbereit zu sein.

EDIT: Ich glaube, dies wurde im neuesten Installer behoben, dh für Debian 9 (Stretch) . Aber mit früheren Versionen von Debian würde ich mich nicht sehr sicher fühlen, wenn ich sie in einem öffentlichen WLAN-Netzwerk installiere (und dann aktualisiere).

Warum?

Ich vermute, die Leute gehen davon aus, dass

  1. Das lokale Netzwerk greift Ihre Netzwerkdienste nicht an
  2. Zwischen Ihrem lokalen Netzwerk und dem weiteren Internet befindet sich bereits eine Firewall.

Letzteres ist zum Beispiel bei Consumer-Routern üblich, ich glaube jedoch nicht, dass es garantiert ist. Es überrascht nicht, dass die frühere Annahme nicht dokumentiert ist. noch ist es eine vernünftige.

Meiner Meinung nach ist das Problem mit rpcbind ein Beispiel für einen allgemeineren Punkt. Die Leute können versuchen, Debian zu promoten, und es hat viele coole Funktionen. Aber Debian hinkt Ubuntu hinterher, wie gut und freundlich es ist oder wie zuverlässig es für diejenigen ist, die solche Details lernen wollen .

Heruntergeladene Programme könnten sie öffnen (oder nicht?) und ich wünsche mir, dass nicht ein einziges Bit meine Maschine ohne meine Erlaubnis verlässt.

Es steht Ihnen natürlich frei, eine Firewall zu installieren, bevor Sie mit dem Herunterladen und Ausführen von zufälliger Software beginnen, bei der Sie sich nicht sicher sind, was sie bewirkt :-p.

Ich stimme teilweise zu, es ist alarmierend, Linux zu installieren und keine Schnittstelle zu finden, die für eine sehr bekannte Sicherheitsschicht eingerichtet ist. Persönlich fand ich es nützlich zu verstehen, wie die Standard-Windows-Firewall eingerichtet ist. Sie möchten, dass Sie einem Heimnetzwerk "vertrauen" können. In neueren Versionen wird bei der Express-Installation sogar übersprungen, ob Sie dem aktuellen Netzwerk vertrauen. Das Hauptziel scheint darin zu bestehen, zwischen Heimnetzwerken, ungeschützten Verbindungen wie einem direkt angeschlossenen Modem und öffentlichen WLAN-Netzwerken zu unterscheiden. Beachten Sie, dass UFW dies sowieso nicht unterstützt.

Fedora Linux allein hat versucht, so etwas bereitzustellen firewalld. (Pakete scheinen auch in Debian verfügbar zu sein ...). Die GUI dafür ist nicht so "freundlich", sagen wir mal, wie GUFW.

sourcejedi
quelle
Ich bin froh, dass Sie den Kommentar zu Ubuntu mit "für jemanden, der versucht zu lernen" qualifiziert haben. In gewissem Sinne ist dies die eigentliche Antwort. Debian ist kein System, das für diese Gruppe entwickelt wurde, und Ubuntus Existenz könnte tatsächlich auf diese Tatsache zurückzuführen sein. Als jemand, der nicht versucht zu lernen, ist das genau der Grund, warum ich zum Beispiel immer Debian gegenüber Ubuntu bevorzuge. Früher habe ich mit lokalen Firewalls gespielt, aber am Ende habe ich angefangen, sie eher als Spielzeug als als echte Hilfsprogramme zu betrachten. Ich meine Gui-Sachen, nicht Iptables usw. Ihre 1. und 2. Punkte decken meiner Meinung nach das Denken hinter dieser Entscheidung ab. Ich stimme dieser Entscheidung übrigens zu.
Lizardx
@Lizardx Ich habe bearbeitet, um zu betonen, wie entmutigend ich die Situation mit rpcbind + öffentlichen WLAN-Netzwerken finde :). Ich glaube, ich weiß, woher du in diesem Kommentar kommst, aber ich stimme nicht ganz zu. Ich bin froh, Zugriff auf ein Arsenal von Waffen im Repo zu haben, aber ich habe gerne einen definierten Standard (oder mehrere, wenn Sie z. B. XFCE als die beliebte Option "nicht GNOME3" zählen) als zuverlässige Basis, aus der ich aufbauen kann .
Sourcejedi
Öffentliches WLAN ist offensichtlich der Anwendungsfall, bei dem Firewalls auf einem System für reguläre Benutzer von großer Bedeutung sind. Aber wie in anderen Antworten angegeben, geht Debian davon aus, dass Sie dies wissen, wenn Sie es installieren und zufällig auf diese Weise verwenden. Vielleicht näher dran, wie FreeBSD oder OpenBSD diese Frage sehen könnten? Da ich nur für mich spreche, bin ich ein RIESIGER Nicht-Fan von Debian-Standardpaketgruppenauswahl. Ich habe noch nie gesehen, dass sie etwas erstellen, das ich eigentlich ausführen möchte, im Gegensatz zu XUbuntu oder verschiedenen Debian-Spins, die nette Standardinstallationen erstellt haben . Ich bin damit einverstanden, dass eine Option, die nicht GNOME 3, XFCE ist, sehr schön wäre.
Lizardx
4
Gufw ist schrecklich. ufw macht fast keinen Sinn und speichert es die Regeln nicht in XML? Pfui. Selbst ein manueller iptables-Regelsatz ist einfacher zu handhaben.
user2497
3

Die traditionelle Philosophie von Unix war es immer, KISS zu betreiben und das Minimum an Diensten verfügbar zu machen.

Es müssen auch mehrere Dienste explizit installiert werden, und sogar einige werden an localhost gebunden, und Sie müssen aktivieren, dass sie in Ihrem lokalen Netzwerk / im Internet sichtbar sind (MySQL, MongoDB, snmpd, ntpd, xorg ...). Dies ist sinnvoller als die standardmäßige Aktivierung einer Firewall.

Sie brauchen nur die Komplexität, die eine Firewall von einem bestimmten Punkt an mit sich bringt, und diese Notwendigkeit kann dadurch verringert werden, dass sie sich hinter einem Unternehmensrouter oder einem Heimnetzwerk befindet. Daher ist es sinnvoll, diese Entscheidung dem Benutzer zu überlassen. Eine Firewall kann wie so viele andere Sicherheitssoftware auch ein falsches Sicherheitsgefühl hervorrufen, wenn sie nicht ordnungsgemäß verwaltet wird.

Die Orientierung von Debian war immer die technisch orientiertere, die weiß, was iptables ist; Es gibt auch einige bekannte Wrapper, Text- oder Grafikschnittstellen, die einfach installiert werden können.

Ob nun zu viel oder zu wenig Software installiert ist, ist darüber hinaus Ansichtssache. Für einen langjährigen Veteranen ist zu viel Software und Dienste standardmäßig installiert, insbesondere im Servermodus.

Rui F Ribeiro
quelle