Ich verwalte eine Handvoll Cloud-basierter (VPS) Server für das Unternehmen, für das ich arbeite.
Bei den Servern handelt es sich um minimale Ubuntu-Installationen, bei denen Bits der LAMP-Stapel / eingehenden Datenerfassung (rsync) ausgeführt werden. Die Daten sind groß, aber nicht persönlich, finanziell oder ähnliches (dh nicht so interessant)
Offensichtlich fragen die Leute hier immer wieder nach der Konfiguration von Firewalls und dergleichen.
Ich verwende eine Reihe von Ansätzen, um beispielsweise die Server zu sichern (aber nicht darauf beschränkt)
- ssh auf nicht standard Ports; Keine Passworteingabe, nur bekannte SSH - Schlüssel von bekannten IPS für die Anmeldung usw
- https und eingeschränkte Shells (rssh) im Allgemeinen nur von bekannten Schlüsseln / ips
- Die Server sind minimal, auf dem neuesten Stand und werden regelmäßig gepatcht
- Verwenden Sie Dinge wie Rkhunter, Cfengine, Lynis Denyhosts usw. für die Überwachung
Ich habe umfangreiche Erfahrung mit Unix Sys Admin. Ich bin zuversichtlich, dass ich weiß, was ich in meinen Setups mache. Ich konfiguriere / etc Dateien. Ich hatte noch nie das dringende Bedürfnis, Dinge wie Firewalls zu installieren: Iptables usw.
Stellen Sie für einen Moment die Fragen der physischen Sicherheit des VPS beiseite.
Q? Ich kann mich nicht entscheiden, ob ich naiv bin oder ob der inkrementelle Schutz, den eine fw bietet, den Lern- / Installationsaufwand und die zusätzliche Komplexität (Pakete, Konfigurationsdateien, mögliche Unterstützung usw.) auf den Servern wert ist.
Bisher (touch wood) hatte ich noch nie Probleme mit der Sicherheit, aber ich bin auch nicht selbstgefällig.
quelle
Antworten:
Ich stelle fest, dass Sie eine großartige Arbeit geleistet haben, indem Sie mehrere verschiedene Dämonen zusammengebunden haben, und nach Ihren Angaben halte ich es für unwahrscheinlich, dass Sie sich durch die Dienste, die Sie bereits gesichert haben, Problemen aussetzen. Dies lässt Sie immer noch in einem "alles ist erlaubt, außer dem, was ich verboten habe" -Zustand, und Sie können diesen Zustand nicht verlassen, indem Sie Dämon für Dämon jagen und sie nacheinander sichern.
Eine Firewall, die standardmäßig auf DENY ANY ANY konfiguriert ist, versetzt Sie in den Betriebsmodus "Alles ist verboten, außer dem, was erlaubt ist", und ich habe über viele Jahre festgestellt, dass sie besser sind.
Derzeit kann eine legitime Benutzerin mit einer legitimen Shell auf Ihrem System entscheiden, einen lokalen nichtprivilegierten Dämon für die Weiterleitung von Webanforderungen 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 eine MUA auf Port 587 ausführen, die trotz aller Arbeit, die Sie beim Sichern der MTA-sendail auf Port 25 geleistet haben, nicht ordnungsgemäß konfiguriert wurde. oder es könnten einhundertdrei Dinge passieren, die Ihre sorgfältige und nachdenkliche Sicherheit umgehen, einfach weil sie nicht da waren, als Sie sorgfältig darüber nachdachten, was Sie verbieten sollten.
Verstehst du meinen Standpunkt? Im Moment haben Sie große Anstrengungen unternommen, um all die Dinge zu sichern, über die Sie Bescheid wissen, und es hört sich so an, als würden sie Sie nicht beißen. Was dich beißen mag, sind die Dinge, die du nicht kennst oder die noch nicht einmal da sind.
Eine Firewall, deren Standardeinstellung DENY ANY ANY ist, ist die sysadmin-Methode, die besagt, dass, wenn etwas Neues auftaucht und einen Netzwerk-Listener auf diesem Server öffnet, niemand mit ihm sprechen kann, bis ich die ausdrückliche Erlaubnis erteilt habe .
quelle
Grundsatz des geringsten Privilegs. Eine Firewall hilft Ihnen, dorthin zu gelangen. Prinzip der Verteidigung im Detail. Eine Firewall hilft Ihnen auch, dorthin zu gelangen. Jede gut gestaltete Konfiguration stützt sich explizit auf die eine oder andere Weise auf diese beiden.
Zum anderen handelt es sich bei Ihren Servern höchstwahrscheinlich um Standardhardware oder um Hardware, die speziell für die Verarbeitung von Serversoftware auf einem Standardserverbetriebssystem (Unix, NT, Linux) entwickelt wurde. Das heißt, sie verfügen nicht über spezielle Hardware, um eingehenden Datenverkehr effizient zu verarbeiten und zu filtern. Möchten Sie, dass Ihr Server jeden einzelnen möglichen Multicast-, ICMP-Paket- oder Port-Scan 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.) physisch bearbeiten. Ja, natürlich richten Sie auf Ihrem Server Software-Firewalls ein Server, um nur diese Ports abzuhören. Ihre NICs werden jedoch weiterhin die Hauptlast des unerwünschten Datenverkehrs tragen (ob bösartig oder normal in Ihrem Unternehmen). Wenn Ihre NICs überlastet werden, werden auch die Netzwerkpfade über Ihre Server (und möglicherweise zwischen Ihren Servern und internen Clients und Verbindungen zu Servern) übertragen andere interne Server und Dienste.)
Ihre Netzwerkkarten werden nicht nur beschädigt, sondern Ihre Software-Firewall wird auch aktiviert, da sie jedes einzelne Paket oder Datagramm überprüfen muss, das sie erhält.
Firewalls hingegen, insbesondere solche an den Rändern von Subnetzen (oder die Trennung Ihrer Subnetze von der Außenwelt), sind in der Regel Spezialhardware, die speziell für die Verarbeitung dieses Volumentyps entwickelt wurde.
Sie können N Server mit M Firewalls (mit N >> M) umgeben. Und Sie stellen Ihre Firewall-Hardware so ein, dass alle Daten gesichert werden, die nicht auf bestimmte Ports gerichtet sind. Port-Scans, ICMPs und sonstiger Mist sind raus. Anschließend passen Sie die Software-Firewall in Ihren Servern an die jeweilige Funktion an.
Jetzt haben Sie die Wahrscheinlichkeit eines vollständigen Stromausfalls reduziert (aber nicht beseitigt) und ihn schlimmstenfalls auf eine Aufteilung des Netzwerks oder einen teilweisen Ausfall reduziert. Auf diese Weise haben Sie die Fähigkeit Ihrer Systeme erhöht, einen Angriff oder eine Fehlkonfiguration zu überstehen.
Wenn Sie keine Firewall haben, weil Ihre Server eine haben, fühlen Sie sich sicher, wenn Sie den Sicherheitsgurt angelegt haben, während Sie mit 120 Meilen pro Stunde bei Nullsicht wegen Nebel fahren. So funktioniert das nicht.
quelle
Es gibt viele Angriffe, die Sie möglicherweise ausführen könnten, wenn Sie keine Firewall haben, die eine Art Paketebenenprüfung durchführt:
Beispiel ist das Weihnachtsbaumpaket
http://en.wikipedia.org/wiki/Christmas_tree_packet
DDOS-Angriffe könnten auf Ihrem System ausgeführt werden. Eine Firewall (möglicherweise vor einem Ihrer Server extern) würde den Datenverkehr stoppen / verlangsamen / beenden, bevor er Ihre Server lahmlegt.
Nur weil Sie keine finanziellen oder persönlichen Daten auf den Servern haben, bedeutet dies nicht, dass Sie nicht "verletzt" werden. Ich bin mir sicher, dass Sie für Bandbreite oder CPU-Auslastung zahlen oder eine gemessene Rate haben. Stellen Sie sich vor, im Laufe einer Nacht (während Sie schlafen) läuft jemand auf Ihrem Zähler hoch (ich habe gesehen, dass dies bei VOIP-Switch-Anbietern passiert, die in der Nacht für MILLIONEN MINUTEN Verkehr getroffen wurden, für die sie die Rechnung bezahlen müssen).
Seien Sie also schlau und nutzen Sie den Schutz, wenn er vorhanden ist. Sie sind NICHT PERFEKT, und Software ist es auch nicht. Es ist nur so lange sicher, bis der nächste Exploit gefunden wurde. ;)
quelle
Wenn Sie ein Prinzip mit den geringsten Rechten erzwingen können, ohne eine Firewall zu verwenden, benötigen Sie es 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 mir die Mühe machen, TCP-Verbindungen mithilfe anderer Tools und wahrscheinlich vieler Konfigurationsdateien einzuschränken, wenn ich Berechtigungen auf einer Transportebene mithilfe einer einzigen Konfiguration trennen kann?
quelle
Eine Firewall kann auch unerwünschte Pakete abfangen, die Ihre Server nicht erreichen. Anstatt sie auf der Ebene der einzelnen Server zu bearbeiten, können Sie sie auch an der Firewall bearbeiten. Sie können die gesamte Konfigurationsaktivität auf der einzelnen Firewall anstatt auf mehreren Servern speichern.
Wenn ein Angreifer beispielsweise die Kontrolle über eine externe IP-Adresse erlangt hat und Ihre Server mit unerwünschten Paketen überhäuft und Sie die Auswirkungen auf Ihre Server abschwächen möchten, können Sie jeden der betroffenen Server so konfigurieren, dass die böswilligen Pakete verworfen werden oder nehmen Sie die Änderung einfach an Ihrer Firewall vor und alle Ihre Server sind geschützt. Die Firewall hat Ihre Reaktionszeit verkürzt.
quelle
Sie oder eine andere Person könnten eines Tages einen Fehler in Ihrem Server-Setup machen. Eine Firewall gibt Ihnen dann eine zweite Chance, jemanden daran zu hindern, einzusteigen. Wir sind nicht perfekt, machen Fehler, und daher kann sich ein bisschen "unnötige" Versicherung lohnen .
(Versuchen Sie, Ihre Firewall nicht auf demselben Betriebssystem wie Ihre Server zu betreiben , da sonst ein einzelner Fehler im Betriebssystem auftritt. Ich betrachte alle Versionen von Unix als dasselbe Betriebssystem, da sie so viele Gemeinsamkeiten haben.)
quelle
Firewalls sind bei der Manipulation des Datenverkehrs besonders kritisch. Sie machen es schnell und haben Ressourcen. Und Sie verschwenden keine Serverressourcen, um den Datenverkehr zu filtern (Festplatten-Io / Proc-Zeit / usw.). Sie sollten einige Sicherheitsmaßnahmen in der Serverumgebung konfigurieren, aber alle Datenverkehrsüberprüfungen und Virenprüfungen usw. sollten auf spezialisierte Server angewendet werden.
quelle
Ich würde mir Sorgen machen, wenn Sie jemals gehackt werden und keine Firewall installiert haben. Die Hacker könnten andere Ports auf Ihren Servern öffnen. Wenn ein Berater hinzugezogen wird, um eine Bereinigung und Prüfung durchzuführen, wird er als Erstes sagen: "WAS?!?! Sie haben keine Firewall!" Dann könntest du verbrannt werden.
quelle