Files
SecureCheck/README.md
2026-04-05 18:56:26 +02:00

3.2 KiB

SecureCheck

SecureCheck est une application Python en mode console semi-graphique pour :

  • automatiser des contrôles de sécurité Linux ;
  • lancer des installations et configurations système par lots ;
  • sauvegarder des scénarios réutilisables ;
  • précharger un scénario puis l'ajuster avant exécution ;
  • centraliser les journaux et rapports d'exécution.

Le projet inclut maintenant une identité visuelle embarquée :

  • icône SVG : securecheck/assets/securecheck-icon.svg
  • dérivés bitmap attendus : png / ico
  • bannière ASCII affichée directement dans la TUI

L'application cible prioritairement Debian et Ubuntu, avec une prise en charge partielle de dnf et pacman pour les opérations de base.

Fonctions prises en charge

  • Audit Lynis (lynis audit system --quick)
  • Vérification rootkits (rkhunter et chkrootkit)
  • Rotation des logs SecureCheck
  • Mises à jour système et mises à jour automatiques
  • Installation et configuration de zsh
  • Installation d'utilitaires usuels (ncdu, needrestart, git, curl, fail2ban, htop, nmon, duf, net-tools, etc.)
  • Installation et configuration automatique de zram
  • Vérification et configuration du pare-feu
  • Vérification / installation de Docker avec configuration de rotation des logs
  • Scénarios persistés en JSON
  • Tableau d'état avec indicateurs rouge / vert pour services et composants

Lancement

Depuis le dossier du projet :

python3 -m securecheck

Ou après installation locale :

pip install .
securecheck

Utilisation

Interface interactive :

  • / : naviguer
  • Espace : cocher / décocher une tâche
  • a : charger le scénario de base
  • s : sauvegarder la sélection courante
  • l : charger un scénario
  • d : afficher le tableau d'état
  • x : supprimer un scénario utilisateur
  • r : exécuter la sélection
  • q : quitter

Mode non interactif :

python3 -m securecheck --dry-run --tasks system_update,lynis_audit
python3 -m securecheck --scenario baseline_workstation --run
python3 -m securecheck --scenario baseline_workstation

Build d'un exécutable

La cible est un binaire autonome via PyInstaller. Exemple complet :

  1. Crée un environnement propre (obligatoire dans cet environnement verrouillé) :

    python3 -m venv .venv
    .venv/bin/pip install --upgrade pip
    .venv/bin/pip install pyinstaller
    
  2. Lance le script de construction :

    ./build_executable.sh
    

    Il appelle PyInstaller avec --onefile et embarque securecheck/assets.

  3. Le résultat est dans dist/securecheck (et build/ + securecheck.spec). Supprime dist/ build/ securecheck.spec si tu reconstruis.

Si PyInstaller ne peut pas être téléchargé (pas de réseau), installe-le via apt install pyinstaller ou télécharge-le manuellement avant de relancer le script.

Emplacements

  • Scénarios : ~/.config/securecheck/scenarios.json
  • État utilisateur : ~/.local/state/securecheck
  • Logs système : /var/log/securecheck si l'application est lancée avec privilèges, sinon repli dans l'état utilisateur

Recommandation

Pour les tâches système, lancez l'application avec sudo afin d'éviter des interruptions liées aux privilèges :

sudo -E python3 -m securecheck