### Installer serveur de messagerie Zimbra sur Ubuntu 20.04 ou 22.04 ### Pourquoi Choisir le Serveur de Messagerie Zimbra sur Ubuntu ? Avantages de Zimbra sur Ubuntu Stabilité et Sécurité : Ubuntu, en particulier ses versions LTS, offre une base stable avec des mises à jour de sécurité régulières. Rentabilité : L’utilisation de l’édition open source de Zimbra élimine les frais de licence tout en offrant une plateforme riche en fonctionnalités. Évolutivité : Prend en charge des déploiements allant de quelques utilisateurs à des milliers sans compromettre les performances. Communauté Active : Zimbra et Ubuntu bénéficient tous deux de communautés larges et actives pour le support et les ressources. Préparer l’Installation de Zimbra Avant de commencer le processus d’installation, il est essentiel de disposer d’un environnement serveur bien préparé pour garantir un déploiement réussi. Configuration Matérielle Minimale Ressource Exigence Minimale Recommandée pour Production Processeur 64 bits, Dual-Core 64 bits, Quad-Core ou plus RAM 8 Go 16 Go ou plus Espace Disque 50 Go 250 Go ou plus Exigences Logicielles Version d’Ubuntu : Ubuntu 20.04 ou 22.04 LTS. Configuration Réseau : Adresse IP statique. Enregistrements DNS corrects (A, MX, SPF, et éventuellement DKIM et DMARC). Installation Pas à Pas de Zimbra Explorons chaque étape pour nous assurer que tous les détails sont couverts pour une installation sans accroc. ## Étape 1 : Préparation du Système. Avant d’installer Zimbra, l’environnement serveur doit être correctement configuré. # Mettre à Jour les Paquets Système sudo apt update && sudo apt upgrade -y # Installer les Dépendances Essentielles, outils et bibliothèques sudo apt install wget curl netcat-openbsd perl unzip pax -y # Configurer le Nom d’Hôte du Serveur Le nom d’hôte du serveur doit correspondre au nom de domaine pleinement qualifié (FQDN) (zimbra.univ-poitiers.fr) : sudo hostnamectl set-hostname zimbra.univ-poitiers.fr # Vérifiez le nom d’hôte : LE NOM DU HOST (DE LA MACHINE) DOIT ETRE CELUI DU DOMAINE : ZIMBRA.UNIV-POITIERS.FR hostnamectl # Modifier le Fichier Hosts et ajouter une entrée pour votre nom d’hôte dans /etc/hosts : sudo nano /etc/hosts 192.168.0.16 zimbra.univ-poitiers.fr Zimbra ## Étape 2 : Configuration DNS #Le DNS joue un rôle crucial dans le fonctionnement des serveurs de messagerie. Une configuration DNS incorrecte peut entraîner des échecs de livraison des e-mails. #Enregistrement A #Assurez-vous que l’enregistrement A de votre domaine pointe vers l’adresse IP de votre serveur. #Enregistrement MX : Créez un enregistrement MX qui redirige les e-mails vers votre serveur Zimbra : #Hôte : @ #Valeur : mail.exemple.com #Priorité : 10 #Enregistrement SPF #Ajoutez un enregistrement SPF pour autoriser votre serveur de messagerie à envoyer des e-mails : #v=spf1 mx -all # Vérifier si on peut joindre le serveur de messagerie par un ping ping 192.168.0.16 # serveur de messagerie #Installation de Bind9 et les outils DNS : sudo apt-get update -y sudo apt upgrade -y sudo apt-get install bind9 bind9utils bind9-doc -y #Configuration de Bind9 #Éditer le fichier de configuration principal de Bind9 : sudo nano /etc/bind/named.conf.local #Ajouter une zone pour le domaine, par exemple univ.com : zone "univ-poitiers.fr" { type master; file "/etc/bind/db.univ-poitiers.fr"; }; #Création du fichier de zone sudo nano /etc/bind/db.univ-poitiers.fr #Ajouter les enregistrements DNS nécessaires : $TTL 86400 @ IN SOA ns1.univ-poitiers.fr. root.univ-poitiers.fr. ( 2025032301 ; Seria 3600 ; Refresh 1800 ; Retry 604800 ; Expire 86400 ) ; Negative Cache TTL @ IN NS ns1.univ-poitiers.fr. @ IN NS ns2.univ-poitiers.fr. ns1 IN A 192.168.0.16 ns2 IN A 192.168.0.16 @ IN A 192.168.0.16 zimbra IN A 192.168.0.16 @ IN MX 10 zimbra.univ-poitiers.fr. #Configurez le serveur pour utiliser Bind9 en tant que serveur DNS local. Ajoutez l'IP locale dans le fichier sudo nano /etc/resolv.conf --- nameserver 192.168.0.17 --- #Assurez-vous que le fichier de zone et les répertoires de Bind ont les bonnes permissions sudo chown bind:bind /etc/bind/db.univ-poitiers.fr #Redémarrer le service Bind9 sudo systemctl restart bind9 # Testez la configuration DNS: sudo named-checkconf sudo named-checkzone univ-poitiers.fr /etc/bind/db.univ-poitiers.fr dig A univ-poitiers.fr @127.0.0.1 #Résultat : 192.168.0.16. dig MX univ-poitiers.fr @127.0.0.1 #Résultat : zimbra.univ-poitiers.fr. nslookup 192.168.0.16 host 192.168.0.16 dig A univ-poitiers.fr dig MX univ-poitiers.fr ## S'il y a des problèmes de résolution de nom du serveur de messagerie #Modifier la configuration de votre serveur DNS local (si en local), éditez le fichier /etc/resolv.conf et ajouter le serveur dns sudo nano /etc/resolv.conf #Analyser la performance DNS : Vous pouvez utiliser des outils comme systemd-resolve pour vérifier quel serveur DNS est utilisé et analyser les performances systemd-resolve --status #Vérifier le fichier log sudo tail -f /var/log/syslog ## Étape 3 : Installation de Zimbra #Modififier le fichier hosts: # Seulement ces 3 informations 127.0.0.1 zimbra.univ-poitiers.fr Zimbra 192.168.0.16 zimbra.univ-poitiers.fr zimbra 192.168.0.17 dns #Modifier le fichier /etc/resolv.conf pour mettre l'IP du serveur DNS et le nom du domaine sudo nano /etc/resolv.conf nameserver 192.168.0.17 search univ-poitiers.fr #Protéger les modifications sudo systemctl disable --now systemd-resolved #Supprimez le lien symbolique et recréez le fichier sudo rm /etc/resolv.conf #Modifier le fichier /etc/resolv.conf pour mettre l'IP du serveur DNS et le nom du domaine sudo nano /etc/resolv.conf --- nameserver 192.168.0.17 nameserver 8.8.8.8 #uniquement si besoin d'internet nameserver 8.8.4.4 #uniquement si besoin d'internet --- #Redémarrer les services nécessaires sudo netplan apply #Vérifier la résolution DNS sur Zimbra dig MX univ-poitiers.fr @192.168.0.16 dig A zimbra.univ-poitiers.fr @192.168.0.16 # Positionner les sources d'installation avec la version 8.8.15): sudo nano /etc/apt/sources.list.d/zimbra.list deb [arch=amd64] https://repo.zimbra.com/apt/87 trusty zimbra deb [arch=amd64] https://repo.zimbra.com/apt/8815 trusty zimbra deb-src [arch=amd64] https://repo.zimbra.com/apt/87 trusty zimbra #Téléchargement et Installation de Zimbra depuis le site officiel : wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz #Extraire et l’archive téléchargée et l'installer: tar -xvzf zcs-8.8.15_GA_4179.UBUNTU20_64.20211118033954.tgz cd zcs-/ sudo ./install.sh #Suivez les Instructions d’Installation #Acceptez le Contrat de Licence Utilisateur Final (CLUF). Y et N (Y si réinstallation) #Sélectionnez les composants à installer (les options par défaut conviennent à la plupart des configurations). # Définissez un mot de passe administrateur lorsqu’on vous le demande. Sélectionnez l'option 6) zimbra-store dans le menu principal en tapant 6 puis appuyez sur Entrée. Puis l'option 4 pour rentrer un nouveau mot de passe : Password*2025 Puis dur r pour revenir au menu Puis sur a pour appliquer le changement Puis sur y pour valider la configuration Appuyer sur Entrer pour l'enregistrement de la configuration dans le dossier /opt/zimbra.config.xxx The system will be modified - continue? [No], y # Modifier le resolv.conf après la première phase d'installation en enlevant les adresses google sudo nano /etc/resolv.conf nameserver 8.8.8.8 et 8.8.4.4 # A désactiver # Couper l'accès à Internet et poursuivre en indiquant le nom de domaine hors réseau : univ-poitiers.fr ou corp.com # Si on ne coupe pas le réseau, le système détectera plusieurs interfaces réseaux et ne poursuivra pas. #### SI ERREUR DE CONFIGURATION LDAP ### Voir plus bas #Compte d'accès admin@univ-poitiers.fr Password*2025 ## Étape 4 : Configuration Post-Installation Vérifiez les Services Zimbra Vérifiez l’état des services Zimbra : sudo su - zimbra zmcontrol status Accédez à la Console d’Administration Ouvrez votre navigateur et accédez à : # Accès à la console d'administration https://192.168.0.16:7071 # Console d'administration admin@univ-poitiers.fr Password*2025 # Ouvrir les ports pour les accès externes (http, https, pop, smtp, imap…) #Installer ufw (si ce n'est pas déjà fait) : sudo apt-get install ufw #Autoriser les ports nécessaires pour Zimbra : #HTTP (port 80) et HTTPS (port 443) : sudo ufw allow 80/tcp sudo ufw allow 443/tcp #SMTP (port 25) : sudo ufw allow 25/tcp #IMAP (port 143) et IMAPS (port 993) : sudo ufw allow 143/tcp sudo ufw allow 993/tcp #POP3 (port 110) et POP3S (port 995) : sudo ufw allow 110/tcp sudo ufw allow 995/tcp #Activer ufw : sudo ufw enable # Pour les clients. Ne pas oublier d'ajouter l'adresse IP du serveur de DNS et son nom dans le /etc/hosts ou host pour Windows! https://zimbra.univ-poitiers.fr # Obtenir la liste des comptes administrateurs su - zimbra zmprov gaaa # Réinitialiser le mot de passe administrateur: su - zimbra zmprov sp # Fichiers de configuration: /opt/zimbra/conf/ Options de Configuration Avancée Maintenant que le serveur de messagerie est opérationnel, explorons des configurations avancées pour améliorer la sécurité, la convivialité et les performances. Configuration de la sécurité des E-mails La sécurisation de vos communications est essentielle pour protéger les données des utilisateurs et prévenir les abus comme le phishing ou le spam. ### Gestion de la sécurité #Installer des Certificats SSL/TLS qui garantit que les communications entre les clients (navigateurs ou applications de messagerie) et votre serveur sont chiffrées. # Obtenir un Certificat SSL/TLS : Acquérez un certificat auprès d’une Autorité de Certification (CA) reconnue, ou générer un certificat avec OpenSSL #Installer OpenSSL sudo apt update sudo apt install openssl cd /opt/zimbra/ssl/ #Générer une CSR et une clé privée : openssl req -new -newkey rsa:2048 -nodes -keyout privkey.key -out request.csr #Password*2025 #Déployer le Certificat #Créer les dossiers pour les fichiers sudo mkdir /opt/zimbra/ssl/zimbra/private sudo mkdir /opt/zimbra/ssl/zimbra/certs #Copiez votre certificat et la clé privée générée dans le répertoire Zimbra sudo cp privkey.key /opt/zimbra/ssl/zimbra/private/privkey.key sudo cp certificat.crt /opt/zimbra/ssl/zimbra/certs/request.csr #Redémarrez le service Zimbra pour appliquer su - zimbra zmcontrol restart ##Activer l’Authentification à Deux Facteurs (2FA) #La 2FA améliore la sécurité en ajoutant une étape supplémentaire lors de la connexion. Cela peut être configuré pour les comptes administrateurs via la Console d’Administration : Connectez-vous à https://192.168.0.16:7071 Accédez à Gérer > Sécurité > Authentification à Deux Facteurs. Activez la 2FA et configurez les options selon vos besoins. Gestion des utilisateurs et des domaines Créer des Boîtes aux Lettres Vous pouvez ajouter de nouveaux utilisateurs via la Console d’Administration ou en ligne de commande : $ zmprov ca utilisateur@exemple.com motdepasse displayName "Nom d'utilisateur" Héberger Plusieurs Domaines Zimbra permet d’héberger plusieurs domaines sur un même serveur, ce qui est utile pour les entreprises gérant plusieurs marques ou divisions. Ajouter un nouveau domaine : $ zmprov cd uriv-poitiers.fr Assigner des droits administratifs spécifiques pour ce domaine : $ zmprov grr domain uriv-poitiers.fr usr admin@uriv-poitiers.fr +domainAdminRights Optimisation des performances Un serveur performant assure une expérience utilisateur fluide et fiable. Voici quelques astuces pour optimiser les performances de votre installation Zimbra. Configurer les quotas des boîtes aux lettres Limiter la taille des boîtes aux lettres peut prévenir l’utilisation excessive de l’espace disque. Configurez les quotas avec : $ zmprov ma utilisateur@exemple.com zimbraMailQuota 209715200 (La taille est spécifiée en octets ; 209715200 équivaut à 200 Mo). Surveiller l’Utilisation du Disque Vérifiez régulièrement l’utilisation de l’espace disque pour éviter les interruptions : $ df -h Ajuster la Taille de la Mémoire Java Modifiez la configuration Java pour allouer plus de mémoire si nécessaire. Éditez le fichier /opt/zimbra/conf/localconfig.xml et ajustez le paramètre zimbra_java_heap_memory_percent en fonction de la mémoire RAM disponible. Automatiser les Tâches de Maintenance L’automatisation réduit les risques d’erreurs et garantit une maintenance régulière. Planifier des Sauvegardes Des sauvegardes régulières sont essentielles pour protéger vos données. Configurez des sauvegardes avec : Effectuer une sauvegarde complète manuellement : $ sudo su - zimbra $ zmbackup -f -a all Programmer des sauvegardes automatiques à l’aide de cron : $ crontab -e Ajoutez la ligne suivante pour une sauvegarde quotidienne à 2h du matin : 0 2 * * * /opt/zimbra/bin/zmbackup -f -a all Nettoyer les Anciens E-mails Pour libérer de l’espace, appliquez des politiques de rétention qui suppriment automatiquement les anciens messages : $ zmprov ma utilisateur@exemple.com zimbraPrefMailRetentionPeriod 30 (La période de rétention est exprimée en jours.) Surveillance et Dépannage Un suivi régulier permet de détecter rapidement les problèmes et d’assurer le bon fonctionnement du serveur. Journaux et Alertes Consultez les journaux pour surveiller les activités du serveur : $ tail -f /var/log/zimbra.log Activez les notifications par e-mail pour les pannes de service : $ zmprov ms `hostname` zimbraLogSummaryMailHost admin@exemple.com Gérer les Files d’Attente Si des e-mails restent bloqués, vérifiez et videz les files d’attente : $ sudo su - zimbra $ zmqstat Supprimez les messages bloqués si nécessaire : $ postsuper -d ALL Intégration des protocoles d’authentification Les protocoles SPF, DKIM et DMARC sont essentiels pour garantir la livraison des e-mails et protéger votre domaine contre le spam et l’usurpation d’identité. Configurer SPF Ajoutez un enregistrement TXT à votre DNS pour indiquer les serveurs autorisés à envoyer des e-mails au nom de votre domaine : v=spf1 mx -all Configurer DKIM Générez des clés DKIM et publiez la clé publique dans votre DNS : Créez une clé DKIM : $ sudo su - zimbra $ /opt/zimbra/libexec/zmdkimkeyutil -a -d exemple.com Ajoutez l’enregistrement TXT généré à votre DNS. Configurer DMARC Ajoutez un enregistrement DMARC pour spécifier la politique à appliquer aux e-mails qui échouent aux contrôles SPF ou DKIM : _dmarc.exemple.com IN TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@exemple.com" Résolution des Problèmes Courants Problème : Les E-mails ne sont pas envoyés ou reçus Vérifiez que le service MTA de Zimbra fonctionne : $ zmcontrol start Consultez les files d’attente d’e-mails pour détecter des erreurs : $ sudo su - zimbra $ zmqstat Problème : Erreurs de configuration DNS Assurez-vous que vos enregistrements DNS sont corrects à l’aide de dig : $ dig exemple.com MX Problème : Volume Élevé de spam Mettez à jour les règles SpamAssassin pour renforcer la protection : $ sudo su - zimbra $ sa-update $ zmcontrol restart Conclusion Avec son ensemble de fonctionnalités étendues, Zimbra est une solution fiable et polyvalente pour la messagerie et la collaboration. En suivant ce guide complet, vous avez appris non seulement à installer et configurer le serveur de messagerie Zimbra sur Ubuntu, mais aussi à explorer des paramètres avancés pour optimiser les performances, améliorer la sécurité et assurer un fonctionnement fluide. La flexibilité de Zimbra, associée à la stabilité d’Ubuntu, en fait un choix idéal pour toute organisation. Continuez à explorer ses fonctionnalités pour exploiter tout le potentiel de votre serveur de messagerie. ## PS : AVANT DE LANCER ZIMBRA : Si ce sont des serveurs clonés, vérifier les éléments suivants avant de lancer zimbra : #Sinon, cloner en conservant la MAC ADDRESS #1. adresses IP statiques du DNS et de Zimbra (UNE SEULE ADRESSE IP FIXE), #2. le resolv.conf #3. le hosts (désactiver IPV6 ) sudo nano /etc/resolv.conf --- nameserver 192.168.0.17 #Serveur DNS --- ### Désinstallation de Bind9 sudo apt-get remove --purge bind9 -y #Nettoyage des fichiers restants sudo rm -rf /etc/bind sudo rm -rf /var/cache/bind sudo rm -rf /var/lib/bind #Mise à jour du système sudo apt-get update && sudo apt-get upgrade -y ## Réinstallation de Bind9 sudo apt-get install bind9 bind9utils bind9-doc -y ### Désinstaller zimbra et ses composants #### sudo su - zimbra zmcontrol stop exit sudo rm -rf /opt/zimbra sudo apt-get remove --purge zimbra-* -y sudo apt-get autoremove sudo apt-get clean sudo apt-get autoclean ### Si erreur de configuration LDAP, modifier le nom du serveur et le port afin d'utiliser les informations en local changer l'adresse et le port: # Erreur due au fait, que ce domaine existe réellement et que l'on souhaite créer le même mais en local, donc cela crée des conflits ! 1) Vérifier qu'il y ai qu'un seul réseau actif avec l'adresse IP local ip a déconnecter l'accès réseau si c'était le cas 2)# Résoudre les conflits de port (ex port 389) sudo lsof -i :389 sudo kill ex kill -9 389 #ou sudo pkill slapd 3) Relancer la suite de l'installation sudo /opt/zimbra/libexec/zmsetup.pl 4) Re-enregistrer le domaine quand vous aurez la question : univ-poitiers.fr # Arreter et démarrer zmcontrol stop zmcontrol start # redémarrer le service su - zimbra zmcontrol restart ### zmconfigd is not running : #a)Désactiver l'IPV6: sudo nano /etc/sysctl.conf --- net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 net.ipv6.conf.lo.disable_ipv6 = 1 #b)Appliquer: sudo sysctl -p --- #c)Commenter les entrées IPV6 dans le hosts: sudo nano /etc/hosts #d)Modifier / vérifier le fichier resolv.conf sudo nano /etc/resolv.conf search univ-poitiers.fr nameserver 192.168.0.17 #Serveur DNS #Redémarrer zmconfigd sudo su - zimbra zmconfigdctl restart #Vérifier le status zmconfigdctl status #Redémarrer zmconfigd sudo su - zimbra zmconfigdctl restart #Vérifier le status zmconfigdctl status #Si cela ne fonctionne pas, installer netcat-openbsd: sudo apt-get install netcat-openbsd #Si c'est le pid qui est en cours, le supprimer et redémarrer le service: sudo rm /opt/zimbra/log/zmconfigd.pid ## Voir tous les messages dans le serveur mail Zimbra 8.8.15 depuis la console d'administration : # Pour un utilisateur spécifique: zmmailbox -z -m mmathieu@univ-poitiers.fr getRestUrl "/?fmt=zip" ### Renommer le nom d'hôte de Zimbra: zmprov -l rd univ-poitiers.fr uriv-poitiers.fr /opt/zimbra/libexec/zmdkimkeyutil -a -d uriv-poitiers.fr #1. Faire une sauvegarde complète de /opt/Zimbra sudo cp -rf /opt/zimbra /opt/zimbra_SAVE #2. Arrêter zimbea zmcontrol stop #3. Changer le nom d'hôte : /opt/zimbra/libexec/zmsetservername -n zimbra.uriv-poitiers.fr #4. Modifier /etc/hosts : Mettez à jour le fichier /etc/hosts avec le nouveau nom d'hôte sudo nano /etc/hosts #5. Redémarrer les services Zimbra : zmcontrol restart #6. Vérification : Vérifiez la configuration: zmlocalconfig | grep hostname