Zimbra est un serveur de messagerie avec des fonctionnalités de travail collaboratif.
La version Open Source comprend la fonction de serveur de messagerie, de calendriers partagés, de carnets d'adresses partagés, de gestionnaire de fichiers, de gestionnaire de tâches, wiki, messagerie instantanée.
A l'heure actuelle, ZIMBRA est compatible avec un certains nombres de distributions Linux 64 bits.
Toutes les versions 32 bits sont dépréciées.
Cepandant, il est quand même possible d'installer Zimbra sur la version 32 bits de Ubuntu 8.04 LTS.
Voir la liste des distribution compatible.
La dernière version disponible de Zimbra est la 7.1.3 GA Release
Zimbra nécessite un serveur à lui tout seul.
Il ne peut pas être installé sur un serveur déjà configuré comme serveur mail, http etc ...
Il lui faut une machine ayant au minimum 1 GO de mémoire vive.
ZIMBRA étant installé dans le répertoire /opt, il est fortement conseillé de créer une partition spécifique ayant comme point de montage /opt.
Par exemple, pour un disque dur de 40 GB, une partition racine / de 10 GB pour le système, une partition /opt de 30 GB pour Zimbra et une partition Swap de 2.9 GB.
Procéder à l'installation d'Ubuntu 8.04 LTS avec le strict minimum.
Les paquets supplémentaires à installer sont OpenSSH-server & DNS Server
Au moment du choix des paquets supplémentaires à installer choisir OpenSSH-server & DNS Server
Pour paramétrer notre nouveau système, nous installerons Webmin
Se connecter au système (via SSH par exemple).
$ sudo wget http://www.webmin.com/jcameron-key.asc
$ sudo apt-key add jcameron-key.asc
Ajouter le dépot Webmin au fichier /etc/apt/sources.list :
$ echo "deb http://download.webmin.com/download/repository sarge contrib" >> /etc/apt/sources.list
$ sudo apt-get update
$ sudo apt-get install webmin
Une fois l'installation terminée, se connecter à Webmin via un navigateur web à l'adresse https://ip_du_serveur:10000
Se connecter à Webmin via un navigateur à l'adresse https://adresse_ip_du_serveur:10000
Le user et le password correspondent à l'utilisateur créé lors de l'installation d'Ubuntu.
Le menu Webmin :
Pour mettre Webmin en français, cliquer sur le menu Webmin, puis Change Language and Theme
Cocher l'option Personal choice puis sélectionner French (FR) dans la liste déroulante
Valider en cliquant sur Make Changes
Recharger Webmin en appuyant sur F5
Via Webmin, configurer le serveur en IP fixe.
Cliquer sur le menu Réseau puis sur Configuration Réseau
Cliquer sur Interfaces Réseau puis sélectionner l'onget Interfaces Permanentes
Cliquer sur le nom de l'interface réseau (ETH0 en règle générale)
Sélectionner l'option Static configuration.
Renseigner l'adresse IP puis le masque de sous-réseau
Cliquer sur Sauvegarder
Cliquer sur Retourner à configuration réseau
Cliquer sur Passerelles et Routage
Sélectionner l'option Passerelle puis y indiquer l'adresse IP du routeur
Cliquer sur Sauvegarder
Cliquer sur Adresses de la machine
Sélectionner la ligne correspondant à l'adresse IP 127.0.1.1 et la supprimer (Attention à ne pas supprimer la ligne correspondant à l'adresse IP 127.0.0.1).
Cliquer sur Ajouter une nouvelle adresse de machine
Y renseigner la nouvelle adresse IP du serveur et son nom de machine puis cliquer sur Créer
Cliquer sur Retourner à configuration réseau
Cliquer sur Client DNS
Dans le champ Nom du poste, y indiquer le nom de la machine.
Dans le champ Serveurs DNS, y indiquer l'adresse IP 127.0.0.1
Dans le champ Domaines de recherche, sélectionner l'option Listé et y indiquer son nom de domaine
Cliquer sur Sauvegarder
Enfin, cliquer sur le bouton Appliquer la configuration
Attention, si la nouvelle adresse IP appliquée au serveur est différente de la précédente, la connexion à Webmin sera perdue. Il suffit juste de se reconnecter à Webmin via la nouvelle adresse IP du serveur.
Pré-requis :
Installer le paquet dnsutils
$ sudo apt-get install dnsutils
Configuration de Bind9 :
Tous les fichiers nécessaires sont disponibles en bas de cette page
Dans les exemples suivants, mon serveur à comme adresse IP fixe : 192.168.1.10
Ce fichier doit contenir uniquement le nom de la machine.
Fichier modifié précédemment via Webmin.
Ce fichier doit ressembler à cela
Fichier modifié précédemment via Webmin.
Ce fichier doit ressembler à cela
En bleu les infos à rajouter dans ce fichier.
Attention à bien respecter l'indentation du texte avec une tabulation
// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in /etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
// prime the server with knowledge of the root servers
zone "." {
type hint;
file "/etc/bind/db.root";
};
// be authoritative for the localhost forward and reverse zones, and for
// broadcast zones as per RFC 1912
zone "localhost" {
type master;
file "/etc/bind/db.local";
};
zone "127.in-addr.arpa" {
type master;
file "/etc/bind/db.127";
};
zone "0.in-addr.arpa" {
type master;
file "/etc/bind/db.0";
};
zone "255.in-addr.arpa" {
type master;
file "/etc/bind/db.255";
};
//ajout des liens vers le fichier de configuration du domaine mondomaine.com
zone "mondomaine.com" {
type master;
file "/etc/bind/zones/mondomaine.com.hosts";
};
//ajout des liens vers le fichier de configuration du reverse pour le LAN
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/zones/rev.192.168.1.in-addr.arpa";
};
include "/etc/bind/named.conf.local";
On indique dans ce fichier sur quel port effectuer les requêtes d'identification (sur le port 53)
On y indique également les adresses des serveurs DNS externes (ceux de Free par exemple) dans la section forwarders
Attention à bien respecter l'indentation du texte avec une tabulation
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you might need to uncomment the query-source
// directive below. Previous versions of BIND always asked
// questions using port 53, but BIND 8.1 and later use an unprivileged
// port by default.
query-source address * port 53;
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
212.27.40.240;
212.27.40.241;
};
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
$ sudo mkdir /etc/bind/zones
$ sudo nano /etc/bind/zones/mondomaine.com.hosts
Y indiquer les infos suivantes
Attention à bien respecter l'indentation du texte avec une tabulation
$ttl 86400
@ IN SOA zimbra.mondomaine.com. mail.mondomaine.com. (
2008061802
21600
3600
604800
86400 )
;ENREGISTREMENT "A" DNS <-> IP CLASSIQUES
@ IN NS mail.mondomaine.com.
IN MX 10 mail.mondomaine.com.
IN A 192.168.1.10
mail IN A 192.168.1.10
zimbra IN A 192.168.1.10
;ENREGISTREMENT MESSAGERIE
mondomaine.com. IN MX 10 zimbra
$ sudo nano /etc/bind/zones/rev.192.168.1.in-addr.arpa
Y indiquer les infos suivantes
Attention à bien respecter l'indentation du texte avec une tabulation
@ IN SOA mondomaine.com. admin.mondomaine.com. (
2006081405
28800
604800
604800
86400 )
IN NS zimbra.mondomaine.com.
10 IN PTR zimbra.mondomaine.com.
Redémarrage de Bind afin d'appliquer les modifications
$ sudo /etc/init.d/bind9 restart (ou # sudo service bind9 restart)
$ named-checkconf
Vérifier les enregistrements DNS via DIG & NSLOOKUP directement sur le serveur via SSH
$ dig mx mondomaine.com
; <<>> DiG 9.4.2-P2.1 <<>> mx mondomaine.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 57311
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 2
;; QUESTION SECTION:
;mondomaine.com. IN MX
;; ANSWER SECTION:
mondomaine.com. 86400 IN MX 10 zimbra.mondomaine.com.
mondomaine.com. 86400 IN MX 10 mail.mondomaine.com.
;; AUTHORITY SECTION:
mondomaine.com. 86400 IN NS mail.mondomaine.com.
;; ADDITIONAL SECTION:
mail.mondomaine.com. 86400 IN A 192.168.1.10
zimbra.mondomaine.com. 86400 IN A 192.168.1.10
;; Query time: 16 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 12 10:00:24 2011
;; MSG SIZE rcvd: 118
$ dig a mail.mondomaine.com
; <<>> DiG 9.4.2-P2.1 <<>> a mail.mondomaine.com
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 18243
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;mail.mondomaine.com. IN A
;; ANSWER SECTION:
mail.mondomaine.com. 86400 IN A 192.168.1.10
;; AUTHORITY SECTION:
mondomaine.com. 86400 IN NS mail.mondomaine.com.
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Sat Feb 12 10:05:01 2011
;; MSG SIZE rcvd: 63
$ nslookup mondomaine.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: mondomaine.com
Address: 192.168.1.10
L'installation et la configuration de BIND9 est enfin terminée
Pour simplifier la configuration d'un serveur Bind9, j'ai écrit un script de configuration automatique.
Pour le télécharger, cliquer ici
MD5SUM : 86a0a889ce9afe13fd12df48722f8182 configure_bind9.sh
Fichier attaché | Taille |
---|---|
hosts. | 278 octets |
resolv.conf | 46 octets |
named.conf | 1.25 Ko |
named.conf_.options | 710 octets |
mondomaine.com_.hosts | 351 octets |
rev.192.168.1.in-addr.arpa | 170 octets |
$ sudo apt-get install libpcre3 libgmp3c2 libstdc++5 libltdl3 fetchmail curl sysstat sqlite3
Editer le fichier /etc/default/sysstat
$ sudo nano /etc/default/sysstat
Modifier ENABLED="true"
Téléchargement de Zimbra 7.1.3 GA
Zimbra 7.1.3 GA est la dernière version compatible avec une version Linux 32 bits
Voir sur le site de Zimbra la dernière version disponible
Récupérer la dernière version de Zimbra :
$ wget http://files.zimbra.com/downloads/7.1.3_GA/zcs-7.1.3_GA_3346.UBUNTU8.201...
Décompresser et restaurer l'archive téléchargée
$ tar xvzf ./zcs-7.1.3_GA_3346.UBUNTU8.20110928134533.tgz
$ cd zcs-7.1.3_GA_3346.UBUNTU8.20110928134533/
$ sudo ./install.sh
Poursuite de l'installation ...
Pendant l'installation, les enregistrements DNS sont vérifiés par rapport au nom de domaine zimbra.mondomaine.com. Une erreur va donc être retournée.
DNS ERROR resolving MX for zimbra.mondomaine.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] Yes ici, répondre YES
Create Domain: [zimbra.mondomaine.com] mondomaine.com ici, entrer le nom du domaine
MX: zimbra.mondomaine.com (192.168.1.10)
MX: mail.mondomaine.com (192.168.1.10)
Poursuite du paramétrage automatique ...
Configuration des différents services ...
Patienter un petit moment le temps que tous les services démarrent
L'installation est enfin terminée
Il ne reste plus qu'à se connecter à l'interface de configuration du serveur Zimbra via un navigateur à l'adresse https://adress_ip_du_serveur:7071
Le paramétrage de Zimbra se fait via son interface de configuration à l'adresse https://adresse_ip_du_serveur:7071
user = admin
password = celui choisi lors de l'installation
L'interface de connexion au serveur :
Le menu de Zimbra :
Paramètres globaux
- Agent MTA
Valider en cliquant sur Enregistrer
Domaines
- Information générale
- Zimlets
Valider en cliquant sur Enregistrer
Classe de service
- Défault
- Caractéristiques
- Préférences
- Options générales
- Options mail
- Options d'agenda
Valider en cliquant sur Enregistrer
Toutes ces commandes ZIMBRA sont exécutées avec le user "zimbra" :
$ sudo su
$ su - zimbra
Stopper Zimbra
$ zmcontrol stop
Démarrer Zimbra
$ zmcontrol start
Etat Zimbra
$ zmcontrol status
Afficher la version de Zimbra
$ zmcontrol -v
Afficher la configuration locale de Zimbra
$ zmlocalconfig -s
Afficher le mot de passe MySQL du compte root
$ zmlocalconfig -s mysql_root_password
Afficher le mot de passe MySQL du compte zimbra
$ zmlocalconfig -s zimbra_mysql_password
Se connecter à MySQL avec le compte root
$ mysql -S /opt/zimbra/db/mysql.sock -u root --password=mysql_root_password
Afficher les répertoires d'un utilisateur
$ zmmailbox -z -m user@monDomaine.com gaf
-z : utiliser les droits de l'administrateur
-m : spécifie pour quel utilisateur on liste les répertoires
gaf : Get All Folders
Vider le répertoire d'un utilisateur
$ zmmailbox -z -m user@monDomaine.com ef /nomDuRepertoire
ef : Empty Folder
Afficher la liste des users
$ zmprov -l gaa
Afficher la liste des users admin
$ zmprov -l gaaa
Modifier le mot de passe d'un compte
sp (setPassword)
$ zmprov sp moncompte@monDomaine.com myNewPassword
Déverrouiller un compte
ma (modifyAccount)
$ zmprov ma moncompte@monDomaine.com zimbraAccountStatus active
Créer un compte mail
ca (createAccount)
$ zmprov ca moncompte@monDomaine.com monPassword displayName moncompte
Exporter les différents dossiers d'un compte dans une archive zip
Les différents dossiers exportables (autres que mail):
Les dossiers standards des mails :
Commande à exécuter :
Pour info, tout dépend de la configuration du serveur Zimbra, mais il est possbile que les WebServices Rest soient disponibles en https sur le port 8443.
Dans ce cas, il faut le prendre en compte dans les commandes ci-dessous.
$ zmmailbox -z -m user@domaine.com getRestUrl -u http://`zmhostname`:8080 "/nom_du_dossier?fmt=zip" > /mon_dossier_de_sauvegarde/mon_fichier_export.zip
Exporter la totalité d'un compte dans une archive zip
$ zmmailbox -z -m compte@domaine.fr getRestURL -u http://`zmhostname`:8080 "//?fmt=zip" > ./compte.zip
Importer les différents dossiers d'un compte d'une archive zip
Les différentes valeurs du paramètre resolve :
Commande à exécuter :
$ zmmailbox -z -m user@domaine.com postRestUrl -u http://`zmhostname`:8080 "/nom_du_dossier?fmt=zip&resolve=reset" /mon_dossier_de_sauvegarde/mon_fichier_export.zip
Importer la totalité d'un compte à partir d'une archive zip
$ zmmailbox -z -m compte@domaine.fr postRestURL -u http://`zmhostname`:8080 "//?fmt=zip&resolve=reset" ./compte.zip
Réactiver la fonction "Notebook" du "Porte-documents" dans Zimbra 7
$ zmprov mc default zimbraFeatureBriefcaseSpreadsheetEnabled TRUE
$ zmprov mc default zimbraFeatureBriefcaseSlidesEnabled TRUE
$ zmcontrol restart
Réactiver la fonction de messagerie instantanée dans Zimbra 7
$ zmprov -l -v mcf zimbraXMPPEnabled TRUE
$ zmprov -v mc default zimbraFeatureIMEnabled TRUE
$ zmprov -v mc default zimbraFeatureInstantNotify TRUE
$ zmcontrol restart
Script de sauvegarde
$ cat sauvegarde.sh
#!/bin/bash
#Sauvegarde automatique
#Arret des services ZIMBRA
su - zimbra -c "/opt/zimbra/bin/zmcontrol stop" >> /backup/log/01stopZimbra.`date +%Y_%m_%d_%s`.log 2>&1
#Pause de 30 secondes
sleep 30
#Sauvegarde incrementielle du repertoire /opt/zimbra dans une archive TAR
/bin/tar --create --file=/backup/archive.`date +%Y_%m_%d_%s`.tar --listed-incremental=/backup/backup.list /opt/zimbra >> /backup/log/02tar.`date +%Y_%m_%d_%s`.log 2>&1
#Redemarrage des services ZIMBRA
su - zimbra -c "/opt/zimbra/bin/zmcontrol start" >> /backup/log/03startZimbra.`date +%Y_%m_%d_%s`.log 2>&1
#Statuts des services Zimbra
su - zimbra -c "/opt/zimbra/bin/zmcontrol status" > /backup/log/04statusZimbra.`date +%Y_%m_%d_%s`.log 2>&1
1 fois par semaine (ou plus en fonction des besoins) réinitialiser la sauvegarde incrémentielle en supprimant le fichier /backup/backup.list.
Restauration :
Stopper les services ZIMBRA
$ sudo su -
$ su - zimbra -c "zmcontrol stop"
Supprimer le répertoire /opt/zimbra puis restaurer la première archive complète
$ rm -r /opt/zimbra/
$ tar --extract --listed-incremental=/dev/null --file archive.1.tar
Puis restaurer les archives suivantes si besoin
$ tar --extract --listed-incremental=/dev/null --file archive.2.tar
Redémarrer les services ZIMBRA
$ su - zimbra -c "zmcontrol start"
Sur un historique de sauvegarde de 10 archives, pour restaurer l'archive 4, restaurer les archives 1, 2, 3 & 4 et ce dans le bon ordre. Ne pas restaurer directement l'archive 4, elle serait incomplète.
Pour accepter les certificats non reconnus dans la configuration de Zimbra :
$ sudo nano /opt/zimbra/conf/localconfig.xml
Dans la section :
$ sudo su
$ su - zimbra
$ zmcontrol restart
$ exit
Pouvoir profiter du push e-mail avec Zimbra est possible grâce à une application PHP simulant un serveur Microsoft Server ActiveSync.
Pour cela, rien de plus simple.
Le seul inconvénient est de disposer d'un serveur, autre que celui sur lequel est installé Zimbra, car il faut obligatoirement un serveur sur lequel sera installé Apache et PHP.
Un second serveur Ubuntu sera donc utile pour pouvoir profiter du push e-mail.
$ wget http://download.berlios.de/z-push/z-push-1.5.5-790.tar.gz
$ cp ./z-push-1.5.5-790.tar.gz /home/push/public_html/
$ cd /home/push/public_html/ && tar -xvzf ./z-push-1.5.5-790.tar.gz
$ cd ./z-push/backend/
$ wget http://freefr.dl.sourceforge.net/project/zimbrabackend/Release51/zimbra5...
$ tar -xvzf zimbra51.tgz
$ cd .. && nano ./config.php
$ chown www-data:www-data ./state/
La configuration du serveur PUSH est enfin terminée.
Il ne reste plus qu'à configurer Microsoft Exchange Active Sync sur le téléphone en y indiquant l'adresse http du serveur (push.mondomaine.com par exemple - Ne pas indiquer l'alias /Microsoft-Server-ActiveSync dans l'adresse du serveur) et les services à synchroniser (agenda, carnet d'adresses, tâches etc etc)
Il faut, bien entendu, que le serveur push.mondomaine.com (par exemple) soit accessible de l'extérieur.
Comment faire pour que le webmail du serveur Zimbra (installé sur la machine 10.10.0.10 par exemple) et le serveur push.mondomaine.com (installé sur la machine 10.10.0.20 par exemple) soient tous les 2 accessibles de l'extérieur sur le port HTTP 80 et/ou HTTPS 443.
Surtout que dans un routeur, il est possible de rediriger un port que sur une seule adresse IP.
Donc, soit on redirige le port 80 & 443 vers la machine 10.10.0.10 et dans ce cas le serveur web installé sur la machine 10.10.0.20 n'est pas accessible soit on fait l'inverse et dans ce cas c'est le webmail Zimbra installé sur la machine 10.10.0.10 qui n'est plus accessible.
Pour résoudre ce problème, il suffit de créer un second serveur virtuel sur la machine où se trouve le serveur push.mondomaine.com et de le nommer zimbra.mondomaine.com (par exemple) et de le configurer comme un serveur proxy qui transmettra les requêtes HTTP vers le serveur Zimbra.
Il suffit donc de paramétrer le routeur afin de rediriger le port 80 et 443 vers la machine 10.10.0.20. Le serveur virtuel zimbra.mondomaine.com se chargera de transmettre les requêtes vers la machine 10.10.0.10 et affichera, par conséquent, le webmail de Zimbra.
Cliquer pour la configuration d'un serveur virtuel en mode proxy.
Pouvoir gérer les téléphones qui se connectent au serveur Z-PUSH, c'est ce que propose de faire cette application PHP "zpush-zimbra-provisioning"
Avec "zpush-zimbra-provisioning", il est possible de lister tous les appareils mobiles qui se connectent au serveur, de les supprimer et enfin, il est également possible de les réinitialiser (retour à la config usine).
La version en cours est "zpush-zimbra-provisioning-1.02.tgz"
Pour vérifier la dernière version, http://sourceforge.net/projects/zimbrabackend/files/Provisioning%20%28Remote%20Wipe%29%20Support%20-%20Needs%20Release%2045%20or%20later/
Pour l'installer, rien de plus simple :
$ sudo su
$ cd /var/www
$ wget http://freefr.dl.sourceforge.net/project/zimbrabackend/Provisioning%20%2...
$ tar -xvzf zpush-zimbra-provisioning-1.02.tgz
L'installation est terminée, il faut maintenant créer la base de données :
$ sudo su
$ cd /var/www/zimbra-provisioning
$ mysql -u root -p < zpush_zimbra.sql
Dans MySql, créer un user avec password ayant tous les droits sur la base de données "zpush_zimbra"
Modification du fichier "zimbradb.php" :
Il faut modifier le fichier /var/www/zimbra-provisioning/zimbradb.php et renseigner les paramètres de connexion à la base de données MySql. Y inscrire le user et le password créés précédement.
$mysql_server = "localhost:3306";
$mysql_username = "provuser";
$mysql_password = "provpassword";
$mysql_zimbradb = "zpush_zimbra";
Une fois le fichier modifier, il faut le copier dans le dossier Backend de Z-PUSH.
Création du user admin :
Dans votre navigateur préféré, se rendre à l'adresse
http://adresse_ip_du_serveur/zimbra-provisioning/registerAdminGUIuser.php
Cette page va permettre de créer le compte admin.
Une fois le compte créé, il est recommandé de renommer le script registerAdminGUIuser.php ou de le supprimer.
$ sudo su
$ cd /var/www/zimbra-provisioning
$ mv registerAdminGUIuser.php registerAdminGUIuser.php.old
$ chown root:root registerAdminGUIuser.php.old
$ chmod 600 registerAdminGUIuser.php.old
Modifier la configuration de Z-PUSH :
Pour profiter de cette option, il faut activer le provisioning dans la configuration de Z-PUSH.
Pour cela, il suffit de modifier le fichier config.php (dans le dossier de Z-PUSH)
=== Enable Provisioning ===
define('PROVISIONING', true);
Et voilà, tout est terminé, vous pouvez vous rendre à l'adresse http://adresse_ip_du_serveur/zimbra-provisioning, vous authentifier et gérer tous les appareils mobiles.
La page d'accueil permet de lister tous les appareils.
En cliquant sur "Détail" d'un appareil, il est possible de supprimer l'appareil en cliquant sur "DELETE DEVICE" ou de le réinitialiser en cliquant sur "WIPE DEVICE"
Attention, en cliquant sur "WIPE DEVICE" le téléphone sera entièrement réinitialiser - Retour à la configuration usine - Très pratique pour se débarasser d'un téléphone sans laisser aucune trace des données.
Code de l'erreur :
Mail : system failure: exception during auth {RemoteManager: zimbra.domain.fr->zimbra@zimbra.domain.fr:22} Code d'erreur : service.FAILURE Method: [unknown] Détails :soap:Receiver
Cette erreur indique un problème d'accès au serveur via SSH sur le port 22.
Pour résoudre cette erreur, j'ai simplement ajouter dans le fichier /etc/hosts.allow, le nom de mon serveur Zimbra.
$ hostname -f
zimbra.domain.fr
$ nano /etc/hosts.allow
# Ajout de la ligne :
ALL: zimbra.domain.fr
^O (enregistrer)
^X (quitter)
$
Depuis le 01 juillet 2012, pour je ne sais quelle raison, java utilisait toutes les ressources CPU.
Ne trouvant pas la cause du problème, j'étais sur le point de réinstaller mon serveur Zimbra quand je suis tombé sur ce post :
http://www.zimbrafr.org/forum/topic/5003-java-100-cpu-et-seconde-interca...
La cause : L'ajustement de la seconde intercalaire.
Qu'est ce que c'est que ce truc là.
Explication sur Wikipedia :
Une seconde intercalaire, également appelée saut de seconde ou seconde additionnelle, est un ajustement d'une seconde du Temps universel coordonné (UTC). Et ce, afin qu'il reste assez proche du Temps universel (UT) défini quant à lui par l'orientation de la Terre par rapport aux étoiles.
http://fr.wikipedia.org/wiki/Seconde_intercalaire
Le remède : Tout simple. Il suffit de reparamétrer l'horloge du serveur avec la commande suivante :
$ date -s "`date`"
Tout est rentré dans l'ordre comme par magie.
Ce "bug" touche les 2 applications Java et MySql
Code de l'erreur :
Mail : system failure: Unable to read logger stats Code d'erreur : service.FAILURE Method: [unknown] Détails :soap:Receiver
Pour résoudre cette erreur, exécuter les commandes suivantes en tant que root.
$ /opt/zimbra/libexec/zmsyslogsetup
$ /etc/init.d/rsyslog restart
$ /opt/zimbra/libexec/zmfixperms
Pour terminer, en tant que user zimbra
$ zmloggerctl start
$ zmcontrol status
Tout devrait rentrer dans l'ordre.
Procédure de mise à jour:
# su - zimbra
$ mkdir /tmp/clamdb
$ mv /opt/zimbra/data/clamav/db/* /tmp/clamdb
$ /opt/zimbra/common/bin/freshclam --config-file=/opt/zimbra/conf/freshclam.conf
$ zmamavisdctl restart
$ zmcontrol status
Procédure de mise à jour:
# su - zimbra
$ /opt/zimbra/common/bin/sa-update -D
$ zmamavisdctl restart
$ mkdir /tmp/state
$ mv /opt/zimbra/data/spamassassin/state /tmp/state
$ zmamavisdctl restart
$ zmcontrol status
Pour ne pas avoir de problème lors de l'envoi des mails, il est conseillé d'utiliser un relais SMTP pour l'envoi des mails à l'extérieur du domaine.
En effet, il y a de grandes chances pour que tous les mails envoyés avec notre propre serveur soient considérés comme du SPAM.
C'est pour cette raison qu'il vaut mieux utiliser un relais SMTP de confiance, mais qui dit de confiance, dit forcément authentification surtout si notre serveur ne se trouve pas sur le même réseau que notre relais SMTP.
Dans l'exemple, je vais configurer sur mon serveur ZIMBRA, qui se trouve hébergé chez ONLINE, le relais SMTP de Free (fournisseur de ma box à la maison - j'ai donc le droit par conséquent d'utiliser leur serveur SMTP)
Toutes les commandes ci-dessous doivent être exécutées avec le user zimbra.
## Je me connecter en tant que user zimbra
root@vm-zimbra:~# su - zimbra
## Je renseigne mon relais SMTP
zimbra@vm-zimbra:~$ zmprov ms vm-zimbra.domain.fr zimbraMtaRelayHost smtp.free.fr:587
## Création du fichier relay_password contenant le user et le mot de passe pour le relais smtp
zimbra@vm-zimbra:~$ echo smtp.free.fr user:pass > /opt/zimbra/conf/relay_password
## Conversion du fichier relay_password en table postfix
zimbra@vm-zimbra:~$ postmap /opt/zimbra/conf/relay_password
## Ceci permet de tester que le user et le mot de passe est bien associé au relais smtp
zimbra@vm-zimbra:~$ postmap -q smtp.free.fr /opt/zimbra/conf/relay_password
## Configuration de postfix pour l'utilisation de la table d'identification du relais smtp
zimbra@vm-zimbra:~$ zmprov ms vm-zimbra.domain.fr zimbraMtaSmtpSaslPasswordMaps lmdb:/opt/zimbra/conf/relay_password
## Activation de l'authentification SSL
zimbra@vm-zimbra:~$ zmprov ms vm-zimbra.domain.fr zimbraMtaSmtpSaslAuthEnable yes
## Désactivation de l'utilisation du "canonical name" du relais smtp
zimbra@vm-zimbra:~$ zmprov ms vm-zimbra.domain.fr zimbraMtaSmtpCnameOverridesServername no
## Activation de la séc urité TLS
zimbra@vm-zimbra:~$ zmprov ms vm-zimbra.domain.fr zimbraMtaSmtpTlsSecurityLevel may
Normalement, tout est désormais opérationnel.
Tous les mails envoyés à l'extérieur du domaine seront transférés désormais via le relais SMTP.
Erreurs rencontrées:
1. TLS: can't accept: error:14094415:SSL routines:ssl3_read_bytes:sslv3 alert certificate expired.
2. Unable to start TLS: SSL connect attempt failed error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed when connecting to ldap master.
Pas de panique, il suffit juste de suivre la procédure ci-dessous:
Pour générer un nouveau certificat dans Zimbra quand le précédent a expiré, suivre la procédure ci-dessous :
Via SSH, se connecter au serveur Zimbra puis saisir les commandes suivantes (en root)
$ sudo su
# Commencez par générer une nouvelle autorité de certification (CA).
$ /opt/zimbra/bin/zmcertmgr createca -new
...
# Puis générer un certificat signé par le CA qui expire dans 365 jours.
$ /opt/zimbra/bin/zmcertmgr createcrt -new -days 365
...
# Ensuite déployer le certificat.
$ /opt/zimbra/bin/zmcertmgr deploycrt self
...
# Ensuite déployer le CA.
$ /opt/zimbra/bin/zmcertmgr deployca
...
# Pour finir, vérifier que le certificat a été déployé à tous les services.
$ /opt/zimbra/bin/zmcertmgr viewdeployedcrt
::service mta::
...
::service proxy::
...
::service mailboxd::
...
::service ldap::
...
$