Skip to content

TINEHO/Secure-Environment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Environnement Securise

  _____ _    _ _____ ____  _____   _____ ___  ______ ______ _____  ____  
 / ____| |  | |  __ \___ \|  __ \ / ____/ _ \|  ____|  ____|  __ \|___ \ 
| (___ | |  | | |__) |__) | |__) | |   | | | | |__  | |__  | |__) | __) |
 \___ \| |  | |  ___/|__ <|  _  /| |   | | | |  __| |  __| |  _  / |__ < 
 ____) | |__| | |    ___) | | \ \| |___| |_| | |    | |    | | \ \ ___) |
|_____/ \____/|_|   |____/|_|  \_\\_____\___/|_|    |_|    |_|  \_\____/ 

Ce projet en Bash permet de créer, chiffrer, ouvrir, fermer et vérifier le statut d’un coffre-fort sécurisé sous Linux. Il combine un coffre-fort chiffré LUKS avec la gestion automatisée des clés GPG et SSH.

  • Le script doit être exécuté avec les droits root pour fonctionner correctement
  • Tous les fichiers sensibles sont automatiquement protégés avec les bonnes permissions
  • Le chiffrement LUKS AES-256 assure une protection de niveau militaire
  • Les clés privées ne quittent jamais le coffre sauf export explicite

Coffre-fort chiffré

  • Création d'un fichier chiffré (LUKS) pour stocker des données sensibles
  • Montage/démontage automatique du coffre
  • Journalisation des accès dans un fichier log protégé
  • Gestion des permissions et attributs de sécurité

Gestion des clés GPG

  • Génération automatique de paires de clés GPG (RSA 2048 bits)
  • Export sécurisé des clés publiques et privées
  • Import/export des clés entre le coffre et le trousseau système
  • Protection renforcée des clés privées

Configuration SSH avancée

  • Import automatique des configurations SSH existantes
  • Gestion des clés SSH avec migration vers le coffre
  • Alias automatique (evsh) pour SSH sécurisé
  • Support des configurations multi-hosts

Sécurité renforcée

  • Application automatique des bonnes permissions
  • Attributs de fichiers immutables pour la protection
  • Journalisation des accès dans un fichier log protégé
  • Nettoyage sécurisé des variables sensibles

Prérequis

  • Système Linux
  • Accès root
  • Dépendances requises :
    • cryptsetup - Chiffrement LUKS
    • gnupg - Gestion des clés GPG
    • openssh-client - Outils SSH
    • figlet - Affichage du banner (optionnel)

Installation des dépendances :

sudo apt update
sudo apt install cryptsetup gnupg openssh-client figlet

Installation

  1. Clonez ou téléchargez le projet
  2. Rendez le script exécutable :
chmod +x coffre.sh
  1. (Recommandé / Optionnel) Créez un lien symbolique pour un accès global :
sudo ln -s $(pwd)/coffre.sh /usr/local/bin/coffre

Utilisation

Lancez le script avec les droits root et l’une des commandes suivantes :

sudo ./coffre.sh [COMMANDE]

Gestion du coffre

  • create - Crée un nouveau coffre-fort chiffré
  • open - Ouvre et monte le coffre-fort existant
  • close - Ferme et démonte le coffre-fort
  • status - Affiche le statut du coffre-fort

Gestion des clés GPG

  • gpggen - Génère une nouvelle paire de clés GPG dans le coffre
  • gpg-import - Importe les clés GPG du coffre vers le trousseau système
  • gpg-export - Exporte les clés GPG du trousseau système vers le coffre

Configuration SSH

  • ssh-alias - Configure l'alias SSH (evsh)
  • ssh-import - Importe les configurations SSH existantes vers le coffre

Exemples d'utilisation

Création et ouverture d'un coffre

# Créer un nouveau coffre
sudo ./coffre.sh create

# Ouvrir le coffre existant
sudo ./coffre.sh open

# Vérifier le statut
sudo ./coffre.sh status

Gestion des clés GPG

# Générer une nouvelle paire de clés GPG
sudo ./coffre.sh gpggen

# Exporter des clés existantes vers le coffre
sudo ./coffre.sh gpg-export

# Importer les clés du coffre vers le système
sudo ./coffre.sh gpg-import

Configuration SSH

# Configurer l'alias evsh
sudo ./coffre.sh ssh-alias

# Importer une configuration SSH existante
sudo ./coffre.sh ssh-import

Sécurité

Points importants de sécurité :

  • Le script doit TOUJOURS être exécuté avec les droits root
  • Les mots de passe ne sont jamais stockés en plaintext
  • Les fichiers sensibles sont automatiquement protégés avec chmod 600
  • Le fichier coffre.img est rendu immuable avec chattr +i
  • Les logs sont protégés en écriture seule avec chattr +a
  • Toujours fermer le coffre après utilisation

Structure du coffre

Une fois ouvert, le coffre est monté sur /mnt/coffre et peut contenir :

/mnt/coffre/
├── coffre.log          # Journal des accès
├── gpg/                # Dossier des clés GPG
│   ├── public.asc      # Clé publique
│   └── private.asc     # Clé privée (optionnel)
├── ssh_config          # Configuration SSH
├── alias_evsh.sh       # Script d'alias SSH
└── [vos fichiers]      # Autres données sensibles

Licence

MIT License

Copyright (c) 2025 [TINEHHO && Selixah]

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages