feat: Demande du mot de passe admin et du ROOT_DOMAIN à l'initialisation

Modifie le processus d'initialisation de l'application :
- Lors du premier lancement, un formulaire vous demande maintenant de saisir le mot de passe souhaité pour le compte administrateur initial et le ROOT_DOMAIN à utiliser pour le certificat CA.
- Ces informations sont temporairement stockées en session.
- Le script `create_root_cert.sh` a été modifié pour accepter le ROOT_DOMAIN en argument et l'utilise pour générer le CN du certificat racine.
- Le mot de passe fourni est utilisé pour créer le premier utilisateur administrateur.
- Les variables de session contenant ces informations sont nettoyées après la fin du processus d'initialisation.

Cela améliore la sécurité en évitant un mot de passe par défaut codé en dur et permet une configuration flexible du domaine du certificat racine dès le départ.
This commit is contained in:
google-labs-jules[bot]
2025-06-15 09:34:10 +00:00
parent 699fe76b82
commit 5d0990b1d6
2 changed files with 56 additions and 13 deletions

View File

@ -3,6 +3,16 @@
# Ce script crée le certificat Root CA (Certificate Authority) auto-signé.
# Il est destiné à être exécuté une seule fois, au premier lancement de l'application.
# Récupérer le domaine racine depuis le premier argument
ROOT_DOMAIN=$1
# Vérifier si ROOT_DOMAIN est fourni
if [ -z "$ROOT_DOMAIN" ]; then
echo "Erreur: Le domaine racine (ROOT_DOMAIN) doit être fourni en argument."
echo "Usage: $0 <votredomaine.com>"
exit 1
fi
ROOT_CA_DIR="/opt/tls/root"
ROOT_KEY="$ROOT_CA_DIR/private/ca.key.pem"
ROOT_CERT="$ROOT_CA_DIR/certs/ca.cert.pem"
@ -29,7 +39,7 @@ chmod 400 "$ROOT_KEY" # Permissions strictes pour la clé privée
# Générer le certificat Root CA auto-signé
openssl req -x509 -new -nodes -key "$ROOT_KEY" -sha256 -days 3650 -out "$ROOT_CERT" \
-subj "/C=FR/ST=NORD/L=ROUBAIX/O=IT/OU=IT/emailAddress=sec@tips-mine.com/CN=intermediate-cert.$ROOT_DOMAIN/" \
-subj "/C=FR/ST=NORD/L=ROUBAIX/O=IT/OU=IT/emailAddress=sec@tips-mine.com/CN=ca.$ROOT_DOMAIN/" \
-config "$ROOT_CNF" -extensions v3_ca
chmod 444 "$ROOT_CERT" # Permissions en lecture seule pour le certificat