← Tous les projets

Softcloud — Sécurité & réseau auto-hébergé

Défense en profondeur d’une infrastructure auto-hébergée : IPS collaboratif, pare-feu, DNS chiffré et accès privé.

CrowdSecnftablesFirewallWireGuardTailscaleNextDNS (DoH)AdGuard HomednsmasqPostfixYunoHostRaspberry PiBashsystemdFail2Ban

Ce que le projet démontre

Détection collaborative

CrowdSec analyse les journaux, détecte les attaques et partage ses signaux avec la communauté.

Blocage réseau

Bouncer nftables : adresses malveillantes et listes de blocage rejetées au pare-feu.

Pare-feu modulaire

Tables nftables indépendantes : filtrage géographique, accès d’administration restreint, services exposés.

DNS chiffré

Résolution DNS-over-HTTPS filtrée pour les serveurs et tout le réseau local.

Accès privé

Administration distante via Tailscale, sans élargir l’exposition des serveurs.

FAI associatif

Sortie Internet via ILOTH (WireGuard, IP fixe) pour le serveur et le réseau domestique.

Description

Ce projet regroupe le durcissement de mon infrastructure Softcloud, composée de deux Raspberry Pi 5 sous Debian : un serveur YunoHost (Web, mail, messagerie) et un point d’accès RaspAP. L’objectif est une défense en profondeur, où chaque couche limite ce que la précédente laisse passer.

La détection et la réponse reposent sur CrowdSec : analyse des journaux Nginx, SSH et mail, scénarios d’attaque, partage de signaux avec la communauté et listes de blocage. Les décisions sont appliquées directement dans le pare-feu nftables par un bouncer dédié, avec des alertes regroupées envoyées par mail. Les nouveaux scénarios sont d’abord observés en mode simulation avant d’être activés.

Le réseau domestique sort sur Internet par un tunnel WireGuard vers ILOTH, fournisseur d’accès associatif : le serveur sert de passerelle (NAT, DHCP, DNS) à l’ensemble du réseau local. La résolution DNS est chiffrée (DNS-over-HTTPS) et filtrée, et l’administration distante passe par un réseau privé Tailscale plutôt que par une exposition directe.

Chaque évolution suit la même méthode : audit en lecture seule, sauvegarde, correctif ciblé, validation, et retour arrière automatique pour les changements à risque. Les règles du pare-feu sont organisées en tables indépendantes afin qu’une modification ne puisse pas en écraser une autre.

Fonctionnalités & points techniques

  • ▹IPS collaboratif CrowdSec sur deux serveurs (Web, SSH, mail).
  • ▹Bouncer pare-feu nftables et listes de blocage communautaires.
  • ▹Nouveaux scénarios observés en mode simulation avant production.
  • ▹Listes d’exceptions dédiées pour ne jamais bloquer l’administration.
  • ▹Alertes regroupées par mail, une ligne par adresse bloquée.
  • ▹Filtrage géographique et pare-feu nftables en tables indépendantes.
  • ▹Accès SSH restreint, administration distante via Tailscale.
  • ▹Passerelle WireGuard vers ILOTH pour tout le réseau local.
  • ▹DHCP et DNS centralisés avec dnsmasq.
  • ▹DNS chiffré (DoH) et filtré avec NextDNS et AdGuard Home.
  • ▹Relais mail unique : tous les envois passent par le serveur Softcloud.
  • ▹Méthode audit → sauvegarde → correctif → validation, avec retour arrière automatique.
  • ▹Fail2Ban conservé pendant la transition vers CrowdSec.

Architecture technique

Détection
CrowdSec
Journaux Nginx, SSH et mail ; scénarios et signaux communautaires.
Réponse
Bouncer nftables
Blocage des adresses malveillantes et des listes de blocage.
Pare-feu
nftables
Tables indépendantes : géofiltrage, administration, services.
Accès Internet
WireGuard + ILOTH
Tunnel chiffré, IP fixe, passerelle du réseau local.
DNS
dnsmasq + NextDNS
DHCP, résolution locale et DNS-over-HTTPS filtré.
Administration
Tailscale + SSH
Accès privé chiffré, authentification par clé.
Alertes
Postfix
Relais SMTP authentifié, notifications regroupées.

Technologies utilisées

CrowdSecnftablesFirewallWireGuardTailscaleNextDNS (DoH)AdGuard HomednsmasqPostfixYunoHostRaspberry PiBashsystemdFail2Ban

Liens