Frage Warum brauche ich eine Firewall, wenn mein Server gut konfiguriert ist?


Ich verwalte eine Handvoll cloudbasierter (VPS) Server für das Unternehmen, für das ich arbeite.

Die Server sind minimale Ubuntu-Installationen, die Bits von LAMP-Stacks / eingehenden Datensammlungen (rsync) ausführen. Die Daten sind groß, aber nicht persönlich, finanziell oder ähnlich (dh nicht so interessant)

Offensichtlich fragen die Leute hier immer nach dem Konfigurieren Firewalls und dergleichen.

Ich verwende eine Reihe von Ansätzen, um die Server zu sichern, zum Beispiel (aber nicht beschränkt auf)

  • SSH auf Nicht-Standard-Ports; kein Passwort eingeben, nur bekannte SSH - Schlüssel von bekannten ips zum Login etc
  • https und restricted shells (rssh) im Allgemeinen nur von bekannten Schlüsseln / ips
  • Server sind minimal, auf dem neuesten Stand und regelmäßig gepatcht
  • Verwenden Sie Dinge wie rkhunter, cfengine, lynis denyhosts usw. zur Überwachung

Ich habe umfangreiche Erfahrung von Unix-Systemadministrator. Ich bin mir sicher, dass ich weiß, was ich in meinen Setups mache. Ich konfiguriere / etc Dateien. Ich habe nie ein zwingendes Bedürfnis verspürt, Sachen wie Firewalls zu installieren: iptables usw.

Legen Sie für einen Moment die Fragen der physischen Sicherheit des VPS beiseite.

Q? Ich kann nicht entscheiden, ob ich naiv bin oder der inkrementelle Schutz, den ein fw bieten kann, ist die Mühe des Lernens / Installierens und der zusätzlichen Komplexität (Pakete, Konfigurationsdateien, mögliche Unterstützung usw.) auf den Servern wert.

Bis jetzt (Holz berühren) hatte ich noch nie Probleme mit der Sicherheit, aber ich bin auch nicht selbstgefällig darüber.


57
2018-02-08 12:50


Ursprung


Siehe auch: serverfault.com/questions/201298/why-should-i-firewall-servers - splattne
Du solltest es bei über probieren Sicherheit.stackexchange.com - AviD
Gib mir deine IP-Adresse und ich werde Show Warum brauchst du eine Firewall? - GregD


Antworten:


Ich nehme zur Kenntnis, dass Sie einen großen Job gemacht haben, indem Sie mehrere verschiedene Dämonen binden, und von dem, was Sie gesagt haben, halte ich es für unwahrscheinlich, dass Sie sich durch die Dienste, die Sie bereits gesichert haben, Ärger machen. Dies lässt dich immer noch in einem "Alles ist erlaubt, außer dem, was ich verboten habe" -Zustand, und du kannst diesen Zustand nicht verlassen, indem du einen Daemon nach dem Dämon jagst und sie einzeln einsammelst.

Eine Firewall konfiguriert für VERMEIDEN SIE JEDES Standardmäßig bewegt man sich zu einer Betriebsart "alles ist verboten, außer was erlaubt ist" und ich habe über viele Jahre festgestellt, dass sie besser sind.

Wenn Sie jetzt einen legitimen Benutzer mit einer legitimen Shell auf Ihrem System haben, könnte sie entscheiden, einen lokalen unprivilegierten Daemon für das Proxys von Webanfragen für das Internet auszuführen oder die Dateifreigabe auf Port 4662 zu starten oder versehentlich einen Listener mit -g zu öffnen mit SSH-Port-Tunneling, nicht zu verstehen, was es tut; oder eine sendmail-Installation kann dazu führen, dass Sie einen MUA auf Port 587 ausführen, der trotz all der Arbeit, die Sie beim Sichern des MTA-Senders auf Port 25 ausgeführt haben, falsch konfiguriert wurde. oder einhundertundein Dinge könnten passieren, die Ihre sorgfältige und nachdenkliche Sicherheit umgehen, einfach weil sie nicht da waren, wenn Sie genau darüber nachdachten, was Sie verbieten sollten.

Siehst du meinen Standpunkt? Im Moment haben Sie sich viel Mühe gegeben, all die Dinge zu sichern, von denen Sie wissen, und es klingt, als würden sie Sie nicht beißen. Was dich beißen mag, sind die Dinge, von denen du nichts weißt oder die gerade nicht da sind.

Eine Firewall, die standardmäßig auf VERMEIDEN SIE JEDES Das ist der Sysadmin-Weg, das zu sagen Wenn etwas Neues auftaucht und einen Netzwerk-Listener auf diesem Server öffnet, kann niemand mit ihm sprechen, bis ich die ausdrückliche Erlaubnis dazu gegeben habe.


85
2018-02-08 13:07



Das ist eine sehr aufschlussreiche Antwort, vor allem der Text über das Umdrehen von "alles ist erlaubt ..." bis "alles ist verboten ..." Ihr Punkt wird auch gut über lokale Dämonen gemacht. Wie es oft der Fall ist - ich bin sicher, Sie werden mir zustimmen - die Gefahr liegt oft im "Inneren" - Aitch
(Aitch, wenn ich ein wenig annehmen darf, Ihr Profil weist darauf hin, dass Sie bei Serverfault neu sind. Die lokale Etikette ist, dass Sie, wenn Sie mit einer Antwort zufrieden sind, diese akzeptieren, indem Sie auf den Tick-Umriss klicken. Das treibt natürlich das Reputationssystem an. Natürlich, wenn du das bereits weißt oder darauf wartest, ob andere, bessere Antworten auftauchen, dann ist das auch richtig und richtig, und bitte ignoriere mich. Die Community fragt das nur einmal Du bist völlig zufrieden mit einer Antwort auf deine Frage, du akzeptierst sie.) - MadHatter
+1 @MatHatter - eine gute Beschreibung, wie Firewalls standardmäßig Sicherheit bieten können, anstatt zu wählen. - Coops
Es ist ein kalkuliertes Risiko. Zumindest unter OpenBSD fügt das Aktivieren von pf 35K Codezeilen im Kernel hinzu, die möglicherweise Fehler enthalten. Auf der anderen Seite ist eine default - und ordnungsgemäße Logging Firewall - das beste IDS - Geld, das man kaufen kann. Hör auf, Snort zu benutzen, um nach schlechten Dingen Ausschau zu halten: Jedes Mal, wenn deine Maschinen etwas tun, was du nicht ausdrücklich erlaubst, solltest du benachrichtigt werden. - Alex Holst


Prinzip der geringsten Rechte. Eine Firewall hilft Ihnen dabei. Prinzip der Verteidigung in der Tiefe. Eine Firewall hilft dir auch dabei. Jede gut entworfene Konfiguration stützt sich explizit auf diese beiden auf die eine oder andere Weise.

Eine andere Sache ist, dass Ihre Server höchstwahrscheinlich Standardhardware oder Hardware-spezifisch für die Handhabung von Server-Software sind, die auf einem Standard-Server-Betriebssystem läuft (Unix, NT, Linux). Das heißt, sie haben keine spezialisierte Hardware, um eingehenden Datenverkehr effizient zu handhaben und zu filtern. Möchten Sie, dass Ihr Server alle möglichen Multicast-, ICMP-Paket- oder Port-Scans verarbeitet?

Höchstwahrscheinlich möchten Sie, dass Ihre Server Anfragen nur an einige Ports (80, 443, Ihren ssl-Port, Ihren typischen oracle 1521-Port, Ihren rsync-Port usw.) physikalisch behandeln. Ja, natürlich richten Sie Software-Firewalls auf Ihrem Server ein Server, nur diese Ports zu hören. Aber Ihre NICs werden immer noch die Hauptlast von unerwünschtem Verkehr tragen (sei es bösartig oder normal in Ihrer Organisation). Wenn Ihre NICs gehämmert werden, sind auch die Netzwerkpfade durch Ihre Server (und möglicherweise zwischen Ihren Servern und internen Clients und Verbindungen zu) andere interne Server und Dienste.)

Nicht nur Ihre NICs werden gehämmert, Ihre Software-Firewall wird auch beschäftigt sein, da sie jedes einzelne Paket oder Datagramm prüfen muss, das sie bekommt.

Firewalls auf der anderen Seite, speziell solche an den Rändern von Subnetzen (oder Trennen Ihrer Subnetze von der Außenwelt), sind in der Regel spezialisierte Hardware, die speziell für die Handhabung dieses Volumentyps entwickelt wurde.

Sie können N Server mit M Firewalls (mit N >> M) umgeben. Und Sie legen fest, dass Ihre Firewall-Hardware alles ableckt, was nicht an bestimmte Ports gerichtet ist. Port Scans, ICMPs und andere Mist sind out. Dann stimmen Sie die Software-Firewall in Ihren Servern entsprechend ihrer spezifischen Funktion ab.

Jetzt haben Sie die Wahrscheinlichkeit eines totalen Blackouts reduziert (aber nicht eliminiert), indem Sie ihn auf eine Partitionierung des Netzwerks oder im schlimmsten Fall auf einen Teilausfall reduzieren. Und so haben Sie die Fähigkeit Ihres Systems erhöht, einen Angriff oder eine Fehlkonfiguration zu überleben.

Keine Firewall zu haben, weil Ihre Server einen haben, ist wie das Gefühl, sicher zu sitzen, wenn Sie bei 120mph unter Nullsichtbarkeit wegen Nebel fahren. Es funktioniert nicht so.


13
2018-02-08 21:08





Es gibt viele Angriffe, denen Sie ausgesetzt sein könnten, wenn Sie keine Firewall haben, die eine Art von Paket-Level-Inspektion durchführt:

Beispiel ist die Weihnachtsbaum Paket

http://en.wikipedia.org/wiki/Christmas_tree_packet

DDOS-Angriffe können gegen Ihr System ausgeführt werden. Eine Firewall (möglicherweise extern, bevor einer Ihrer Server) würde den Datenverkehr stoppen / verlangsamen / beenden, bevor er Ihre Server lähmt.

Gerade da Sie haben keine finanziellen oder persönlichen Daten auf den Servern bedeutet nicht, dass Sie nicht verletzt werden. Ich bin sicher, dass Sie für die Bandbreite oder die CPU-Nutzung bezahlen, oder Sie haben eine gemessene Rate. Stellen Sie sich im Laufe einer Nacht (während Sie schlafen) jemand rennt Ihr Meter (ich habe gesehen, dass dies mit VOIP-Switch-Provider passieren, in der Nacht für Millionen von Minuten Verkehr, dass sie die Rechnung bezahlen muss).

Also sei schlau, benutze den Schutz, wenn es da ist, du bist NICHT PERFEKT, auch keine Software. Es ist nur sicher, bis der nächste Exploit gefunden wird. ;)


4
2018-02-08 19:27





Wenn Sie ein Prinzip der geringsten Rechte ohne eine Firewall durchsetzen können, brauchen Sie diese wahrscheinlich nicht. Aus meiner Sicht erfordert der Aufbau eines sicheren Systems ohne Verwendung einer Firewall mehr Aufwand, und ich bin ziemlich faul. Warum sollte ich TCP-Verbindungen mit anderen Tools und wahrscheinlich vielen Konfigurationsdateien einschränken, wenn ich Berechtigungen auf einer Transportebene mit einer einzigen Konfiguration trennen kann?


2
2018-02-08 13:01



Guter Punkt über die einzelne Konfiguration, weniger Platz für Fehler. Ich stimme zu, faul zu sein, wo immer es möglich ist! cfengine entzieht dieser Komplexität einiges, um das Problem vieler Konfigurationsdateien teilweise zu mildern ... aber ... es ist nur so gut wie die Regeln, die natürlich geschrieben werden. So lassen Sie die meisten Konfigurationsdateien auf "Standard" (oder nahe wie) als eine sekundäre Barriere und haben die Firewall als (zumindest in einer Schicht Sinne) die Hauptsorge. - Aitch
Ich wurde zuerst für PoLP revoziert, dann für Faulheit abgelehnt. Firewalls sind keine Werkzeuge, die ihren Besitzern erlauben, schlampig zu sein. Sie sollten sich darum bemühen, Ihre Angriffsfläche zu straffen, denn wenn der Angreifer durch die Firewall geht (nachdem Sie etwas geöffnet haben), können Sie Iptables einfach ausschalten. Trage deine Faulheit dort auf, wo sie hingehört: Mach das System so schlagsicher wie möglich, damit du es nicht für lange Zeit reparieren musst. - Marcin
@Marcin: Wenn jemand ein System ohne Firewall sichern will, muss er zuerst ein umfassendes Bedrohungsmodell erstellen. Firewalls beinhalten ein bekanntes und gut beschriebenes Bedrohungsmodell, sodass ich es nicht für jeden Host von Grund auf neu erstellen muss. Natürlich, wenn wir über eine militärische Sicherheit sprechen, gibt es keine Wahl, ein formales Bedrohungsmodell sollte aufgebaut werden. - Alex


Eine Firewall kann auch verhindern, dass unerwünschte Pakete Ihre Server erreichen. Anstatt mit ihnen auf der individuellen Server-Ebene umzugehen, können Sie sie an der Firewall behandeln. Sie können alle diese Konfigurationsaktivitäten auf der einzelnen Firewall statt auf mehreren Servern beibehalten.

Wenn beispielsweise ein Angreifer die Kontrolle über eine externe IP-Adresse erlangt hat und Ihre Server mit unerwünschten Paketen überschwemmt wird und Sie die Auswirkungen auf Ihre Server mindern möchten, können Sie entweder alle betroffenen Server so konfigurieren, dass die schädlichen Pakete gelöscht werden oder einfach die Änderung an Ihrer Firewall vornehmen und alle Ihre Server sind geschützt. Die Firewall hat Ihre Reaktionszeit verkürzt.


1
2018-02-08 17:37



Dazu muss man sowieso eine Firewall konfigurieren - sie befindet sich zufällig auf jedem Server. - mfinni


Sie oder jemand anderes könnte eines Tages einen Fehler bei der Einrichtung Ihres Servers machen, eine Firewall bietet Ihnen dann eine zweite Chance, jemanden daran zu hindern. Wir sind nicht perfekt, wir machen Fehler, und deshalb kann sich eine "unnötige" Versicherung lohnen .

(Versuchen Sie nicht, Ihre Firewall auf der gleich OS als deine Server, da sonst ein einziger Fehler im OS .... Ich halte alle Versionen von Unix für das gleiche OS, da sie so viel gemeinsam haben)


1
2018-02-08 22:26



Exzellente Vermischung von Plattformen (Betriebssystem und Hardware) ist der Schlüssel. - DutchUncle


Firewalls werden bei der Verkehrsmanipulation verbreitet. Sie machen es schnell und haben Ressourcen. Und Sie verschwenden keine Server-Ressourcen, um den Datenverkehr zu filtern (Disk io / proc time / etc). Sie sollten einige Sicherheitseinstellungen in der Serverumgebung konfigurieren, aber alle Traffic-Inspektionen und Virenscans usw. sollten spezialisierte Server ausführen.


0
2018-04-19 08:50





Ich wäre besorgt, wenn Sie jemals gehackt werden und keine Firewall an Ort und Stelle haben. Die Hacker könnten andere Ports auf Ihren Servern öffnen. Wenn ein Berater hinzugezogen wird, um etwas zu säubern und zu auditieren, werden sie als erstes sagen: "WAS?!?! Sie haben keine Firewall!" Dann könntest du verbrannt werden.


-2
2018-02-08 15:21



-1 Ein bisschen sensationelle Antwort + nicht wirklich konstruktiv. - Coops
Wenn der Server kompromittiert ist, wird eine Firewall nicht unbedingt helfen, wenn der eingebrochene Bozo ihn einfach deaktiviert! * Disclaimer, die Frage erwähnt mit iptables, nicht eine separate Hardware-Firewall. - Bryan