|
|
||
|---|---|---|
| LICENSE | ||
| README.md | ||
| install_security_tools.sh | ||
README.md
🛡️ System Security Tools
Script professionnel d'installation et configuration d'outils de sécurité pour serveurs Debian 12.
📋 Description
Ce script automatise l'installation et la configuration de trois outils complémentaires de détection et protection contre les menaces sur serveurs Linux :
- rkhunter - Détection de rootkits, backdoors et exploits locaux
- ClamAV - Antivirus open source pour détecter malwares et virus
- AIDE - Vérification de l'intégrité des fichiers système (Advanced Intrusion Detection Environment)
✨ Fonctionnalités
- ✅ Idempotent - Peut être exécuté plusieurs fois sans effet de bord
- 🔄 Automatisation complète - Configuration de scans réguliers via cron
- 📊 Logging détaillé - Tous les événements sont enregistrés
- 🎨 Interface claire - Output coloré et informatif
- 🔧 Gestion des faux positifs - Configuration centralisée des exceptions rkhunter
- 💾 Backups automatiques - Sauvegarde des configurations avant modification
- 📧 Alertes email - Notifications en cas de détection de menaces
📦 Prérequis
- Debian 12 (Bookworm)
- Accès root ou sudo
- Connexion Internet (pour les mises à jour de bases de données)
🚀 Installation rapide
# Cloner le dépôt
git clone https://git.h3campus.fr/Johnny/System_security_tools.git
cd System_security_tools
# Rendre le script exécutable
chmod +x install_security_tools.sh
# Exécuter en tant que root
sudo ./install_security_tools.sh
⚙️ Configuration des exceptions (faux positifs)
Les faux positifs courants sont déjà configurés. Pour en ajouter d'autres :
- Éditez le script
install_security_tools.sh - Modifiez le tableau
RKHUNTER_EXCEPTIONSen haut du script :
readonly RKHUNTER_EXCEPTIONS=(
"/usr/bin/lwp-request"
"/usr/bin/GET"
"/usr/bin/HEAD"
"/usr/bin/POST"
"/usr/sbin/unhide"
"/votre/nouveau/chemin" # Ajoutez vos exceptions ici
)
- Relancez le script pour appliquer les changements :
sudo ./install_security_tools.sh
📅 Planning des tâches automatiques
| Heure | Fréquence | Action |
|---|---|---|
| 02:00 | Quotidien | Scan complet (rkhunter + ClamAV) |
| 13:00 | Quotidien | Scan complet (rkhunter + ClamAV) |
| 03:00 | Dimanche | Vérification intégrité AIDE |
| 03:30 | Dimanche | Mise à jour base rkhunter |
| 04:00 | 1er du mois | Mise à jour base AIDE |
🔍 Utilisation manuelle
rkhunter
# Scan complet
sudo rkhunter --check
# Mise à jour de la base de données
sudo rkhunter --update
# Mise à jour des propriétés des fichiers
sudo rkhunter --propupd
ClamAV
# Scan d'un répertoire
sudo clamscan -r /chemin/vers/repertoire
# Scan récursif avec affichage des fichiers infectés uniquement
sudo clamscan -r -i /home
# Mise à jour de la base antivirale
sudo freshclam
AIDE
# Vérifier l'intégrité du système
sudo aide --check
# Mettre à jour la base de données
sudo aide --update
sudo cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# Réinitialiser la base
sudo aideinit
📂 Structure des fichiers
System_security_tools/
├── install_security_tools.sh # Script principal
├── README.md # Documentation
└── logs/ # (créé automatiquement)
├── security_tools_install.log # Log d'installation
├── security-scan-YYYYMMDD.log # Logs des scans quotidiens
└── aide-check-YYYYMMDD.log # Logs des vérifications AIDE
📍 Emplacements importants
Fichiers de configuration
- rkhunter principal :
/etc/rkhunter.conf - rkhunter exceptions :
/etc/rkhunter.conf.local - ClamAV :
/etc/clamav/clamd.conf - AIDE :
/etc/aide/aide.conf
Scripts automatiques
/usr/local/bin/daily-security-scan.sh- Scan quotidien rkhunter + ClamAV/usr/local/bin/aide-check.sh- Vérification AIDE
Logs
- Installation :
/var/log/security_tools_install.log - rkhunter :
/var/log/rkhunter.log - Scans quotidiens :
/var/log/security-scan-*.log - Vérifications AIDE :
/var/log/aide-check-*.log
Bases de données
- AIDE :
/var/lib/aide/aide.db - ClamAV :
/var/lib/clamav/
🔧 Dépannage
Le script échoue à l'installation de AIDE
L'initialisation de AIDE peut prendre 10-30 minutes selon la taille du système. Soyez patient.
Freshclam échoue à mettre à jour
Vérifiez votre connexion Internet et les paramètres proxy si nécessaire.
Faux positifs rkhunter
Ajoutez les fichiers concernés dans le tableau RKHUNTER_EXCEPTIONS et relancez le script.
Logs qui s'accumulent
Configurez logrotate ou créez un script de nettoyage périodique :
# Supprimer les logs de plus de 30 jours
find /var/log -name "security-scan-*.log" -mtime +30 -delete
find /var/log -name "aide-check-*.log" -mtime +30 -delete
📊 Surveillance des alertes
Les alertes sont envoyées à l'utilisateur root par défaut. Pour rediriger vers un email spécifique :
- Éditez les scripts dans
/usr/local/bin/ - Modifiez la variable
MAILTO="votre@email.com"
Assurez-vous qu'un serveur mail est configuré (postfix, sendmail, etc.).
🤝 Contribution
Les contributions sont les bienvenues ! N'hésitez pas à :
- Forker le projet
- Créer une branche pour votre fonctionnalité (
git checkout -b feature/AmazingFeature) - Commiter vos changements (
git commit -m 'Add some AmazingFeature') - Pusher vers la branche (
git push origin feature/AmazingFeature) - Ouvrir une Pull Request
📝 Changelog
Version 1.0.0 (2026-01-15)
- Installation automatisée de rkhunter, ClamAV et AIDE
- Configuration des exceptions pour faux positifs
- Scans bi-quotidiens automatiques (2h et 13h)
- Vérifications hebdomadaires et mensuelles
- Logging complet et alertes email
- Script idempotent
📄 Licence
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
👤 Auteur
Johnny - H3Campus
🔗 Liens utiles
⚠️ Avertissement
Ces outils sont des aides à la détection mais ne garantissent pas une protection à 100%. Ils doivent faire partie d'une stratégie de sécurité plus large incluant :
- Mises à jour régulières du système
- Configuration firewall appropriée
- Gestion stricte des accès SSH
- Monitoring et analyse des logs
- Sauvegardes régulières
🌟 Si ce projet vous est utile, n'oubliez pas de lui donner une étoile !