Suricata est un moteur de détection des menaces réseau gratuit, open source et robuste développé par l'Open Security Foundation. Il est capable de détecter les intrusions en temps réel, de prévenir les intrusions et de surveiller la sécurité du réseau. Suricata est livré avec un ensemble de règles puissant qui inspecte le trafic réseau et détecte les menaces complexes. Il prend en charge tous les principaux systèmes d'exploitation, notamment Linux, Windows, FreeBSD et macOS, ainsi que IPv4, IPv6, SCTP, ICMPv4, ICMPv6 et GRE.
Dans ce tutoriel, nous allons vous montrer comment installer et configurer Suricata IDS sur Ubuntu 20.04.
Prérequis
- Un nouveau VPS Ubuntu 20.04 sur la plate-forme cloud Atlantic.net
- Un mot de passe root est configuré sur votre serveur
Étape 1 - Créer un serveur cloud Atlantic.Net
Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur, en choisissant Ubuntu 20.04 comme système d'exploitation, avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.
Une fois que vous êtes connecté à votre serveur Ubuntu 20.04, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.
apt-get update -y
Étape 2 - Installer les dépendances requises
Tout d'abord, vous devrez installer certaines dépendances nécessaires à la compilation de Suricata à partir de la source. Vous pouvez tous les installer avec la commande suivante :
apt-get install rustc cargo make libpcre3 libpcre3-dbg libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libcap-ng-dev libcap-ng0 make libmagic-dev libjansson-dev libjansson4 pkg-config -y
apt-get install libnetfilter-queue-dev libnetfilter-queue1 libnfnetlink-dev libnfnetlink0 -y
Une fois tous les packages installés, vous devrez installer l'outil suricata-update pour mettre à jour les règles Suricata. Vous pouvez l'installer avec les commandes suivantes :
apt-get install python3-pip pip3 install --upgrade suricata-update ln -s /usr/local/bin/suricata-update /usr/bin/suricata-update
Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.
Étape 3 - Installer Suricata
Tout d'abord, téléchargez la dernière version de Suricata depuis leur site officiel avec la commande suivante :
wget https://www.openinfosecfoundation.org/download/suricata-5.0.3.tar.gz
Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :
tar -xvzf suricata-5.0.3.tar.gz
Ensuite, remplacez le répertoire par le répertoire extrait et configurez-le avec la commande suivante :
cd suricata-5.0.3 ./configure --enable-nfqueue --prefix=/usr --sysconfdir=/etc --localstatedir=/var
Ensuite, installez le Suricata avec la commande suivante :
make make install-full
Remarque :Ce processus prendra plus de 10 minutes
Ensuite, installez toutes les règles avec la commande suivante :
make install-rules
Vous pouvez le voir avec la commande suivante :
cat /var/lib/suricata/rules/suricata.rules
Étape 4 - Configurer Suricata
Le fichier de configuration par défaut de Suricata se trouve dans /etc/suricata/suricata.yaml. Vous devrez le configurer pour protéger votre réseau interne. Vous pouvez le faire en éditant le fichier :
nano /etc/suricata/suricata.yaml
Modifiez les lignes suivantes :
HOME_NET: "[192.168.1.0/24]" EXTERNAL_NET: "!$HOME_NET"
Enregistrez et fermez le fichier lorsque vous avez terminé.
Remarque : Dans la commande ci-dessus, remplacez 192.168.1.0/24 avec votre réseau interne.
Étape 5 :Tester Suricata contre les attaques DDoS
Avant de commencer, vous devrez désactiver les fonctionnalités de déchargement de paquets sur l'interface réseau sur laquelle Suricata écoute.
Tout d'abord, installez le package ethtool avec la commande suivante :
apt-get install ethtool -y
Ensuite, désactivez le déchargement de paquets avec la commande suivante :
ethtool -K eth0 gro off lro off
Ensuite, exécutez le Suricata en mode NFQ avec la commande suivante :
suricata -c /etc/suricata/suricata.yaml -q 0 &
Ensuite, accédez au système distant et effectuez un simple test d'attaque DDoS contre le serveur Suricata à l'aide de l'outil hping3 comme indiqué ci-dessous :
hping3 -S -p 80 --flood --rand-source your-server-ip
Sur le serveur Suricata, vérifiez les journaux Suricata avec la commande suivante :
tail -f /var/log/suricata/fast.log
Vous devriez voir le résultat suivant :
09/17/2020-07:29:52.934009 [**] [1:2402000:5670] ET DROP Dshield Block Listed Source group 1 [**] [Classification: Misc Attack] [Priority: 2] {TCP} 167.248.133.70:18656 -> your-server-ip:9407
Conclusion
Toutes nos félicitations! Vous avez installé et configuré avec succès Suricata IDS et IPS sur le serveur Ubuntu 20.04. Vous pouvez maintenant explorer le Suricata et créer vos propres règles pour protéger votre serveur contre les attaques DDoS. Commencez avec Suricata sur l'hébergement VPS d'Atlantic.Net, et pour plus d'informations, visitez la page de documentation de Suricata.