- Ajout des droits pfx

This commit is contained in:
Frogg 2026-05-09 18:00:25 +02:00
parent de4af27635
commit a59d20fe6a
1 changed files with 29 additions and 18 deletions

View File

@ -642,30 +642,41 @@ do_deb_sys_cert_install(){
# C'est seulement MAINTENANT qu'on peut supprimer
rm -rf "/tmp/step-config"
# ==================================================================
# ==================================================================
# [5/6] ATTRIBUTION DES DROITS (D'abord les droits, ensuite le cron)
# ==================================================================
msg_warning "[5/6] Configuration des groupes et accès..."
msg_warning "[6/6] Finalisation des droits et redémarrage des services..."
# 1. Création du groupe technique
# 1. On s'assure que le groupe technique existe
groupadd -f ssl-cert
# 2. On change le groupe du DOSSIER parent pour que le futur "stat" du cron le voit
chown root:ssl-cert /etc/ssl/wildcard
chmod 750 /etc/ssl/wildcard
# --- Redémarrage intelligent (uniquement si le service EXISTE) ---
# 2. On boucle proprement sur TA liste de services définie en config
for SVC in $CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES; do
# On vérifie si l'unité systemd existe vraiment sur le système
if systemctl list-unit-files "$SVC.service" >/dev/null 2>&1; then
if systemctl is-active --quiet "$SVC"; then
msg_warning "Redémarrage de $SVC pour appliquer les droits..."
systemctl restart "$SVC"
fi
else
# On ignore silencieusement si le service n'est pas installé
continue
fi
# On ne traite le service QUE s'il est actif sur CETTE machine
if systemctl is-active --quiet "$SVC"; then
# Récupération de l'utilisateur qui fait tourner le processus
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
msg_info "🔧 Configuration de $SVC (Utilisateur : $SVC_USER)"
# Ajout au groupe et application des droits
usermod -aG ssl-cert "$SVC_USER"
# On applique les droits sur les fichiers générés
chown root:ssl-cert /etc/ssl/wildcard/server.key /etc/ssl/wildcard/server.pfx
chmod 640 /etc/ssl/wildcard/server.key /etc/ssl/wildcard/server.pfx
chmod 644 /etc/ssl/wildcard/server.crt
# Redémarrage pour valider l'appartenance au groupe
systemctl restart "$SVC"
msg_success "Service $SVC redémarré avec succès."
fi
fi
fi
# Si le service n'est pas actif, le script passe au suivant sans erreur.
done
# ==================================================================