Comment protĂ©ger vos serveurs Linux avec CrowdSec đĄïž
Qu'est ce que CrowdSec ?
CrowdSec est un SystÚme de Détection et de Prévention d'Intrusion (IDPS) open-source conçu pour protéger les systÚmes et les applications contre les attaques en ligne. Ce systÚme de défense s'appuie sur un réseau collaboratif et une approche communautaire pour identifier et contrer les attaques.
Le principe de base de CrowdSec est de collecter et d'analyser des donnĂ©es de sĂ©curitĂ© Ă partir de diffĂ©rentes sources pour Ă©tablir des profils de comportement malveillant. Ces donnĂ©es proviennent souvent de journaux systĂšme, de serveurs web, etc. Par exemple, CrowdSec peut analyser les journaux de votre serveur web, comme Nginx, et chercher des requĂȘtes prĂ©sentant des anomalies. Elles sont identifiĂ©es en fonction d'une liste de scĂ©narios prĂ©dĂ©finis, ce qui permet de repĂ©rer, par exemple, des menaces basĂ©es sur des caractĂ©ristiques spĂ©cifiques telles qu'une adresse IP ou un User Agent connu pour ĂȘtre Ă l'origine de cyber-attaques.
DÚs qu'un comportement malveillant est détecté, CrowdSec réagit automatiquement en mettant en place des mesures de sécurité pour contrer l'attaquant et en générant une alerte pour informer les administrateurs du systÚme. Ces réponses automatisées permettent de bloquer rapidement les menaces potentielles.
Installation de CrowdSec sur Ubuntu
CrowdSec est disponible sur la plupart des distributions Linux ainsi que sur Windows et autres systĂšme d'exploitation (FreeBSD, etc). Ce guide va vous guider Ă travers l'installation et la configuration de CrowdSec sur Ubuntu.
Pour installer CrowdSec, vous pouvez utiliser les commandes suivantes :
curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | sudo bash
sudo apt install -y crowdsec
Installation d'un videur
Vous devrez également installer un ou plusieurs videurs, ce sont des logiciels autonomes chargés de mettre en place les décisions prises par CrowdSec, comme le blocage d'une adresse IP ou la présentation d'un Captcha.
Pour commencer, vous pouvez utiliser le videur suivant, qui bloque les adresses IP malveillantes au niveau du par-feu iptables, si vous utilisez un autre systÚme de par-feu, accédez a la liste des videurs ci-dessus.
sudo apt install -y crowdsec-firewall-bouncer-iptables
Lorsque vous installez un videur, il devrait automatiquement ĂȘtre activĂ©, vous pouvez le vĂ©rifier avec la commande suivante :
sudo cscli bouncers list
Voir https://docs.crowdsec.net/docs/cscli/cscli_bouncers pour plus d'informations.
Configuration de scenarios
Les scénarios sont des éléments essentiels du moteur de détection CrowdSec et lui permettent de reconnaßtre les comportements suspects et de prendre la décision de bloquer ou non une adresse IP.
Des scĂ©narios devraient ĂȘtre automatiquement configurĂ© en fonction des services que CrowdSec a dĂ©tectĂ© sur votre systĂšme lors de son installation. Pour lister les scĂ©narios actifs, utilisez la commande suivante :
sudo cscli scenarios list
Voir https://docs.crowdsec.net/docs/cscli/cscli_scenarios pour plus d'informations
Les alertes CrowdSec
Lorsqu'une activité malveillante est détectée par un scénario, une alerte est automatiquement générée. Vous pouvez consulter l'historique des alertes comme montré ci-dessous :
sudo cscli alerts list
Pour savoir comment gérer, inspecter, supprimer, ou trier les alertes, voir la page de documentation officielle : https://docs.crowdsec.net/docs/cscli/cscli_alerts
Les décisions CrowdSec
Pour se protĂ©ger, CrowdSec peut crĂ©er des dĂ©cisions. Ce sont des mesures de sĂ©curitĂ© prises pour contrer les attaquants comme par exemple le blocage de lâadresse IP Ă l'origine de la dĂ©tection. Pour voir les dĂ©cisions actives, utilisez cette directive.
sudo cscli decisions list
Dans l'exemple au dessus, on peut voir que l'adresse IP 93.95.227.226 à été bloquée pour une durée de 4 heure pour une tentative d'accÚs a une porte dérobée sur le serveur. Cela montre qu'il est trÚs important de surveiller les alertes CrowdSec afin de pouvoir investiguer et déterminer si un danger existe dans de telles situations.
Pour annuler, créer manuellement, ou importer des décisions, référez vous a la page de documentation officielle : https://docs.crowdsec.net/docs/cscli/cscli_decisions
La console CrowdSec
La console CrowdSec est une interface web moderne facultative qui va vous permettre de lier vos serveurs afin d'avoir une vue d'ensemble sur les cyber-menaces.
Commencez par vous rendre à l'adresse https://app.crowdsec.net/ et créez vous un compte.
Vous verrez ensuite la commande à exécuter pour lier votre serveur à votre console. Copiez-là simplement dans votre terminal.
Vous pouvez désormais confirmer l'ajout de votre instance depuis votre console, et finalement, redémarrez le service CrowdSec sur le serveur.
sudo systemctl restart crowdsec
Vous pouvez maintenant accéder aux données de sécurité de vos machine depuis la console CrowdSec.
Conclusion
Si vous avez suivi toutes les étapes correctement, vous devriez avoir une instance CrowdSec opérationnelle. Je vous conseille d'effectuer des tests de pénétration simples pour vérifier l'absence de toutes erreurs.
Si vous rencontrez quelque problÚme que ce soit, n'hésitez pas a demander de l'aide dans les commentaires de cet article et je serai ravi de vous aider!
Informations additionnelles
- Documentation officielle de CrowdSec : https://docs.crowdsec.net/docs/intro
- Si votre serveur est derriĂšre un proxy inversĂ©, il est important d'effectuer les configurations nĂ©cessaires afin que ce soit l'adresse de l'attaquant qui apparaisse dans les journaux et pas celle du proxy. Sinon quoi toutes les requĂȘtes seraient bloquĂ©es, c'est n'est pas ce que vous voulez!