Was ist ein DDoS-Angriff? node Wie verhindert und bekämpft der SSR-Dienst DDoS-Angriffe? Der folgende Artikel wird Ihnen helfen, DDos-Angriffe zu verstehen und die Node-SSR-Dienstmethode zur Verhinderung und Bekämpfung von DDos-Angriffen vorzustellen. Ich hoffe, dass er für alle hilfreich ist!
Die Verhinderung und Bewältigung von DDoS-Angriffen ist ein wichtiger Teil der Stabilitätskonstruktion. Wenn sie nicht im Voraus verhindert werden, fällt der Dienst nach einem Angriff in einen nicht verfügbaren Zustand, was dem Unternehmen großen Schaden zufügen kann. Verlust
Dieser Artikel konzentriert sich auf die Perspektive des Node-SSR-Dienstes Studenten in der Front-End-Entwicklung sollten diesem Aspekt mehr Aufmerksamkeit schenken. [Empfohlene verwandte Tutorials: nodejs-Video-Tutorial]
Was ist ein DDoS-Angriff?
Um ein allgemeines Beispiel zu nennen: Unsere Website kann mit einer Bank verglichen werden. Unter normalen Umständen kann die Bank die Geschäfte von bis zu 100 Personen gleichzeitig abwickeln Nummer, und Sie werden bedient
Plötzlich wollte eine Schurkenorganisation Schutzgeld einsammeln, aber die Bank weigerte sich, es zu zahlen, also schickte der Schurke 3.000 oder sogar 30.000 Leute, um gleichzeitig die Nummer zu bekommen. Nehmen Sie die Nummer weiter, nachdem Sie sie übergeben haben. Das Ergebnis ist, dass der Server damit nicht umgehen kann und eine große Anzahl normaler Kunden darauf gewartet hat. Dies ist ein DDOS-Angriff, der in kurzer Zeit eine große Anzahl von Anfragen initiiert, die Ressourcen des Servers erschöpft und nicht in der Lage ist auf normalen Zugriff reagieren, was dazu führt, dass die Website tatsächlich offline geht.
DDOS ist kein Angriff, sondern ein allgemeiner Begriff für eine große Klasse von Angriffen. Es gibt Dutzende Arten und es werden ständig neue Angriffsmethoden erfunden. Jeder Aspekt des Website-Betriebs kann ein Angriffsziel sein. Solange eine Verbindung unterbrochen ist und der gesamte Prozess nicht ausgeführt werden kann, wird der Zweck, den Dienst lahmzulegen, erreicht.
Unter diesen ist einer der häufigsten Angriffe der CC-Angriff. CC-Angriffe zielen auf Webseiten ab. Normale Anfragen für dynamische Seiten auf der Website interagieren ebenfalls mit der Datenbank. Wenn diese „normale Anfrage“ ein bestimmtes Niveau erreicht, kann der Server nicht antworten. , wodurch es zusammenbricht.
baike.baidu.com/item/cc%E6%…
Der folgende Inhalt dieses Artikels zielt auf CC-Angriffe ab.
Wie kann man vorbeugen?
Verstehen Sie zunächst den Weg zwischen einer Anfrage und unseren Diensten.
Da es sich um die unterste Schicht und das Kernstück des Service-Links handelt, ist ein vollständiger Schutz der oberen Schicht sehr wichtig.
Nachdem böswilliger Datenverkehr abgefangen wurde In der äußeren Schicht muss der Geschäftscluster nicht häufig betrieben und gewartet werden (Kapazitätserweiterung und -verringerung, Strombegrenzung usw.), wodurch die Betriebs- und Wartungskosten gesenkt werden
- Der Geschäftscluster muss nicht zu viele zusätzliche Ressourcen vorbereiten, um den Datenverkehr anzugreifen , Kosten sparen
- Es hat viele Vorteile Gute Vielseitigkeit, einfach auf andere Dienste zu übertragen, bringt Stabilitätsvorteile
-
Die Präventionsmethoden werden ebenfalls in dieser Reihenfolge eingeführt
Verbinden Sie sich mit der CDN-Schicht nginx aktuelles Limit WAF-Firewall verbinden Andere Schutzschichten Verbesserung der Verarbeitungsfähigkeiten der Ursprungsseite. - Für SSR-Dienste gibt es zwei Vorschläge
Lassen Sie den SSR-Dienst nur die Rückgabe von Root-HTML verarbeiten und alle anderen Ressourcen müssen auf CDN platziert werden Wenn ein Angriff erfolgt, stufen Sie SSR vorübergehend auf CSR herunter-
1. Greifen Sie auf die CDN-Schicht zu
Die CDN-Schicht ist die äußerste Schicht, was für Notfälle praktisch ist. Sie können CDN-Caching aktivieren oder kostenpflichtige CDN-Elemente aktivieren, um die Sicherheit anderer interner Dienste zu schützen. Zum Beispiel:
Wenn beispielsweise augenblicklich Millionen, Dutzende Millionen oder mehr Datenverkehr eingehen, ist es möglich, dass die Lastausgleichsschicht ausfällt, was sich auf das Geschäft des gesamten Unternehmens auswirkt, nicht nur auf diejenigen, die angegriffen werden . Zu den Schutzfunktionen dieses Dienstes CDN gehören: CDN-Cache, Robotererkennung, IP-Reputationsdatenbank, Erstellung eines benutzerdefinierten Schutzregelsatzes (Kombination historischer Angriffsmerkmale und Geschäftsformen) usw. (aktiviert durch kostenpflichtige Stufe) Übrigens (persönliche Meinung): CDN-Anbieter verfügen über unzählige Server auf der ganzen Welt. Große CDN-Anbieter können fast alle Angriffe angreifen, und sie erheben auch Gebühren entsprechend der Schutzstufe (Schutzgebühr). Ich persönlich denke, dass einige Angriffe wahrscheinlich von CDN-Anbietern verursacht werden, die mit illegalen Unternehmen zusammenarbeiten. Dies ist gleichbedeutend mit Schurken, die Schutzgebühren erheben. Wenn sie die Schutzgebühren nicht zahlen, werden sie den Laden zerstören (Angriff), um Sie über die Schmerzen zu informieren , und kaufen Sie dann CDN-Schutzdienste. Und es kann mehr als zig Millionen QPS aktivieren. Mit Ausnahme von CDN-Herstellern (die über viele Server verfügen) dürfte es für normale Menschen schwierig sein2. Nginx-Strombegrenzung
Lassen Sie uns gemeinsam über diese beiden Aspekte sprechen. Es handelt sich um eine Infrastruktur auf Unternehmensebene mit spezifischen Zugriffsmethoden und spezifische Konfigurationen. Dies ist von Unternehmen zu Unternehmen unterschiedlich. Ich werde nicht mehr auf Details eingehen
Was ist das aktuelle Nginx-Limit?
Sie können selbst suchen
- Was ist eine WAF-Firewall?
Sie können diesen Artikel lesen
www.huaweicloud.com/zhishi/waf0…
Zusammenfassend lässt sich sagen, dass die WAF-Schicht eine umfangreiche Reputationsbibliothek voreinstellt, um Bedrohungen wie bösartige Scanner, IPs und Netzwerke zu erkennen Pferde. Erkennung und Abfangen
Umfassender Angriffsschutz: Unterstützt SQL-Injection, XSS-Cross-Site-Scripting, Dateieinbindung, Verzeichnisdurchquerung, Zugriff auf vertrauliche Dateien, Befehlscode-Injection, Web-Trojaner-Upload, Schwachstellenangriffe Dritter und andere Bedrohungen Erkennung und Abfangen.
-
Mensch-Computer-Erkennung
-
Schnittstellengeschwindigkeitsbegrenzung, WAF kann eine flexible Geschwindigkeitsbegrenzungsrichtlinie basierend auf IP oder Cookie festlegen
-
Basierend auf einer reichhaltigen Kombination von Feldern und logischen Bedingungen, präzise Steuerung
-
Unterstützt Rich-Field-Bedingungen: Bedingte Kombination basierend auf allgemeinen HTTP-Parametern und Feldern wie IP, URL, Referrer, User-Agent, Parameter usw.
Unterstützt eine Vielzahl bedingter Logiken: Unterstützt logische Bedingungen wie Einschluss, Nichteinschluss, gleich, ungleich, Präfix gleich, Präfix ungleich usw. und legt Blockierungs- oder Freigabestrategien fest. -
-
4. Andere Schutzschichten
Verschiedene Unternehmen verfügen möglicherweise über andere Schutzschichten, die unterschiedlichen Unternehmen und ihren eigenen Merkmalen entsprechen, z. B. Überlastschutz für einzelne Instanzen (um festzustellen, ob der aktuelle Dienststatus „Überlastung“ ist, und dann Verwerfen Sie einige Anfragen mit niedriger Priorität basierend auf der Priorität des Datenverkehrs dynamisch, um den normalen Betrieb des Dienstes so weit wie möglich sicherzustellen.)
Hier gibt es viele Arten von Schutzschichten. Wenn Sie interessiert sind, können Sie mehr erfahren
5. Die Verbesserung der Verarbeitungskapazität des Ursprungsstandorts
Das Schmieden von Eisen erfordert eigene harte Arbeit
Das ist leicht zu verstehen. Die Verbesserung der Verarbeitungskapazität des Dienstes führt natürlich zu mehr Verkehr
Bei SSR-Diensten gibt es solche die folgenden Vorschläge
Vorschlag 1: Lassen Sie den SSR-Dienst nur die Rückgabe des Root-HTML verarbeiten, und alle anderen Ressourcen müssen auf dem CDN platziert werden
Für den SSR-Dienst gibt es hier einen sehr wichtigen Vorschlag
Lassen Sie den SSR-Dienst nur die Rückgabe verarbeiten. Für die Rückgabe von Root-HTML müssen alle anderen Ressourcen auf dem CDN platziert werden.
-
Es ist leicht zu verstehen, wenn wir Juejin direkt als Beispiel verwenden Im Bild unten ist zu sehen, dass Juejin selbst ebenfalls ein SSR-Dienst ist und die Ursprungsstation nur Root-HTML verarbeitet und alle anderen Ressourcen (JS, CSS, Bilder, Schriftarten usw.) im CDN platziert werden.
Der Zweck besteht auch darin, die Verarbeitungskapazität der Ursprungsseite zu verbessern- , was großen Druck auf das CDN ausübt
Vorschlag 2: Wenn ein Angriff kommt, stufen Sie SSR vorübergehend auf CSR herab
SSR-Rendering ist relativ CPU-intensiv (es erfordert Kompilierung und Analyse, um HTML zu generieren), daher ist die QPS-Fähigkeit des SSR-Dienstes nicht hoch. Bei Angriffen kann man leicht besiegt werden
Lösung: SSR vorübergehend auf CSR herabstufenWie kann man SSR herabstufen?
Downgrade auf CSR (Client-seitiges Rendering), sodass auf der Serverseite kein komplexer HTML-Code generiert werden muss und nur einfacher HTML-Code zurückgegeben werden muss.
- CSR ist eine Einzelseitenanwendung. Wie Sie im Bild unten sehen können, verbraucht die Rückgabe dieses statischen HTML-Codes nicht viele Serverressourcen
Und Sie können auch die Stamm-HTML-Datei im Speicher zwischenspeichern, was die Verarbeitungsleistung des
Servers um das Zehn- oder sogar Hundertfache erhöhen kann
Ich werde im Detail erklären, wie Sie das SSR-Downgrade implementieren Ein späterer Artikel. Schreiben Sie darüber. -
Sie wurden alle angegriffen und der Dienst wurde sehr langsam oder sogar direkt blockiert. Zu diesem Zeitpunkt ist es zu spät, die Codeebene zu optimieren, und es können nur einige Konfigurationen auf der Betriebs- und Wartungsebene vorgenommen werden
Ich liste hier hauptsächlich die folgenden 3 auf. Klicken Sie, um sie hinzuzufügen. Erweiterung
Aktualisieren Sie die Schutzstrategie. Aktivieren Sie CDN-Caching. 1. Erweiterung. Kann nur mit kleinen Mengen umgehen Verkehr Angriffe2. Aktualisieren Sie die Schutzstrategie
Das ist ein bisschen mit Geschäftsgeheimnissen verbunden ... Ich traue mich nicht, es selbst zu schreiben oder nach dem Betrieb und der Wartung des Unternehmens zu fragen
Jedenfalls gibt es eine Sache, denke ich. Im Allgemeinen kommt es nach der Zahlung des Geldes an das CDN möglicherweise nicht zu Angriffen. Auch wenn dies der Fall ist, handelt es sich möglicherweise nur um Angriffe mit geringem Datenverkehr und leicht zu schützendem CDN-Cache Wenn Sie es normal besuchen und der CDN-Cache nicht aktiviert ist, können Sie den CDN-Cache vorübergehend aktivieren, wenn Sie angegriffen werden.
Zusammenfassung
Je früher Sie vorbeugende Maßnahmen ergreifen, desto besser. Beginnen Sie nicht erst mit der Einnahme, nachdem Sie angegriffen wurden, da Sie möglicherweise bereits viele Verluste verursacht haben. Tun Sie nur das, was Sie sollten Tun Sie es in der Vergangenheit und übernehmen Sie, was getan werden sollte. Akzeptieren Sie es. Nur wenn Sie tatsächlich angegriffen werden, können Sie die Konfiguration nur dann nutzen, wenn Sie zu Gott beten, dass der Angriff schnell aufhört ... Oder Sie können es nur tun Erpressung passiv akzeptieren
Sicherheit ist keine triviale Angelegenheit- Für mehr Node-bezogenes Wissen besuchen Sie bitte:
nodejs-Tutorial
!
Das obige ist der detaillierte Inhalt vonWas ist ein DDoS-Angriff? Wie verhindert und handhabt der Node-SSR-Dienst Angriffe?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!