Serveurs Mail

serveurmail

Xavier

 

  1. Postfix – Très populaire, sécurisé, performant et simple à configurer.
  2. Exim – Utilisé par défaut sur Debian, hautement configurable.
  3. Sendmail – Un des plus anciens, encore utilisé mais réputé complexe à configurer.
  4. qmail – Robuste et modulaire, orienté sécurité.
  5. OpenSMTPD – Développé par l’équipe d’OpenBSD, simple, léger et sécurisé.
  6. Courier Mail Server – Serveur complet incluant IMAP, POP3 et webmail.
  7. Zimbra Collaboration Suite (Open Source Edition) – Fournit messagerie, calendrier et contacts.
  8. Kolab Groupware – Suite collaborative intégrant mail, calendrier, contacts.
  9. Citadel – Serveur groupware complet, facile à installer.
  10. iRedMail – Solution clé en main qui intègre Postfix, Dovecot, SpamAssassin, Roundcube, etc.

 

Installation de Postfix

  1. Mettre à jour ton système

sudo apt update && sudo apt upgrade -y

  1. Installer Postfix et les outils nécessaires

sudo apt install postfix mailutils -y

  1. Pendant l’installation, tu auras un écran de configuration :
    • Type de configuration du mail : choisis Internet Site
    • Nom de domaine : entre ton FQDN (ex: mail.mondomaine.com)

Image retirée. Configuration de base de Postfix

  1. Éditer le fichier principal de configuration

sudo nano /etc/postfix/main.cf

  1. Vérifie/ajoute ces lignes de base :

myhostname = mail.mondomaine.com mydomain = mondomaine.com myorigin = /etc/mailname mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain relayhost = mynetworks = 127.0.0.0/8 inet_interfaces = all inet_protocols = ipv4

  1. Redémarrer Postfix

sudo systemctl restart postfix sudo systemctl enable postfix

Image retirée. Tester l’envoi de mail

Envoie un mail de test :

echo "Ceci est un mail de test" | mail -s "Test Postfix" user@exemple.com

Puis vérifie les logs :

tail -f /var/log/mail.log

Image retirée. Sécurisation recommandée

  • Installer Dovecot si tu veux récupérer tes mails via IMAP/POP3 : sudo apt install dovecot-imapd dovecot-pop3d -y
  • Activer le chiffrement TLS dans /etc/postfix/main.cf : smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key smtpd_use_tls=yes smtp_tls_security_level=may smtpd_tls_auth_only=yes
  • Ajouter SPF, DKIM et DMARC dans les DNS pour éviter que tes mails aillent en spam.

 

 

 

nstallation d’un serveur mail complet

1. Pré-requis

  • Un serveur Linux (Debian/Ubuntu recommandé).
  • Un nom de domaine (ex: mondomaine.com).
  • Un enregistrement DNS A : mail.mondomaine.com pointant vers ton IP publique.
  • Un enregistrement DNS MX : mondomaine.com MX 10 mail.mondomaine.com.

2. Installer Postfix + Dovecot

sudo apt update && sudo apt upgrade -y sudo apt install postfix dovecot-imapd dovecot-pop3d mailutils -y

Pendant l’installation de Postfix :

  • Type de configuration : Internet Site
  • Nom de domaine : mail.mondomaine.com

3. Configuration de Postfix

Édite le fichier :

sudo nano /etc/postfix/main.cf

Ajoute ou modifie :

myhostname = mail.mondomaine.com mydomain = mondomaine.com myorigin = /etc/mailname mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain relayhost = mynetworks = 127.0.0.0/8 inet_interfaces = all inet_protocols = ipv4 home_mailbox = Maildir/ smtpd_tls_cert_file=/etc/letsencrypt/live/mail.mondomaine.com/fullchain.pem smtpd_tls_key_file=/etc/letsencrypt/live/mail.mondomaine.com/privkey.pem smtpd_use_tls=yes smtpd_tls_auth_only=yes smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination

Puis :

sudo systemctl restart postfix

4. Configuration de Dovecot

Édite :

sudo nano /etc/dovecot/dovecot.conf

Ajoute :

protocols = imap pop3 lmtp

Fichier 10-mail.conf :

mail_location = maildir:~/Maildir

Fichier 10-auth.conf :

disable_plaintext_auth = yes auth_mechanisms = plain login

Fichier 10-ssl.conf :

ssl = required ssl_cert = </etc/letsencrypt/live/mail.mondomaine.com/fullchain.pem ssl_key = </etc/letsencrypt/live/mail.mondomaine.com/privkey.pem

Redémarre :

sudo systemctl restart dovecot

5. Certificat SSL avec Let’s Encrypt

sudo apt install certbot python3-certbot-nginx -y sudo certbot certonly --standalone -d mail.mondomaine.com

Les certificats sont dans /etc/letsencrypt/live/mail.mondomaine.com/.

6. Configuration DNS anti-spam

Dans la zone DNS de mondomaine.com ajoute :

  • SPF : mondomaine.com. IN TXT "v=spf1 mx ~all"
  • DKIM (avec opendkim) : sudo apt install opendkim opendkim-tools -y Génère une clé et publie la clé publique dans le DNS.
  • DMARC : _dmarc.mondomaine.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@mondomaine.com"

7. Tester le serveur

  • Test envoi : echo "Test mail serveur" | mail -s "Test" user@externe.com
  • Vérifie les logs : tail -f /var/log/mail.log
  • Vérifie la délivrabilité (SPF, DKIM, DMARC) avec mail-tester.com.

 

Script Bash – Installation Serveur Mail

Image retirée. Sauvegarde ce script dans un fichier install-mailserver.sh, rends-le exécutable (chmod +x install-mailserver.sh) puis lance-le avec sudo ./install-mailserver.sh.

#!/bin/bash # ============================================================ # Script d’installation et configuration d’un serveur mail # Postfix + Dovecot + Let's Encrypt + SPF/DKIM/DMARC # Compatible Debian/Ubuntu # ============================================================ # Variables (modifie-les avant exécution) DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" EMAIL_ADMIN="postmaster@${DOMAIN}" echo "Image retirée. Installation du serveur mail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Mise à jour du système # ------------------------------------------------------------ apt update && apt upgrade -y # ------------------------------------------------------------ # 2. Installation des paquets nécessaires # ------------------------------------------------------------ apt install -y postfix dovecot-imapd dovecot-pop3d dovecot-lmtpd \ mailutils certbot python3-certbot-nginx opendkim opendkim-tools # ------------------------------------------------------------ # 3. Configuration de Postfix # ------------------------------------------------------------ echo "$DOMAIN" > /etc/mailname postconf -e "myhostname = $HOSTNAME" postconf -e "mydomain = $DOMAIN" postconf -e "myorigin = /etc/mailname" postconf -e "mydestination = \$myhostname, localhost.\$mydomain, localhost, \$mydomain" postconf -e "relayhost =" postconf -e "mynetworks = 127.0.0.0/8" postconf -e "inet_interfaces = all" postconf -e "inet_protocols = ipv4" postconf -e "home_mailbox = Maildir/" systemctl restart postfix # ------------------------------------------------------------ # 4. Configuration de Dovecot # ------------------------------------------------------------ sed -i "s/^#disable_plaintext_auth = yes/disable_plaintext_auth = yes/" /etc/dovecot/conf.d/10-auth.conf sed -i "s/^#mail_location.*/mail_location = maildir:\/home\/%u\/Maildir/" /etc/dovecot/conf.d/10-mail.conf sed -i "s/^ssl = .*/ssl = required/" /etc/dovecot/conf.d/10-ssl.conf systemctl restart dovecot # ------------------------------------------------------------ # 5. Certificat SSL Let's Encrypt # ------------------------------------------------------------ certbot certonly --standalone -d $HOSTNAME --non-interactive --agree-tos -m $EMAIL_ADMIN if [ -f "/etc/letsencrypt/live/$HOSTNAME/fullchain.pem" ]; then  postconf -e "smtpd_tls_cert_file=/etc/letsencrypt/live/$HOSTNAME/fullchain.pem"  postconf -e "smtpd_tls_key_file=/etc/letsencrypt/live/$HOSTNAME/privkey.pem"  postconf -e "smtpd_use_tls=yes"  postconf -e "smtpd_tls_auth_only=yes"  systemctl restart postfix dovecot fi # ------------------------------------------------------------ # 6. Configuration DKIM avec OpenDKIM # ------------------------------------------------------------ mkdir -p /etc/opendkim/keys/$DOMAIN opendkim-genkey -D /etc/opendkim/keys/$DOMAIN/ -d $DOMAIN -s mail chown -R opendkim:opendkim /etc/opendkim/keys/$DOMAIN chmod 600 /etc/opendkim/keys/$DOMAIN/mail.private cat >> /etc/opendkim.conf <<EOF Syslog                  yes UMask                   002 Domain                  * KeyFile                 /etc/opendkim/keys/$DOMAIN/mail.private Selector                mail Socket                  inet:12301@localhost EOF echo "SOCKET=\"inet:12301@localhost\"" >> /etc/default/opendkim systemctl restart opendkim systemctl enable opendkim # ------------------------------------------------------------ # 7. Instructions DNS # ------------------------------------------------------------ echo "=====================================================" echo "Image retirée. Installation terminée !" echo "Image retirée. Ajoute ces entrées DNS pour $DOMAIN :" echo "" echo "MX Record:" echo "  $DOMAIN.   IN MX 10   $HOSTNAME." echo "" echo "A Record:" echo "  $HOSTNAME.   IN A     [IP_PUBLIQUE_DU_SERVEUR]" echo "" echo "SPF Record:" echo "  $DOMAIN.   IN TXT   \"v=spf1 mx ~all\"" echo "" echo "DKIM Record:" cat /etc/opendkim/keys/$DOMAIN/mail.txt echo "" echo "DMARC Record:" echo "  _dmarc.$DOMAIN. IN TXT \"v=DMARC1; p=quarantine; rua=mailto:$EMAIL_ADMIN\"" echo "====================================================="

Image retirée. Remarques importantes :

  • Il faut remplacer mondomaine.com et l’adresse IP publique dans le script.
  • Le script génère les clés DKIM et affiche la clé publique à mettre dans ton DNS.
  • SPF, DKIM et DMARC doivent être ajoutés dans la zone DNS du domaine.
  • Tu peux tester ton serveur sur mail-tester.com.

 

 

DEUXIEME SERVEUR iRedMail

Installation iRedMail (Debian/Ubuntu)

1. Pré-requis

  • Un serveur Linux Debian/Ubuntu (minimum 2 Go RAM, 20 Go disque recommandé).
  • Un nom de domaine : mondomaine.com.
  • Un enregistrement DNS A : mail.mondomaine.com → [IP publique du serveur].
  • Un enregistrement MX : mondomaine.com MX 10 mail.mondomaine.com.
  • Accès root au serveur.

2. Mettre à jour le système

sudo apt update && sudo apt upgrade -y

3. Télécharger iRedMail

wget https://github.com/iredmail/iRedMail/archive/refs/tags/1.7.0.tar.gz tar zxvf 1.7.0.tar.gz cd iRedMail-1.7.0

Image retirée. (Vérifie la dernière version ici).

4. Lancer l’installation

sudo bash iRedMail.sh

Tu verras un assistant interactif. Voici les choix principaux :

  • Image retirée. Répertoire de stockage du mail : laisse par défaut /var/vmail.
  • Image retirée. Serveur web : Nginx ou Apache (Nginx recommandé).
  • Image retirée. Backend pour stocker les comptes :
    • MariaDB/MySQL (plus simple pour PME)
    • OpenLDAP (si tu veux un annuaire LDAP)
    • PostgreSQL (optionnel)
  • Image retirée. Nom de domaine principal : mondomaine.com.
  • Image retirée. Admin mail : postmaster@mondomaine.com (mot de passe défini pendant l’installation).

L’installateur configure automatiquement :

  • Postfix (MTA)
  • Dovecot (IMAP/POP3)
  • Amavis + SpamAssassin + ClamAV (anti-spam/antivirus)
  • Roundcube (webmail)
  • Fail2ban + firewall basique

5. Finalisation

À la fin, iRedMail affiche :

  • Image retirée. URL d’administration : https://mail.mondomaine.com/iredadmin/
  • Image retirée. Webmail : https://mail.mondomaine.com/mail/
  • Image retirée. Admin par défaut : postmaster@mondomaine.com

6. Configuration DNS anti-spam

Ajoute dans la zone DNS :

  • SPF : mondomaine.com. IN TXT "v=spf1 mx ~all"
  • DKIM : (clé générée automatiquement dans /var/lib/dkim/)
    Ajoute la clé publique DKIM affichée par iRedMail dans ton DNS.
  • DMARC : _dmarc.mondomaine.com. IN TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@mondomaine.com"

7. Vérifications

  • Test d’envoi : echo "Test iRedMail" | mail -s "Hello" user@gmail.com
  • Vérifie les logs : tail -f /var/log/mail.log
  • Teste sur mail-tester.com.

8. Gestion des comptes mail

  • Via l’interface iRedAdmin : https://mail.mondomaine.com/iredadmin/
  • Crée des boîtes (contact@mondomaine.com, info@mondomaine.com, etc.)

Image retirée. À ce stade, ton serveur iRedMail est opérationnel et sécurisé.

 

 

Script Bash : Installation Automatisée d’iRedMail

Image retirée. Sauvegarde ce script sous install-iredmail.sh, rends-le exécutable (chmod +x install-iredmail.sh), puis lance :

sudo ./install-iredmail.sh #!/bin/bash # ============================================================ # Script d’installation automatisée d’iRedMail # Postfix + Dovecot + Amavis + Roundcube + iRedAdmin # Backend = MariaDB # Compatible Debian/Ubuntu (serveur neuf recommandé) # ============================================================ # Variables à modifier DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" ADMIN_PASS="ChangeMoi123!"  # Mot de passe admin iRedAdmin EMAIL_ADMIN="postmaster@${DOMAIN}" IREDMAIL_VERSION="1.7.0"    # Vérifie la dernière version sur iredmail.org echo "Image retirée. Installation iRedMail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Préparation du serveur # ------------------------------------------------------------ apt update && apt upgrade -y apt install -y wget curl sudo lsb-release net-tools # Nom d’hôte hostnamectl set-hostname $HOSTNAME # ------------------------------------------------------------ # 2. Télécharger iRedMail # ------------------------------------------------------------ cd /root wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz tar zxvf ${IREDMAIL_VERSION}.tar.gz cd iRedMail-${IREDMAIL_VERSION} # ------------------------------------------------------------ # 3. Préconfigurer l’installation # ------------------------------------------------------------ cat > config.cfg <<EOF HOSTNAME=$HOSTNAME FIRST_DOMAIN=$DOMAIN FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS STORAGE_BASE_DIR=/var/vmail MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16) BACKEND=mariadb USE_IREDADMIN=YES USE_RCM=YES USE_NETDATA=NO USE_FAIL2BAN=YES EOF # ------------------------------------------------------------ # 4. Lancer l’installation automatique # ------------------------------------------------------------ echo "Image retirée. Démarrage de l’installation silencieuse iRedMail..." bash iRedMail.sh --silent --config config.cfg # ------------------------------------------------------------ # 5. Infos de fin # ------------------------------------------------------------ echo "=====================================================" echo "Image retirée. Installation terminée !" echo "Image retirée. Webmail   : https://$HOSTNAME/mail/" echo "Image retirée. Admin     : https://$HOSTNAME/iredadmin/" echo "Image retirée. Identifiant : $EMAIL_ADMIN" echo "Image retirée. Mot de passe : $ADMIN_PASS" echo "" echo "Image retirée. Pense à configurer tes enregistrements DNS :" echo "MX  : $DOMAIN   IN MX 10   $HOSTNAME" echo "A   : $HOSTNAME IN A       [IP_PUBLIQUE_DU_SERVEUR]" echo "SPF : $DOMAIN   IN TXT     \"v=spf1 mx ~all\"" echo "DKIM: clé générée dans /var/lib/dkim/" echo "DMARC: _dmarc.$DOMAIN IN TXT \"v=DMARC1; p=quarantine; rua=mailto:$EMAIL_ADMIN\"" echo "====================================================="

Image retirée. Ce que fait le script :

  • Installe automatiquement iRedMail.
  • Utilise MariaDB comme backend.
  • Crée le compte admin postmaster@mondomaine.com.
  • Configure Postfix, Dovecot, Amavis, SpamAssassin, ClamAV, Roundcube, Fail2ban.
  • Génère un mot de passe admin automatique (modifiable dans $ADMIN_PASS).

 

 

Script Bash iRedMail + Let’s Encrypt

Image retirée. Sauvegarde sous install-iredmail.sh puis lance :

chmod +x install-iredmail.sh sudo ./install-iredmail.sh #!/bin/bash # ============================================================ # Script d’installation automatisée d’iRedMail + Let's Encrypt # Postfix + Dovecot + Amavis + Roundcube + iRedAdmin # Backend = MariaDB # Compatible Debian/Ubuntu (serveur neuf recommandé) # ============================================================ # Variables à modifier DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" ADMIN_PASS="ChangeMoi123!"  # Mot de passe admin iRedAdmin EMAIL_ADMIN="postmaster@${DOMAIN}" IREDMAIL_VERSION="1.7.0"    # Vérifie la dernière version sur iredmail.org echo "Image retirée. Installation iRedMail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Préparation du serveur # ------------------------------------------------------------ apt update && apt upgrade -y apt install -y wget curl sudo lsb-release net-tools certbot python3-certbot-nginx # Nom d’hôte hostnamectl set-hostname $HOSTNAME # ------------------------------------------------------------ # 2. Télécharger iRedMail # ------------------------------------------------------------ cd /root wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz tar zxvf ${IREDMAIL_VERSION}.tar.gz cd iRedMail-${IREDMAIL_VERSION} # ------------------------------------------------------------ # 3. Préconfigurer l’installation # ------------------------------------------------------------ cat > config.cfg <<EOF HOSTNAME=$HOSTNAME FIRST_DOMAIN=$DOMAIN FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS STORAGE_BASE_DIR=/var/vmail MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16) BACKEND=mariadb USE_IREDADMIN=YES USE_RCM=YES USE_NETDATA=NO USE_FAIL2BAN=YES EOF # ------------------------------------------------------------ # 4. Lancer l’installation automatique # ------------------------------------------------------------ echo "Image retirée. Démarrage de l’installation silencieuse iRedMail..." bash iRedMail.sh --silent --config config.cfg # ------------------------------------------------------------ # 5. Générer certificat Let's Encrypt # ------------------------------------------------------------ echo "Image retirée. Génération du certificat SSL Let's Encrypt..." systemctl stop nginx apache2 2>/dev/null certbot certonly --standalone -d $HOSTNAME --non-interactive --agree-tos -m $EMAIL_ADMIN if [ -f "/etc/letsencrypt/live/$HOSTNAME/fullchain.pem" ]; then    echo "Image retirée. Certificat généré avec succès, configuration de Postfix/Dovecot/Nginx..."    ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt    ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key    systemctl restart postfix dovecot nginx else    echo "Image retirée. Erreur : certificat Let's Encrypt non généré." fi # ------------------------------------------------------------ # 6. Infos de fin # ------------------------------------------------------------ echo "=====================================================" echo "Image retirée. Installation terminée !" echo "Image retirée. Webmail   : https://$HOSTNAME/mail/" echo "Image retirée. Admin     : https://$HOSTNAME/iredadmin/" echo "Image retirée. Identifiant : $EMAIL_ADMIN" echo "Image retirée. Mot de passe : $ADMIN_PASS" echo "" echo "Image retirée. Pense à configurer tes enregistrements DNS :" echo "MX  : $DOMAIN   IN MX 10   $HOSTNAME" echo "A   : $HOSTNAME IN A       [IP_PUBLIQUE_DU_SERVEUR]" echo "SPF : $DOMAIN   IN TXT     \"v=spf1 mx ~all\"" echo "DKIM: clé générée dans /var/lib/dkim/" echo "DMARC: _dmarc.$DOMAIN IN TXT \"v=DMARC1; p=quarantine; rua=mailto:$EMAIL_ADMIN\"" echo "" echo "Image retirée. N’oublie pas de mettre en place un cron pour renouveler Let's Encrypt :" echo "0 3 * * * certbot renew --quiet && systemctl reload postfix dovecot nginx" echo "====================================================="

 

 

 

Script Bash iRedMail + Let’s Encrypt + Vérification DNS

Image retirée. Fichier : install-iredmail.sh

#!/bin/bash # ============================================================ # Script d’installation automatisée d’iRedMail + Let's Encrypt # + Vérification DNS (MX, A, SPF, DKIM, DMARC) # ============================================================ # Variables à modifier DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" ADMIN_PASS="ChangeMoi123!"   # Mot de passe admin iRedAdmin EMAIL_ADMIN="postmaster@${DOMAIN}" IREDMAIL_VERSION="1.7.0"     # Vérifie la dernière version sur iredmail.org echo "Image retirée. Installation iRedMail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Préparation du serveur # ------------------------------------------------------------ apt update && apt upgrade -y apt install -y wget curl sudo lsb-release net-tools dnsutils certbot python3-certbot-nginx hostnamectl set-hostname $HOSTNAME # ------------------------------------------------------------ # 2. Télécharger iRedMail # ------------------------------------------------------------ cd /root wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz tar zxvf ${IREDMAIL_VERSION}.tar.gz cd iRedMail-${IREDMAIL_VERSION} # ------------------------------------------------------------ # 3. Préconfigurer l’installation # ------------------------------------------------------------ cat > config.cfg <<EOF HOSTNAME=$HOSTNAME FIRST_DOMAIN=$DOMAIN FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS STORAGE_BASE_DIR=/var/vmail MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16) BACKEND=mariadb USE_IREDADMIN=YES USE_RCM=YES USE_NETDATA=NO USE_FAIL2BAN=YES EOF # ------------------------------------------------------------ # 4. Lancer l’installation automatique # ------------------------------------------------------------ echo "Image retirée. Installation silencieuse iRedMail..." bash iRedMail.sh --silent --config config.cfg # ------------------------------------------------------------ # 5. Certificat SSL Let's Encrypt # ------------------------------------------------------------ echo "Image retirée. Génération du certificat SSL Let's Encrypt..." systemctl stop nginx apache2 2>/dev/null certbot certonly --standalone -d $HOSTNAME --non-interactive --agree-tos -m $EMAIL_ADMIN if [ -f "/etc/letsencrypt/live/$HOSTNAME/fullchain.pem" ]; then    echo "Image retirée. Certificat généré avec succès, configuration services..."    ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt    ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key    systemctl restart postfix dovecot nginx else    echo "Image retirée. Erreur : certificat Let's Encrypt non généré." fi # ------------------------------------------------------------ # 6. Vérification DNS (MX, A, SPF, DKIM, DMARC) # ------------------------------------------------------------ echo "Image retirée. Vérification des enregistrements DNS pour $DOMAIN" echo "=====================================================" echo "Image retirée. MX record :" dig MX $DOMAIN +short echo "Image retirée. A record ($HOSTNAME) :" dig A $HOSTNAME +short echo "Image retirée. SPF record :" dig TXT $DOMAIN +short | grep "spf" echo "Image retirée. DKIM record :" dig TXT mail._domainkey.$DOMAIN +short echo "Image retirée. DMARC record :" dig TXT _dmarc.$DOMAIN +short echo "=====================================================" # ------------------------------------------------------------ # 7. Infos de fin # ------------------------------------------------------------ echo "Image retirée. Installation terminée !" echo "Image retirée. Webmail   : https://$HOSTNAME/mail/" echo "Image retirée. Admin     : https://$HOSTNAME/iredadmin/" echo "Image retirée. Identifiant : $EMAIL_ADMIN" echo "Image retirée. Mot de passe : $ADMIN_PASS" echo "" echo "Image retirée. Pense à configurer tes enregistrements DNS si nécessaire." echo "Image retirée. Vérifie tes scores sur https://www.mail-tester.com" echo "" echo "Image retirée. Cron recommandé pour renouveler Let's Encrypt :" echo "0 3 * * * certbot renew --quiet && systemctl reload postfix dovecot nginx"

Image retirée. Ce que fait ce script en plus :

  1. Installe iRedMail en mode silencieux avec MariaDB.
  2. Configure SSL Let’s Encrypt automatiquement.
  3. Vérifie tes DNS en fin d’installation :
    • MX
    • A (mail.mondomaine.com)
    • SPF
    • DKIM
    • DMARC

 

 

 

Script Bash iRedMail + SSL + Vérification DNS + Alerte Email

Image retirée. Ce script va :

  • Installer iRedMail
  • Générer un certificat Let’s Encrypt
  • Vérifier les DNS (MX, A, SPF, DKIM, DMARC)
  • Configurer un cron job qui renouvelle le certificat et t’envoie un mail si ça échoue Image retirée.

#!/bin/bash # ============================================================ # Script d’installation automatisée d’iRedMail + Let's Encrypt # + Vérification DNS + Alerte Email en cas d’échec SSL # ============================================================ # Variables à modifier DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" ADMIN_PASS="ChangeMoi123!"   # Mot de passe admin iRedAdmin EMAIL_ADMIN="postmaster@${DOMAIN}"  # Réception alertes IREDMAIL_VERSION="1.7.0"     # Vérifie la dernière version sur iredmail.org echo "Image retirée. Installation iRedMail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Préparation du serveur # ------------------------------------------------------------ apt update && apt upgrade -y apt install -y wget curl sudo lsb-release net-tools dnsutils mailutils certbot python3-certbot-nginx hostnamectl set-hostname $HOSTNAME # ------------------------------------------------------------ # 2. Télécharger iRedMail # ------------------------------------------------------------ cd /root wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz tar zxvf ${IREDMAIL_VERSION}.tar.gz cd iRedMail-${IREDMAIL_VERSION} # ------------------------------------------------------------ # 3. Préconfigurer l’installation # ------------------------------------------------------------ cat > config.cfg <<EOF HOSTNAME=$HOSTNAME FIRST_DOMAIN=$DOMAIN FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS STORAGE_BASE_DIR=/var/vmail MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16) BACKEND=mariadb USE_IREDADMIN=YES USE_RCM=YES USE_NETDATA=NO USE_FAIL2BAN=YES EOF # ------------------------------------------------------------ # 4. Lancer l’installation automatique # ------------------------------------------------------------ echo "Image retirée. Installation silencieuse iRedMail..." bash iRedMail.sh --silent --config config.cfg # ------------------------------------------------------------ # 5. Certificat SSL Let's Encrypt # ------------------------------------------------------------ echo "Image retirée. Génération du certificat SSL Let's Encrypt..." systemctl stop nginx apache2 2>/dev/null certbot certonly --standalone -d $HOSTNAME --non-interactive --agree-tos -m $EMAIL_ADMIN if [ -f "/etc/letsencrypt/live/$HOSTNAME/fullchain.pem" ]; then    echo "Image retirée. Certificat généré avec succès, configuration services..."    ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt    ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key    systemctl restart postfix dovecot nginx else    echo "Image retirée. Erreur : certificat Let's Encrypt non généré." | mail -s "Image retirée. [ALERTE] SSL échec sur $HOSTNAME" $EMAIL_ADMIN fi # ------------------------------------------------------------ # 6. Vérification DNS (MX, A, SPF, DKIM, DMARC) # ------------------------------------------------------------ echo "Image retirée. Vérification des enregistrements DNS pour $DOMAIN" echo "=====================================================" echo "Image retirée. MX record :" dig MX $DOMAIN +short echo "Image retirée. A record ($HOSTNAME) :" dig A $HOSTNAME +short echo "Image retirée. SPF record :" dig TXT $DOMAIN +short | grep "spf" echo "Image retirée. DKIM record :" dig TXT mail._domainkey.$DOMAIN +short echo "Image retirée. DMARC record :" dig TXT _dmarc.$DOMAIN +short echo "=====================================================" # ------------------------------------------------------------ # 7. Cron pour renouvellement Let's Encrypt + Alerte # ------------------------------------------------------------ echo "Image retirée. Mise en place d’un cron job pour renouvellement SSL..." cat > /etc/cron.d/letsencrypt-renew <<EOF 0 3 * * * root certbot renew --quiet || echo "Image retirée. Echec renouvellement Let's Encrypt sur $HOSTNAME" | mail -s "[ALERTE] SSL non renouvelé" $EMAIL_ADMIN EOF chmod 644 /etc/cron.d/letsencrypt-renew # ------------------------------------------------------------ # 8. Infos de fin # ------------------------------------------------------------ echo "Image retirée. Installation terminée !" echo "Image retirée. Webmail   : https://$HOSTNAME/mail/" echo "Image retirée. Admin     : https://$HOSTNAME/iredadmin/" echo "Image retirée. Identifiant : $EMAIL_ADMIN" echo "Image retirée. Mot de passe : $ADMIN_PASS" echo "" echo "Image retirée. Pense à configurer tes enregistrements DNS si nécessaire." echo "Image retirée. Vérifie tes scores sur https://www.mail-tester.com" echo "" echo "Image retirée. Un cron a été ajouté pour renouveler SSL chaque jour." echo "Image retirée. En cas d’échec, une alerte sera envoyée à $EMAIL_ADMIN."

Image retirée. Ce que fait ce script en plus :

  1. Installe iRedMail avec MariaDB.
  2. Configure SSL Let’s Encrypt.
  3. Vérifie les enregistrements DNS (MX, A, SPF, DKIM, DMARC).
  4. Ajoute un cron job quotidien (3h du matin) :

 

 

 

Script iRedMail complet avec Test d’envoi

Le script fera maintenant :

  1. Installation iRedMail avec MariaDB
  2. SSL Let’s Encrypt
  3. Vérification DNS (MX, A, SPF, DKIM, DMARC)
  4. Cron de renouvellement SSL avec alerte mail
  5. Test automatique d’envoi de mail vers une adresse externe (Gmail/Outlook)

#!/bin/bash # ============================================================ # Script complet iRedMail + SSL + Vérification DNS + Test envoi mail # ============================================================ # Variables à modifier DOMAIN="mondomaine.com" HOSTNAME="mail.${DOMAIN}" ADMIN_PASS="ChangeMoi123!"   EMAIL_ADMIN="postmaster@${DOMAIN}"   TEST_MAIL="tonemail@gmail.com"   # Adresse pour test envoi IREDMAIL_VERSION="1.7.0"         echo "Image retirée. Installation iRedMail pour le domaine: $DOMAIN" # ------------------------------------------------------------ # 1. Préparation du serveur # ------------------------------------------------------------ apt update && apt upgrade -y apt install -y wget curl sudo lsb-release net-tools dnsutils mailutils certbot python3-certbot-nginx hostnamectl set-hostname $HOSTNAME # ------------------------------------------------------------ # 2. Télécharger iRedMail # ------------------------------------------------------------ cd /root wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz tar zxvf ${IREDMAIL_VERSION}.tar.gz cd iRedMail-${IREDMAIL_VERSION} # ------------------------------------------------------------ # 3. Préconfigurer l’installation # ------------------------------------------------------------ cat > config.cfg <<EOF HOSTNAME=$HOSTNAME FIRST_DOMAIN=$DOMAIN FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS STORAGE_BASE_DIR=/var/vmail MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16) BACKEND=mariadb USE_IREDADMIN=YES USE_RCM=YES USE_NETDATA=NO USE_FAIL2BAN=YES EOF # ------------------------------------------------------------ # 4. Lancer l’installation automatique # ------------------------------------------------------------ echo "Image retirée. Installation silencieuse iRedMail..." bash iRedMail.sh --silent --config config.cfg # ------------------------------------------------------------ # 5. Certificat SSL Let's Encrypt # ------------------------------------------------------------ echo "Image retirée. Génération du certificat SSL Let's Encrypt..." systemctl stop nginx apache2 2>/dev/null certbot certonly --standalone -d $HOSTNAME --non-interactive --agree-tos -m $EMAIL_ADMIN if [ -f "/etc/letsencrypt/live/$HOSTNAME/fullchain.pem" ]; then    echo "Image retirée. Certificat généré avec succès, configuration services..."    ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt    ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key    systemctl restart postfix dovecot nginx else    echo "Image retirée. SSL non généré !" | mail -s "Image retirée. [ALERTE] SSL $HOSTNAME" $EMAIL_ADMIN fi # ------------------------------------------------------------ # 6. Vérification DNS # ------------------------------------------------------------ echo "Image retirée. Vérification DNS" dig MX $DOMAIN +short dig A $HOSTNAME +short dig TXT $DOMAIN +short | grep "spf" dig TXT mail._domainkey.$DOMAIN +short dig TXT _dmarc.$DOMAIN +short # ------------------------------------------------------------ # 7. Cron pour renouvellement SSL avec alerte # ------------------------------------------------------------ echo "0 3 * * * root certbot renew --quiet || echo 'Image retirée. SSL non renouvelé $HOSTNAME' | mail -s '[ALERTE] SSL' $EMAIL_ADMIN" > /etc/cron.d/letsencrypt-renew chmod 644 /etc/cron.d/letsencrypt-renew # ------------------------------------------------------------ # 8. Test d’envoi de mail # ------------------------------------------------------------ echo "Image retirée. Envoi d’un mail de test vers $TEST_MAIL..." echo "Test iRedMail après installation réussie" | mail -s "Test iRedMail $HOSTNAME" $TEST_MAIL echo "Image retirée. Script terminé !" echo "Webmail : https://$HOSTNAME/mail/" echo "Admin   : https://$HOSTNAME/iredadmin/" echo "Identifiant admin : $EMAIL_ADMIN" echo "Mot de passe      : $ADMIN_PASS" echo "" echo "Image retirée. Vérifie dans la boîte $TEST_MAIL si le mail est bien reçu."

Image retirée. Ce que fait maintenant le script :

  1. Installe iRedMail + MariaDB
  2. Configure SSL Let’s Encrypt
  3. Vérifie DNS (MX, A, SPF, DKIM, DMARC)
  4. Configure un cron pour renouvellement SSL avec alerte
  5. Envoie automatiquement un mail de test vers l’adresse que tu définis (TEST_MAIL)

Si tu veux, je peux faire une version finale ultra complète qui :

  • Installe iRedMail
  • SSL Let’s Encrypt
  • Vérifie DNS
  • Teste l’envoi de mail
  • Teste la réception sur une boîte externe
  • Fait un rapport final complet avec toutes les vérifications et alertes dans un fichier HTML ou TXT.

 

 

 

!/bin/bash============================================================Script final iRedMail complet + SSL + DNS + Test mail + Rapport============================================================Variables à modifier

DOMAIN= »mondomaine.com »
HOSTNAME= »mail.${DOMAIN} »
ADMIN_PASS= »ChangeMoi123! »
EMAIL_ADMIN= »postmaster@${DOMAIN} » # Alerte SSL
TEST_MAIL= »tonemail@gmail.com » # Boîte externe pour test
IREDMAIL_VERSION= »1.7.0″ # Dernière version iRedMail

REPORT_FILE= »/root/iredmail_report.txt »

echo « Image retirée. Installation iRedMail pour le domaine: $DOMAIN »
echo « Rapport final : $REPORT_FILE »
echo « Rapport iRedMail – $(date) » > $REPORT_FILE

————————————————————1. Préparation serveur————————————————————

apt update && apt upgrade -y
apt install -y wget curl sudo lsb-release net-tools dnsutils mailutils certbot python3-certbot-nginx

hostnamectl set-hostname $HOSTNAME

————————————————————2. Télécharger et préparer iRedMail————————————————————

cd /root
wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz
tar zxvf ${IREDMAIL_VERSION}.tar.gz
cd iRedMail-${IREDMAIL_VERSION}

cat > config.cfg <<EOF
HOSTNAME=$HOSTNAME
FIRST_DOMAIN=$DOMAIN
FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN
FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS
STORAGE_BASE_DIR=/var/vmail
MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16)
BACKEND=mariadb
USE_IREDADMIN=YES
USE_RCM=YES
USE_NETDATA=NO
USE_FAIL2BAN=YES
EOF

————————————————————3. Installer iRedMail————————————————————

echo « Image retirée. Installation silencieuse iRedMail… » | tee -a $REPORT_FILE
bash iRedMail.sh –silent –config config.cfg >> $REPORT_FILE 2>&1

————————————————————4. Certificat SSL Let’s Encrypt————————————————————

echo « Image retirée. Génération du certificat SSL Let’s Encrypt… » | tee -a $REPORT_FILE
systemctl stop nginx apache2 2>/dev/null
certbot certonly –standalone -d $HOSTNAME –non-interactive –agree-tos -m $EMAIL_ADMIN >> $REPORT_FILE 2>&1

if [ -f « /etc/letsencrypt/live/$HOSTNAME/fullchain.pem » ]; then
ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt
ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key
systemctl restart postfix dovecot nginx
echo « Image retirée. SSL généré avec succès » | tee -a $REPORT_FILE
else
echo « Image retirée. SSL non généré ! » | tee -a $REPORT_FILE
echo « SSL échec sur $HOSTNAME » | mail -s « Image retirée. [ALERTE] SSL $HOSTNAME » $EMAIL_ADMIN
fi

————————————————————5. Vérification DNS————————————————————

echo « Image retirée. Vérification DNS » | tee -a $REPORT_FILE
echo « MX record : » | tee -a $REPORT_FILE
dig MX $DOMAIN +short | tee -a $REPORT_FILE

echo « A record ($HOSTNAME) : » | tee -a $REPORT_FILE
dig A $HOSTNAME +short | tee -a $REPORT_FILE

echo « SPF record : » | tee -a $REPORT_FILE
dig TXT $DOMAIN +short | grep « spf » | tee -a $REPORT_FILE

echo « DKIM record : » | tee -a $REPORT_FILE
dig TXT mail._domainkey.$DOMAIN +short | tee -a $REPORT_FILE

echo « DMARC record : » | tee -a $REPORT_FILE
dig TXT _dmarc.$DOMAIN +short | tee -a $REPORT_FILE

————————————————————6. Cron renouvellement SSL + alerte————————————————————

echo « 0 3 * * * root certbot renew –quiet || echo ‘Image retirée. SSL non renouvelé $HOSTNAME’ | mail -s ‘[ALERTE] SSL’ $EMAIL_ADMIN » > /etc/cron.d/letsencrypt-renew
chmod 644 /etc/cron.d/letsencrypt-renew

————————————————————7. Test d’envoi de mail————————————————————

echo « Image retirée. Envoi d’un mail de test vers $TEST_MAIL… » | tee -a $REPORT_FILE
echo « Test iRedMail après installation $(date) » | mail -s « Test iRedMail $HOSTNAME » $TEST_MAIL

echo « Vérifie la réception sur $TEST_MAIL » | tee -a $REPORT_FILE

————————————————————8. Rapport final————————————————————

echo « =================================================== » | tee -a $REPORT_FILE
echo « Installation terminée ! » | tee -a $REPORT_FILE
echo « Webmail : https://$HOSTNAME/mail/ » | tee -a $REPORT_FILE
echo « Admin : https://$HOSTNAME/iredadmin/ » | tee -a $REPORT_FILE
echo « Admin : $EMAIL_ADMIN / $ADMIN_PASS » | tee -a $REPORT_FILE
echo « Rapport complet sauvegardé dans $REPORT_FILE »
echo « =================================================== » | tee -a $REPORT_FILE

 

 

 

 

!/bin/bash============================================================Script ultime iRedMail + SSL + DNS + Test multi-boîtes + Rapport============================================================Variables

DOMAIN= »mondomaine.com »
HOSTNAME= »mail.${DOMAIN} »
ADMIN_PASS= »ChangeMoi123! »
EMAIL_ADMIN= »postmaster@${DOMAIN} »
TEST_MAILS=(« tonemail@gmail.com » « tonemail@outlook.com » « tonemail@yahoo.com »)
IREDMAIL_VERSION= »1.7.0″
REPORT_FILE= »/root/iredmail_report.txt »

echo « Image retirée. Installation iRedMail pour le domaine: $DOMAIN »
echo « Rapport final : $REPORT_FILE »
echo « Rapport iRedMail – $(date) » > $REPORT_FILE

————————————————————1. Préparation serveur————————————————————

apt update && apt upgrade -y
apt install -y wget curl sudo lsb-release net-tools dnsutils mailutils swaks certbot python3-certbot-nginx

hostnamectl set-hostname $HOSTNAME

————————————————————2. Télécharger et préparer iRedMail————————————————————

cd /root
wget https://github.com/iredmail/iRedMail/archive/refs/tags/${IREDMAIL_VERSION}.tar.gz
tar zxvf ${IREDMAIL_VERSION}.tar.gz
cd iRedMail-${IREDMAIL_VERSION}

cat > config.cfg <<EOF
HOSTNAME=$HOSTNAME
FIRST_DOMAIN=$DOMAIN
FIRST_MAIL_DOMAIN_ADMIN=$EMAIL_ADMIN
FIRST_MAIL_DOMAIN_ADMIN_PW=$ADMIN_PASS
STORAGE_BASE_DIR=/var/vmail
MLMMJADMIN_API_TOKEN=$(openssl rand -hex 16)
BACKEND=mariadb
USE_IREDADMIN=YES
USE_RCM=YES
USE_NETDATA=NO
USE_FAIL2BAN=YES
EOF

————————————————————3. Installer iRedMail————————————————————

echo « Image retirée. Installation silencieuse iRedMail… » | tee -a $REPORT_FILE
bash iRedMail.sh –silent –config config.cfg >> $REPORT_FILE 2>&1

————————————————————4. Certificat SSL Let’s Encrypt————————————————————

systemctl stop nginx apache2 2>/dev/null
certbot certonly –standalone -d $HOSTNAME –non-interactive –agree-tos -m $EMAIL_ADMIN >> $REPORT_FILE 2>&1

if [ -f « /etc/letsencrypt/live/$HOSTNAME/fullchain.pem » ]; then
ln -sf /etc/letsencrypt/live/$HOSTNAME/fullchain.pem /etc/ssl/certs/iRedMail.crt
ln -sf /etc/letsencrypt/live/$HOSTNAME/privkey.pem /etc/ssl/private/iRedMail.key
systemctl restart postfix dovecot nginx
echo « Image retirée. SSL généré avec succès » | tee -a $REPORT_FILE
else
echo « Image retirée. SSL non généré ! » | tee -a $REPORT_FILE
echo « SSL échec sur $HOSTNAME » | mail -s « Image retirée. [ALERTE] SSL $HOSTNAME » $EMAIL_ADMIN
fi

————————————————————5. Vérification DNS————————————————————

echo « Image retirée. Vérification DNS » | tee -a $REPORT_FILE
echo « MX record : » | tee -a $REPORT_FILE
dig MX $DOMAIN +short | tee -a $REPORT_FILE
echo « A record ($HOSTNAME) : » | tee -a $REPORT_FILE
dig A $HOSTNAME +short | tee -a $REPORT_FILE
echo « SPF record : » | tee -a $REPORT_FILE
dig TXT $DOMAIN +short | grep « spf » | tee -a $REPORT_FILE
echo « DKIM record : » | tee -a $REPORT_FILE
dig TXT mail._domainkey.$DOMAIN +short | tee -a $REPORT_FILE
echo « DMARC record : » | tee -a $REPORT_FILE
dig TXT _dmarc.$DOMAIN +short | tee -a $REPORT_FILE

————————————————————6. Cron renouvellement SSL + alerte————————————————————

echo « 0 3 * * * root certbot renew –quiet || echo ‘Image retirée. SSL non renouvelé $HOSTNAME’ | mail -s ‘[ALERTE] SSL’ $EMAIL_ADMIN » > /etc/cron.d/letsencrypt-renew
chmod 644 /etc/cron.d/letsencrypt-renew

————————————————————7. Test multi-boîtes externes + analyse SPF/DKIM/DMARC————————————————————

echo « Image retirée. Test d’envoi de mails multi-boîtes externes… » | tee -a $REPORT_FILE
for MAIL in « ${TEST_MAILS[@]} »; do
echo « Envoi vers $MAIL… » | tee -a $REPORT_FILE
SWAKS_OUTPUT=$(swaks –to $MAIL –from $EMAIL_ADMIN –server $HOSTNAME –data « Subject: Test iRedMail Anti-Spam\n\nCeci est un test » –timeout 10)
echo « $SWAKS_OUTPUT » >> $REPORT_FILE
echo « Image retirée. Vérification DKIM/SPF/DMARC pour $MAIL: » | tee -a $REPORT_FILE
echo « $SWAKS_OUTPUT » | grep -E « DKIM|SPF|DMARC » | tee -a $REPORT_FILE
done

————————————————————8. Rapport final————————————————————

echo « =================================================== » | tee -a $REPORT_FILE
echo « Installation et tests terminés ! » | tee -a $REPORT_FILE
echo « Webmail : https://$HOSTNAME/mail/ » | tee -a $REPORT_FILE
echo « Admin : https://$HOSTNAME/iredadmin/ » | tee -a $REPORT_FILE
echo « Admin : $EMAIL_ADMIN / $ADMIN_PASS » | tee -a $REPORT_FILE
echo « Vérifie la réception des mails sur toutes les boîtes de test » | tee -a $REPORT_FILE
echo « Rapport complet sauvegardé dans $REPORT_FILE »
echo « =================================================== » | tee -a $REPORT_FILE