- Ajout des droits pfx

This commit is contained in:
Frogg 2026-05-09 17:44:07 +02:00
parent 9a43025037
commit 9584375a76
1 changed files with 41 additions and 39 deletions

View File

@ -613,42 +613,7 @@ do_deb_sys_cert_install(){
msg_success "Certificat généré avec succès dans /etc/ssl/wildcard/"
msg_warning "[4/6] Modification des droits de lecture du certificat..."
# S'assurer que le groupe existe avant la boucle
groupadd -f ssl-cert
for SVC in $CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES; do
if systemctl is-active --quiet "$SVC"; then
# On récupère l'utilisateur. On ajoute || true pour éviter que le script s'arrête si pgrep échoue
PID=$(pgrep -f "$SVC" | head -n1)
if [ -n "$PID" ]; then
SVC_USER=$(ps -o user= -p "$PID" | tr -d ' ')
if [ -n "$SVC_USER" ] && [ "$SVC_USER" != "root" ]; then
echo "🚀 Service détecté : $SVC (Utilisateur : $SVC_USER)"
# Ajout au groupe
usermod -aG ssl-cert "$SVC_USER"
# Application des droits sur la clé
chown root:ssl-cert /etc/ssl/wildcard/server.key
chmod 640 /etc/ssl/wildcard/server.key
# Le certificat doit être lisible (souvent déjà 644)
chmod 644 /etc/ssl/wildcard/server.crt
msg_success "Droit ajouté pour $SVC_USER sur $SVC"
# CRITIQUE : Redémarrage pour appliquer le changement de groupe
msg_warning "Redémarrage de $SVC pour appliquer les nouveaux droits..."
systemctl restart "$SVC"
fi
fi
fi
done
msg_warning "[5/6] Installation automatique du Root CA..."
msg_warning "[4/6] Installation automatique du Root CA..."
# 1. Définition des chemins
# On s'assure de retrouver le fichier même si la variable a sauté
@ -678,15 +643,17 @@ do_deb_sys_cert_install(){
rm -rf "/tmp/step-config"
# 5. Planification
msg_warning "[6/6] Activation du renouvellement automatique..."
msg_warning "[5/6] Activation du renouvellement automatique..."
# Chemins des fichiers
local CERT_CRT="/etc/ssl/wildcard/server.crt"
local CERT_KEY="/etc/ssl/wildcard/server.key"
local CERT_PFX="/etc/ssl/wildcard/server.pfx"
# Commande pour générer le PFX sans mot de passe
local PFX_CMD="openssl pkcs12 -export -out $CERT_PFX -inkey $CERT_KEY -in $CERT_CRT -passout pass:"
# On récupère dynamiquement le groupe actuel du dossier ou du certificat existant
local CURRENT_GROUP=$(stat -c '%G' /etc/ssl/wildcard/)
# La commande utilise maintenant cette variable détectée au vol
local PFX_CMD="openssl pkcs12 -export -out $CERT_PFX -inkey $CERT_KEY -in $CERT_CRT -passout pass: && chown root:$CURRENT_GROUP $CERT_PFX && chmod 640 $CERT_PFX"
# On assemble tout dans le Cron : Renew -> PFX -> Restart Services
local STEP_BIN=$(which step)
@ -720,6 +687,41 @@ do_deb_sys_cert_install(){
msg_success "Cron mis à jour avec restart automatique des services."
msg_warning "[6/6] Modification des droits de lecture du certificat..."
# S'assurer que le groupe existe avant la boucle
groupadd -f ssl-cert
for SVC in $CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES; do
if systemctl is-active --quiet "$SVC"; then
# On récupère l'utilisateur. On ajoute || true pour éviter que le script s'arrête si pgrep échoue
PID=$(pgrep -f "$SVC" | head -n1)
if [ -n "$PID" ]; then
SVC_USER=$(ps -o user= -p "$PID" | tr -d ' ')
if [ -n "$SVC_USER" ] && [ "$SVC_USER" != "root" ]; then
echo "🚀 Service détecté : $SVC (Utilisateur : $SVC_USER)"
# Ajout au groupe
usermod -aG ssl-cert "$SVC_USER"
# Application des droits sur la clé
chown root:ssl-cert /etc/ssl/wildcard/server.key
chmod 640 /etc/ssl/wildcard/server.key
chmod 640 /etc/ssl/wildcard/server.pfx
# Le certificat doit être lisible (souvent déjà 644)
chmod 644 /etc/ssl/wildcard/server.crt
msg_success "Droit ajouté pour $SVC_USER sur $SVC"
# CRITIQUE : Redémarrage pour appliquer le changement de groupe
msg_warning "Redémarrage de $SVC pour appliquer les nouveaux droits..."
systemctl restart "$SVC"
fi
fi
fi
done
msg_success " "
msg_success " ################################"
msg_success " # Tout est prêt et configuré ! # "