09.06.2023

Comment installer Suricata sur Ubuntu 20.04

Description

Suricata est un programmeram pour la collecte, la surveillance et l'audit des journaux de sécurité du réseau. Cet utilitaire est "construit" autour du groupe de règles, prédéfinies ou créées par l'utilisateur. Ensuite, selon ces règles, le "flux" de trafic sera analysé ou/et modifié.

Suricata a des règles prédéfinies "prêtes à l'emploi", qui pourraient être appelées "mode passif" car le système avertit simplement un administrateur sans aucune modification du trafic.

Il est possible d'exécuter ce logiciel sur la passerelle du bureau pour "passer" tout le trafic ou s'exécuter sur tous les hôtes indépendamment.

Avant le départ

La configuration matérielle optimale est relative à la topologie LAN et dépend de vos besoins. Surtout, beaucoup de trafic inspecté nécessite que beaucoup de ressources soient affectées à Suricata. Dans les cas courants au moins 2 CPU cœurs et 4 ou 8 GygaBytes de RAM est nécessaire.

Ainsi, les exigences sont :

Ubuntu 20.04, sur le serveur pas moins de 4 Go RAM 2 CPU cœurs, autorisations pour faire quelque chose en tant que membre root ou sudo-group, système firewall activée.

Processus d'installation

Configuration unique

L'utilitaire Suricata "couvre" les besoins des utilisateurs majoritaires "prêts à l'emploi". Il fonctionne en mode "sans échec", donc aucun paquet réseau ne tombe, avertit seulement. Cette pratique est bonne jusqu'à ce que vous n'ayez pas de "connaissances approfondies" dans ce sujet.
Mais même le préréglage par défaut a probablement des options utiles, par exemple l'ID de flux communautaire
Cela pourrait être utile en cas de besoin d'intégrer un autre complexe (Elasticsearch par exemple) avec Suricata. L'ID de communauté peut être inséré dans la configuration de Suricata. Modifiez simplement la directive "community-id:", définissez sa valeur sur "true" dans /etc/suricata/suricata.yaml config.

cd /etc/suricata/suricata.yaml

Définissez quelle interface réseau devons-nous surveiller. Pour trouver l'adaptateur réseau avec l'interface par défaut, vous devez exécuter une commande comme celle-ci :

ip -j -p route afficher par défaut

Une petite description : l'option -j définira le format de "sortie" sur JSON, l'indicateur -p améliorera la lisibilité. L'adaptateur "principal" est affiché dans la ligne "dev".


Pour vérifier et modifier un nom d'interface, veuillez ouvrir le fichier /etc/suricata/suricata.yaml, recherchez la directive "interface" autour de la ligne #550. Si plusieurs interfaces sont présentées, il est également possible de l'ajouter dans le fichier de configuration.

Enfin, vous devez relancer le service. Faire

redémarrage du service suricata

Mise à jour des ensembles de règles

Pour obtenir des règles supplémentaires, l'outil de mise à jour suricata doit être utilisé. L'utilitaire peut obtenir des règles de circulation à partir de ressources de fournisseurs non commerciaux ou payants. Il pourrait également montrer les utilisations du système d'ensembles maintenant.

suricata-mise à jour liste-sources

Cet outil est conçu pour gérer les ensembles de règles, l'activer ou le désactiver. Par exemple, pour installer un nouveau jeu de règles, veuillez exécuter :

suricata-mise à jour enable-source

Exécutez à nouveau suricata-update pour appliquer les modifications.

Vérification des paramètres actuels

La bonne pratique consiste à vérifier la configuration après chaque modification. Exécutez simplement :

suricata -T -v -c /etc/suricata/suricata.yaml # L'option -T force Suricata à fonctionner en mode "vérification", -c définira le chemin d'accès au fichier de configuration, l'option -v doit afficher plus d'informations

Lancement du service

Pour redémarrer le démon après une vérification de configuration réussie, veuillez exécuter :

redémarrage du service suricata

Alors regardez, est-ce que le service a vraiment démarré ou pas

statut de service suricata

Tester les règles réelles

Pour vérifier si les règles correspondent vraiment aux attentes ou non, il suffit d'installer l'outil jq pour rendre le journal plus compréhensible et obtenir en particulier le fichier :

apt-get installer jq
apt-get installer curl
boucle httphttps://testmynids.org/uid/index.html


Pour rechercher des alertes, procédez comme suit :

tail -f /var/log/suricata/fast.log
tail -f /var/log/suricata/eve.log

Vous verrez la sortie "filterd" des journaux triés par ID d'alerte :

jq 'select(.alert .signatid_ure== )' /var/log/suricata/eve.json

À la fin

Aujourd'hui, vous avez installé l'outil Suricata. Vous avez vu comment utiliser un Community Flow ID pour combiner l'utilitaire avec d'autres outils utiles. Nous savons également comment inspecter les paramètres de service et tester notre HTTP circulation.