Chez Festival-Assistant.fr, la sécurité de notre infrastructure est une priorité absolue. Pour assurer la protection de notre serveur Debian, nous avons mis en place deux outils puissants : Fail2ban et Caddy. Dans cet article, nous vous expliquons comment nous avons configuré ces solutions pour renforcer la sécurité de notre site web.

Introduction

Avec l’augmentation des cybermenaces, il est crucial de protéger les serveurs web contre les attaques potentielles. Fail2ban et Caddy sont deux outils efficaces qui, lorsqu’ils sont utilisés ensemble, offrent une défense robuste contre diverses formes d’intrusion. Voici comment nous les avons intégrés dans notre environnement Debian.

Qu’est-ce que Fail2ban ?

Fail2ban est un logiciel de prévention des intrusions qui surveille les journaux du système pour détecter les tentatives de connexion malveillantes. Lorsqu’il identifie une activité suspecte, il bloque automatiquement l’adresse IP de l’attaquant en mettant à jour les règles du pare-feu.

Avantages de Fail2ban

  • Automatisation : Surveillance et blocage automatique des adresses IP suspectes.
  • Flexibilité : Configuration personnalisable pour différents services (SSH, HTTP, etc.).
  • Efficacité : Réduction significative des tentatives de brute force.

Qu’est-ce que Caddy ?

Caddy est un serveur web moderne qui simplifie la gestion des sites web en intégrant automatiquement des certificats SSL via Let’s Encrypt. En plus de ses fonctionnalités de serveur web, Caddy offre des capacités de sécurité avancées telles que le filtrage des requêtes et la protection contre diverses attaques web.

Avantages de Caddy

  • Facilité d’utilisation : Configuration simple grâce à un fichier de configuration intuitif.
  • Sécurité intégrée : HTTPS par défaut, gestion automatique des certificats SSL.
  • Performances : Serveur web rapide et optimisé.

Mise en Œuvre de Fail2ban sur Debian

Installation de Fail2ban

Pour installer Fail2ban, exécutez les commandes suivantes :

sudo apt update
sudo apt install fail2ban

Configuration de Fail2ban

Après l’installation, créez une copie du fichier de configuration par défaut :

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Ouvrez le fichier jail.local pour personnaliser les paramètres :

sudo nano /etc/fail2ban/jail.local

Ajoutez ou modifiez les sections suivantes selon vos besoins :

[DEFAULT]
bantime  = 1h
findtime  = 10m
maxretry = 5

[sshd]

enabled = true port = ssh logpath = /var/log/auth.log

Activation et Vérification

Redémarrez le service Fail2ban pour appliquer les modifications :

sudo systemctl restart fail2ban

Vérifiez que Fail2ban fonctionne correctement :

sudo fail2ban-client status
sudo fail2ban-client status sshd

Mise en Œuvre de Caddy sur Debian

Installation de Caddy

Pour installer Caddy, ajoutez d’abord le dépôt officiel et installez-le via apt :

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo apt-key add -
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy

Configuration de Caddy

Le fichier de configuration principal de Caddy se trouve à /etc/caddy/Caddyfile. Voici un exemple de configuration pour notre site :

festival-assistant.fr {
    root * /var/www/festival-assistant.fr
    encode gzip
    file_server

    log {
        output file /var/log/caddy/access.log
        format single_field common_log
    }

    tls youremail@example.com

    @blockedIPs {
        remote_ip 192.168.1.100 10.0.0.1
    }

    respond @blockedIPs 403
}

Sécurisation Avancée avec Caddy

Caddy prend en charge plusieurs fonctionnalités de sécurité, comme le filtrage des requêtes et la prévention des attaques DDoS. Pour renforcer la sécurité, nous avons ajouté des règles supplémentaires dans le Caddyfile :

festival-assistant.fr {
    # ... configuration précédente ...

    rate_limit {
        zone default {
            # Limite à 100 requêtes par minute
            rate 100r/m
            burst 20
        }
    }

    header {
        Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
        X-Content-Type-Options "nosniff"
        X-Frame-Options "DENY"
        Referrer-Policy "no-referrer-when-downgrade"
        Content-Security-Policy "default-src 'self';"
    }
}

Redémarrage de Caddy

Après avoir configuré Caddy, redémarrez le service pour appliquer les changements :

sudo systemctl restart caddy

Conclusion

En combinant Fail2ban et Caddy, nous avons pu renforcer considérablement la sécurité de notre serveur Debian. Fail2ban protège contre les tentatives de connexion non autorisées, tandis que Caddy assure une gestion sécurisée et efficace de notre serveur web. Cette double approche nous permet de garantir la disponibilité et la sécurité de Festival-Assistant.fr pour tous nos utilisateurs.

Sécurité Renforcée
Figure 4 : Sécurité renforcée de notre infrastructure

Nous espérons que cet article vous a été utile pour comprendre comment sécuriser votre propre serveur Debian. N’hésitez pas à nous contacter si vous avez des questions ou besoin d’assistance supplémentaire.


Publié le 26 août 2024 par l’équipe Festival-Assistant.fr