Actualiser README.md
This commit is contained in:
parent
35c6fb79a6
commit
aedd28b821
242
README.md
242
README.md
|
|
@ -1,2 +1,242 @@
|
||||||
# System_security_tools
|
# 🛡️ System Security Tools
|
||||||
|
|
||||||
|
Script professionnel d'installation et configuration d'outils de sécurité pour serveurs Debian 12.
|
||||||
|
|
||||||
|
[](https://www.debian.org/)
|
||||||
|
[](LICENSE)
|
||||||
|
[](https://www.gnu.org/software/bash/)
|
||||||
|
|
||||||
|
## 📋 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
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 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 :
|
||||||
|
|
||||||
|
1. Éditez le script `install_security_tools.sh`
|
||||||
|
2. Modifiez le tableau `RKHUNTER_EXCEPTIONS` en haut du script :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Relancez le script pour appliquer les changements :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 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
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 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
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 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 :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 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 :
|
||||||
|
|
||||||
|
1. Éditez les scripts dans `/usr/local/bin/`
|
||||||
|
2. 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 à :
|
||||||
|
|
||||||
|
1. Forker le projet
|
||||||
|
2. Créer une branche pour votre fonctionnalité (`git checkout -b feature/AmazingFeature`)
|
||||||
|
3. Commiter vos changements (`git commit -m 'Add some AmazingFeature'`)
|
||||||
|
4. Pusher vers la branche (`git push origin feature/AmazingFeature`)
|
||||||
|
5. 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](https://git.h3campus.fr/Johnny)
|
||||||
|
|
||||||
|
## 🔗 Liens utiles
|
||||||
|
|
||||||
|
- [Documentation rkhunter](http://rkhunter.sourceforge.net/)
|
||||||
|
- [Documentation ClamAV](https://docs.clamav.net/)
|
||||||
|
- [Documentation AIDE](https://aide.github.io/)
|
||||||
|
- [Debian Security](https://www.debian.org/security/)
|
||||||
|
|
||||||
|
## ⚠️ 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 !**
|
||||||
Loading…
Reference in New Issue