Mon entreprise a traité des attaques DDoS jusqu'à 180 Gbit / s et voici mes techniques que j'ai utilisées pour atténuer.
La taille d'un site Web en fait non seulement une cible plus importante, mais les éléments qui jouent également un rôle important sont:
- Relations publiques (vous faites-vous du marketing comme quelque chose vous ne l'êtes pas, quelles personnes ciblez-vous)
- Tenir ses promesses
- Traiter les clients de la bonne manière
Les motivations des attaques DDoS incluent, mais sont non limité à ce qui suit:
- Fame ("Oh regarde-moi, j'ai réussi à supprimer ce site")
- Argent (les sites plus grands sont plus chers à attaquer généralement, s'ils recherchent de l'argent, ils cibleront les plus petits avec des revenus élevés qui n'ont pas une grande équipe technique)
- Activisme
Aussi (d'après l'un des commentaires) :
- Un autre motif est qu'ils essaient de vous distraire. Par exemple, s'ils veulent attaquer Apache et que vous êtes occupé à résoudre ce problème pendant qu'ils renforcent brutalement votre mot de passe SSH.
Il existe de nombreux types d'attaques DDoS et comment elles sont initiées, vous devez d'abord pour obtenir les points que j'ai énumérés ci-dessus dans l'ordre, vos attaques DDoS diminueront probablement. Cela ne veut pas dire que vous ne les ressentirez plus, vous donnez simplement aux gens moins de motivation pour vous attaquer.
Sur le plan technique, il y a plusieurs choses à considérer car la plupart des entreprises ont plusieurs nœuds dans leur infrastructure. Dans certains cas, chaque nœud nécessite un type d'approche différent. Dans mon cas, ces nœuds étaient une API, un serveur de jeu, un serveur d'authentification, une base de données et un serveur social. L'étape 1 consistait à vous assurer que vous n'exposez jamais une adresse IP qui n'a pas besoin d'être exposée. Dans mon cas, il s'agissait du serveur d'authentification, de la base de données et du serveur social. Limiter généralement les points de défaillance est une bonne approche pour commencer. La protection est incroyablement chère, et il n'est bon que d'avoir la protection la plus résistante là où vous en avez vraiment besoin.
Une fois que vous avez déterminé quels points doivent être publics, vous pouvez protéger chaque fonction individuellement de la manière dont elle doit être protégée. theterriblevitrium a donné une excellente réponse aux techniques, voici mes 2 cents sur celle-là.
- Anycast (par exemple, un CDN. Cela fonctionne incroyablement bien pour les nœuds statiques tels que les API locales, les serveurs DNS et les serveurs Web, l'inconvénient est que cela actuellement ne fonctionne pas efficacement pour les systèmes qui ont un point de défaillance unique comme les serveurs de jeu)
- Règles de réseau & Inspection des paquets (par exemple, chaque connexion ne peut prendre que X kb de trafic par seconde et chaque paquet doit motif x, y ou z. Cela a bien fonctionné pour nos jeux. L'inconvénient est que s'ils atteignent votre limite de bande passante, vous n'avez pas de chance.)
N'hésitez pas à poser des questions !