[Zimbra] Quelques infos en vrac ..

 

 

Quelques infos en vrac pour Zimbra
Article original Publié le : 17 avril 2017

Mise a jour le : 07 septembre 2019

 


Réseaux MTA de confiance

Vérifier la liste des mta de confiance

$ zmprov gs `zmhostname` zimbraMtaMyNetworks

Ajouter une machine ou un réseau dans les mta de confiance

$ zmprov ms nom_du_serveur_zimbra zimbraMtaMyNetworks "127.0.0.0/8 [::1]/128 151.xxx.xxx.xxx/32 54.xxx.xxx.xxx/32"

Redémarrer le service pour prendre en compte

$ zmconfigdctl restart

Lister la queue en épurant l’affichage (le 8eme block est égale a l’adresse mail)

/opt/zimbra/postfix/sbin/postqueue -p | egrep -v '^ *\(|-Queue ID-'
9CADD37653A 3830 Mon Jul 2 08:37:55 MAILER-DAEMON
email@domaine.local

965B238A14F 3840 Sun Jul 1 11:02:00 MAILER-DAEMON
email@domaine.local

Lancer ensuite une suppression (la variable 8 est = a l’adresse mail de suppression)

/opt/zimbra/postfix/sbin/postqueue -p | egrep -v '^ *\(|-Queue ID-' | awk 'BEGIN { RS = "" } { if ($8 == "email@domaine.local") print $1} ' | tr -d '*!' | /opt/zimbra/postfix/sbin/postsuper -d -

Variante, gérer la queue mail: pour supprimer tous les mails en queue envoyés à mail@domaine.tld :

for i in `mailq | grep -B 2 "mail@domaine.tld" | grep "mot_clé" | cut -d" " -f1`; do sudo postsuper -d ${i%\*}; done

#Pour info
mail@domaine.tld = rcpt to
mot_clé = mois en cours pour matcher avec la ligne de l’ID


A effectuer avec l’utilisateur root

Retenir message mail par destinataire

/opt/zimbra/postfix/sbin/postqueue -p | grep -E "(destinataire|Feb )" | grep -E "^[^0-9A-Z]+destinataire" -B1 | grep " Feb " | awk '{ print $1 }' | tr -d '!*' | /opt/zimbra/postfix/sbin/postsuper -h -

Retenir message mail par expéditeur

/opt/zimbra/postfix/sbin/postqueue -p | awk 'BEGIN { RS = "" } { if ($7 == "email-expediteur@domaine.local" ) print $1 }' | tr -d '!*' | /opt/zimbra/postfix/sbin/postsuper -h -

Supprimer les messges retenu

/opt/zimbra/postfix/sbin/postsuper -d ALL hold

Avoir en détail la conf du serveur

$ zmprov getServer `zmhostname`

Vider le calendrier d’un utilisateur

$ zmmailbox -z -m com_du_compte@domain.tld emptyFolder /Calendar

Obtenir la configuration locale pour un serveur Zimbra

$ zmlocalconfig

Pour les options: https://wiki.zimbra.com/wiki/CLI_zmlocalconfig_(Local_Configuration)


Vérifier et modifier quota pièces jointes

Se connecter avec l’utilisateur Zimbra

# su - zimbra

Pour vérifier la taille actuelle

$ zmprov gacf | grep zimbraMtaMaxMessageSize

Par défaut cela retourne

zimbraMtaMaxMessageSize: 10240000

Pour modifier et passer a 20Mo

$ zmprov mcf zimbraMtaMaxMessageSize 20480000

 

Pour vérifier la valeur actuelle max de l’upload

$ zmprov gacf | grep zimbraFileUploadMaxSize

Par défaut cela retourne

zimbraFileUploadMaxSize: 10485760

zimbraFileUploadMaxSizePerFile: 2147483648

Pour doubler la valeur

$ zmprov mcf zimbraFileUploadMaxSize 20971520

Puis redémarrer les services zimbra


Optimisation de l’espace disque par dé-duplication des données importées

$ zmdedupe status
Status = running
Total links created = 1
Total size saved = 2062109
Groups populated in volume blobs : volumeId - groups/total_groups
 1 - 40/40
 Digests Processed : volumeId - digests/total_digests
 1 - 19792/19792

Voir: http://manens.org/content/zimbra-8-optimisation-de-lespace-disque-par-d%C3%A9-duplication-des-donn%C3%A9es-import%C3%A9es


Lister les utilisateurs

$ zmprov -l gaa

Lister que les comptes admin

$ zmprov -l gaaa

Lister utilisateur dans une liste de diffusion

$ zmprov gdlm liste@domaine.tld

$ zmprov gdl liste@domaine.tld (avancé)

Créer un utilisateur + mdp

$ zmprov ca nomducpte@domaine.tld password

Supprimer un utilisateur

$ zmprov da nomducpte@domaine.tld

$  zmprov -l da nomducpte@domaine.tld

Changer mot de passe utilisateur

$ zmprov sp nomducpte@domaine.tld newpassword

/!\ Ne supporte pas les caractères ã, é, í, ú, ü, ñ.

Pour les caractères spéciaux mettre le mdp entre ”


Créer liste de distribution

$ zmprov gdl nomdelaliste@domaine.tld

Commande zmaccts

Lister les comptes

$ zmaccts

Quantifier le nombre de compte crée

$ zmaccts | awk ‘{print $1″ “$3}’ | grep “MM/[0-3][1-{31}]/YY

MM: Mois

YY: Année


Redémarrer tous les services:

$ sudo su - zimbra

$ zmcontrol status/stop/start

Redémarrer le service mailbox:

$ zmmailboxctl

Commande de provisionnement

$ zmprov

GAL commune

Pour un accès commun à la GAL un serveur de messagerie multi-domaine

$ zmprov md domain.com zimbraGalInternalSearchBase ROOT

Mettre a jour la GAL manuellement

$ zmgsautil forceSync -a galsync@domaine.tld-n InternalGAL

#Pour info
-a = galsynceaccountname
-n = datsource-name

Wiki: https://www.zimbra.com/docs/os/6.0.10/administration_guide/A_app-command-line.13.09.html


Programmation de la sauvegarde

Flush des cron backup:

$ zmschedulebackup -F

 

Ajout du backup full:

$ zmschedulebackup -A -z f "0 1 * * 6"

 

Ajout du backup incrémental:

$ zmschedulebackup -A -z i "0 1 * * 0-5"

 

Suppression des backup supérieurs à 15 jours:

$ zmschedulebackup d d15 "0 0 * * *"

Activer messagerie instantanée

$ zmprov mcf zimbraXMPPEnabled TRUE

 

Ensuite pour l’activer pour une CoS

$ zmprov mc LeNomDeLaCoS zimbraFeatureIMEnabled TRUE

$ zmprov mc LeNomDeLaCoS zimbraFeatureInstantNotify TRUE

Rejeter les destinataires inexistants

Éditer le fichier zmmta.cf de le passer a yes

$ sudo vim /opt/zimbra/conf/zmmta.cf
POSTCONF smtpd_reject_unlisted_recipient yes

Correction des ciphers

zmprov mcf zimbraReverseProxySSLCiphers 'ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES126-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS

Nettoyage des binaires mysql

La rotation étant de 30j et suite a la baisse énorme du quota, on avait besoin de récupérer rapidement de l’espace disque

Se connecter sous Zimbra puis mysql et lancer une purge

$ su - zimbra

$ mysql

> PURGE BINARY LOGS TO 'binlogname';

avant
/dev/drbd0 640G 606G 28G 96% /opt/zimbra

apres
/dev/drbd0 640G 552G 82G 88% /opt/zimbra


Créer une archive de bal

$ zmarchiveconfig enable user@domaine.tld archive-cos nomdelacos

Vider rapidement une boite mail ou un repertoire

depuis le store

$ zmmailbox -z -m boitemail@domaine.tld emptyFolder /Inbox

 

en détail

emptyFolder = commande pour vider

Inbox = boite de reception

-z = zadmin use zimbra admin

-m = mailbox {name} mailbox to open


Activer le fichier de trace_log de debug en le passant a TRUE

– Configuration globale :

$ zmprov mcf zimbraHttpDebugHandlerEnabled TRUE

– Configuration serveur :

$ zmprov ms $(zmhostname)
$ zimbraHttpDebugHandlerEnabled TRUE

Le passer a FALSE pour le desactiver.

D’après le descriptif il n’y a pas besoin de redémarrer les services, si vous ne voyez pas de changement, dans le doute effectuez le redémarrage des services 🙂


Vider la file d’attente de Zimbra par expéditeur

# /opt/zimbra/common/sbin/mailq|awk ' /^[0-9A-F][0-9A-F]*.*Adresse_email_expediteur$/ {print $1}'|tr -d '*'| xargs -rn1 /opt/zimbra/common/sbin/postsuper -d

Vérifie la cohérence du magasin de blobs Zimbra

En user Zimbra

$ zmblobchk start
[] INFO: Setting mysql connector property: maxActive=100
[] INFO: Setting mysql connector property: maxActive=100
Checking mailbox 1.
Checking mailbox 2.
Checking mailbox 3.
Checking mailbox 4.
Checking mailbox 5.
Checking mailbox 6.
Checking mailbox 7.

https://www.zimbra.com/docs/ne/6.0.6/administration_guide/A_app-command-line.20.10.html


Cipher Zimbra

https://wiki.zimbra.com/wiki/How_to_obtain_an_A%2B_in_the_Qualys_SSL_Labs_Security_Test

Ajout des adresses autorisés a envoyer/relayer

$ zmprov modifyServer serveur_mail.domaine.tld zimbraMtaMyNetworks '127.0.0.0/8 ip/32 ip/32 range_d'ip/24 range_ip/26'

Puis reload le service

$ postfix reload

Accessible egalement depuis l’interface d’admin dans Configuration / Serveurs / serveur_mail.domaine.tld / Agent MTA > Réseaux acceptés


Restreindre l’accès a une liste de distribution pour un utilisateur ou un groupe d’utilisateurs

$ zmprov grr dl dl_a_restreindre@domaine.tld grp groupe_autorise@domaine.tld sendToDistList

Restart le service

$ zmmilterctl restart

#Pour info
dl = distribution list
grp = groupe (usr pour utilisateur)
sendToDistList = autorisé a envoyé
dl_a_restreindre@domaine.tld = nom de la dl a restreindre
groupe_autorise@domaine.tld = nom du groupe d’utilisateur autorisé a envoyé a la dl

Wiki: https://wiki.zimbra.com/wiki/Enabling_and_administering_the_Zimbra_milter


Queques liens Zimbra

https://www.zimbra.com/docs/os/7.2.3/administration_guide

Connaître l’id d’une cos

$ zmprov gc nom_de_la_cos | grep zimbraId

zimbraId: d6e76899-f915-40ca-b7a0-ec9c8a76f133


Commande création utilisateur, ajout liste de distribution et archivage en cli

$ zmprov ca utilisateur@domaine.tld 'mot_de_passe' zimbraCOSid d6e76899-f915-40ca-b7a0-ec9c8a76f133 cn "Prénom Nom" displayName "Prénom Nom" givenName "Prénom" sn "Nom" zimbraPrefFromDisplay "Prénom Nom"

Ajout de l’utilisateur dans une global adress list

$ zmprov dl@domaine.tld utilisateur@domaine.tld

Création de l’archive utilisateur

$ zmarchiveconfig enable utilisateur@domaine.tld archive-cos nom_de_la_cos
$ zmsoap -z -m utilisateur-date_de_creation@domaine.tld.archive FolderActionRequest/action @id='2' @op='retentionpolicy' retentionPolicy/keep ../purge/policy @lifetime='1095d' @type='user'

 

 

No votes yet.
Please wait...

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.