#!/bin/bash # Définition des variables MAILDIR="/var/mail/vhosts" POSTFIX_CONFIG="/etc/postfix/virtual_domains" USER_VMAIL="vmail" GROUP_VMAIL="vmail" # Vérifier si le script est exécuté en root if [[ $EUID -ne 0 ]]; then echo "❌ Ce script doit être exécuté en tant que root." exit 1 fi # Vérifier si un domaine a été passé en paramètre if [[ -z "$1" ]]; then echo "Usage: $0 " exit 1 fi DOMAIN=$1 # Vérifier si le domaine est déjà enregistré if grep -q "^$DOMAIN$" "$POSTFIX_CONFIG"; then echo "⚠️ Le domaine $DOMAIN est déjà configuré dans Postfix." exit 1 fi echo "🔹 Ajout du domaine : $DOMAIN" echo "$DOMAIN" >> "$POSTFIX_CONFIG" # Création du répertoire pour le domaine DOMAIN_DIR="$MAILDIR/$DOMAIN" if [[ ! -d "$DOMAIN_DIR" ]]; then echo "📁 Création du dossier mail pour $DOMAIN" mkdir -p "$DOMAIN_DIR" chown -R "$USER_VMAIL:$GROUP_VMAIL" "$DOMAIN_DIR" chmod -R 770 "$DOMAIN_DIR" else echo "⚠️ Le dossier $DOMAIN_DIR existe déjà." fi # Recharger Postfix pour appliquer les changements echo "🔄 Rechargement de Postfix..." systemctl reload postfix # Vérification de la bonne prise en compte if systemctl is-active --quiet postfix; then echo "✅ Domaine $DOMAIN ajouté avec succès et Postfix rechargé 🎉" else echo "❌ Erreur : Postfix ne fonctionne pas correctement après la mise à jour." exit 1 fi