ZimbraAdminTips4

Zimbra 4.5.x Administration Tips #

En este documento se listan algunos tips y comandos de administración del servidor Zimbra en su versión 4.5.x, aunque muchos de ellos siguen siendo validos para la versión 5.

Tabla de Contenidos [-]

Iniciar servicios #

Iniciar servicios zimbra #

Como usuario root:

$ /etc/init.d/zimbra [start|stop|restart]

Como usuario zimbra:

$ su - zimbra
$ zmcontrol [start|stop|restart]
/opt/zimbra/bin/zmcontrol [-v -h -H <host>] command [args]

        -v:     display version
        -h:     print usage statement
        -H:     Host name (localhost)

        Command in:
                maintenance                Toggle maintenance mode
                shutdown                             Stop services
                start                               Start services
                startup                             Start services
                status                      Display service status
                stop                                 Stop services


Verificar el estado de zimbra #

zimbra@planetexpress:~$ zmcontrol status
Host planetexpress.zylk.net                          /opt/zimbra/bin

        antispam                Running       zmantispamctl  
        antivirus               Running       zmantivirusctl
        ldap                    Running       
        logger                  Running       zmloggerctl     
        mailbox                 Running       zmmailboxctl
        mta                     Running       zmmtactl
        snmp                    Running
        spell                   Running       zmspellctl
        stats                   Stopped       zmstatsctl 
zimbra@planetexpress:~$ zmstatctl -H
Usage: zmstatctl start|stop|status|rotate
Starts/stops monitoring processes, checks status, or rotates logs.

zimbra@planetexpress:~$ zmstatctl stop

Verificar y activar los servicios de zimbra #

En primer lugar, verifico los servicios que están habilitados
zimbra@planetexpress:~/postfix/sbin> zmprov gs planetexpress.zylk.net|grep zimbraServiceEnabled
zimbraServiceEnabled: antispam
zimbraServiceEnabled: logger
zimbraServiceEnabled: mailbox
zimbraServiceEnabled: mta
zimbraServiceEnabled: snmp
zimbraServiceEnabled: ldap
zimbraServiceEnabled: spell

Por ejemplo, para quitar el servicio de antivirus:

zimbra@planetexpress:~$ zmprov ms planetexpress.zylk.net zimbraServiceEnabled antispam \
zimbraServiceEnabled logger \
zimbraServiceEnabled mailbox \
zimbraServiceEnabled mta \
zimbraServiceEnabled snmp \
zimbraServiceEnabled ldap \
zimbraServiceEnabled spell

Información de las cuentas de usuario y dominios #

zimbra@planetexpress:~$ zmaccts

Información de los servidores #

zimbra@planetexpress:~$ zmprov gas

Información de los diferentes dominios #

zimbra@planetexpress:~$ zmprov gad

Información de las cuotas de usuario #

zimbra@planetexpress:~$ zmprov gqu planetexpress.zylk.net
fry@zylk.net 0 216365530
leela@zylk.net 0 146587533
bender@zylk.net 0 99647490
hubert@zylk.net 0 24072285
zoidberg@zylk.net 0 3588483
amy@zylk.net 0 2056305
hermes@zylk.net 0 776066
zapp@zylk.net 0 54562
kif@zylk.net 0 4996
nibbler@zylk.net 0 11

o bien:

zimbra@planetexpress:~$ zmprov gmi leela@zylk.net 
mailboxId: 3
quotaUsed: 146587533

Información general y preferencias de la cuenta de usuario #

zimbra@planetexpress:~$ zmprov ga fry@zylk.net

Administración de cuentas de usuarios y listas de distribución #

Crear una cuenta de usuario #

zimbra@planetexpress:~$ zmprov ca bender@zylk.net <password>

Cambiar la contraseña en una cuenta de usuario #

zimbra@planetexpress:~$ zmprov sp admin@zylk.net <password>

Modificar cuenta de usuario #

zimbra@planetexpress:~$ zmprov ma bender@zylk.net givenName="Bender" sn="Bending Rodriguez"

Cambiar la clase de servicio COS de una cuenta de usuario #

zimbra@planetexpress:~$ zmprov sac bender@zylk.net basico

donde basico es una clase de servicio definida.

Crear una lista de distribución #

zimbra@planetexpress:~$ zmprov cdl staff@zylk.net

Añadir usuarios a una lista de distribución #

zimbra@planetexpress:~$ zmprov adlm staff@zylk.net admin@zylk.net bender@zylk.net

Añadir un alias #

zimbra@planetexpress:~$ zmprov aaa admin@zylk.net matt@zylk.net

Borrar una cuenta de usuario #

zimbra@planetexpress:~$ zmprov da hubert@zylk.net

Borrar un alias #

zimbra@planetexpress:~$ zmprov raa admin@zylk.net matt@zylk.net

Renombrar una cuenta de usuario #

zimbra@planetexpress:~$ zmprov ra hubert@zylk.net cubert@zylk.net

Configuración de zimbra #

Mostrar las opciones de un servidor #

zimbra@planetexpress:~$ zmprov gs planetexpress.zylk.net

Cambiar puerto webmail http #

Cambiar el puerto webmail de zimbra al 8080.

Como usuario zimbra:

zimbra@planetexpress:~$ zmprov ms planetexpress.zylk.net zimbraMailPort 8080

y luego reiniciar el servidor via:

$ tomcat restart

o bien:

zimbra@planetexpress:~$ zmcontrol stop
zimbra@planetexpress:~$ zmcontrol start

Cambiar puerto webmail https #

Cambiar el puerto seguro del tomcat para publicar.

Como usuario zimbra:

zimbra@planetexpress:~$ zmprov ms planetexpress.zylk.net zimbraMailSSLPort 8443

y luego reiniciar el servidor.

Quitar servicio pop3, pop3s, imap #

Desde la interfaz de administración:

Servidores > planetexpress.zylk.net > IMAP > Disable IMAP
Servidores > planetexpress.zylk.net > POP3 > Disable POP3
Servidores > planetexpress.zylk.net > POP3 > Disable SSL POP3

Desde la consola (como usuario zimbra):

$ zmprov ms planetexpress.zylk.net zimbraImapServerEnabled FALSE
$ zmprov ms planetexpress.zylk.net zimbraImapSSLServerEnabled TRUE
$ zmprov ms planetexpress.zylk.net zimbraPop3ServerEnabled FALSE
$ zmprov ms planetexpress.zylk.net zzimbraPop3SSLServerEnabled FALSE

Configurar LDAP #

Desde la interfaz de administración:

Domains > zylk.net > Configure Authentication > Authentication > External LDAP

LDAP server:

  ldap.zylk.net

LDAP filter:

  uid=%u

LDAP search base:

  
  ou=People,dc=zylk,dc=net

Instalar pack lenguaje #

Enlace al lenguage pack:

http://www.zimbra.com/forums/i18n-l10n-translations/6379-spanish-translation-zimbra-4-5-ge.html

De los 4 archivos del archivo zip con las traduciones:

Tres se copian en /opt/zimbra/tomcat/webapps/zimbra/WEB-INF/classes/msgs

  • ZmMsg_es.properties
  • ZMsg_es.properties
  • AjxMsg_es.properties

Y el ultimo se sustituye en /opt/zimbra/conf/msgs/

  • ZsMsg_es.properties => ZsMsg.properties

Tras esto es necesario reiniciar zimbra:

$ zmcontrol stop
$ zmcontrol start

Información del documento original:

Attached the new Zimbra Spanish translation.

Status:
ZmMsg_es.properties -> 100%
ZMsg_es.properties -> 100%
AjxMsg_es.properties -> 100%
These three files go to /opt/zimbra/tomcat/webapps/zimbra/WEB-INF/classes/msgs

ZsMsg_es.properties -> 100%
This file goes to /opt/zimbra/conf/msgs with name ZsMsg.properties, that is, REPLACING existing one.
Note that your users will receive appointments and other in Spanish always, so if you work with
a multilanguage environment with most users working in english, it would be advisable not to use it.

Pending (and not released):
ZaMsg_es.properties -> 40% (Administrative interface)
ZhMsg_es.properties -> not started (light client)
ZmKeys.properties -> not started, in phase of study (keyboard shortcuts for web client)
AjxKeys_es.properties -> not started (keyboard shorcuts for AjaxToolkit)

Cambiar configuración de idioma #

Descargar de:

http://zimbra-xtras.svn.sourceforge.net/viewvc/zimbra-xtras/trunk/ZimbraTranslations/data

zimbra@planetexpress:~$ cp *.properties /opt/zimbra/tomcat/webapps/zimbra/WEB-INF/classes/msgs/
zimbra@planetexpress:~$ cp *.properties /opt/zimbra/tomcat/webapps/zimbraAdmin/WEB-INF/classes/msgs/
zimbra@planetexpress:~$ cp ZsMsg*.properties /opt/zimbra/conf/msgs/

zimbra@planetexpress:~$ tomcat restart

Ortografía en zimbra #

Hay diversos problemas relacionados con las palabras con tildes en el idioma español en estos momentos. La mejor opción es activar el diccionario en Firefox.

Por otro lado, parece que el apache sólo se se utiliza para el aspell:

zimbra@planetexpress:~$ pgrep -f httpd
18813
18814
18815
18816
18817
18818
zimbra@planetexpress:~$ zmspellctl stop 
zimbra@planetexpress:~$ zmcontrol status
Host planetexpress.zylk.net
        antispam                Running
        antivirus               Running
        ldap                    Running
        logger                  Running
        mailbox                 Running
        mta                     Running
        snmp                    Running
        spell                   Stopped
                zmapachectl is not running
        stats                   Running

que desconecta el servicio del apache.

De este modo:

zimbra@planetexpress:~$ pgrep -f httpd

no da resultado.

Ortografía en zimbra (II) #

Añadimos el corrector ortográfico:

ftp://ftp.gnu.org/gnu/aspell/dict

Indicamos donde está nuestro corrector ortográfico:

Como usuario root:

$ export PATH=/opt/zimbra/aspell-0.60.3/bin/:$PATH
$ ./configure
$ make
$ make install

Editamos:

$ vim /opt/zimbra/httpd/htdocs/aspell.php

locale = es_ES;

Reiniciamos el corrector ortográfico:

$ su - zimbra
zimbra@planetexpress:~$ zmspellctl stop
zimbra@planetexpress:~$ zmspellctl start

HINT: http://wiki.zimbra.com/index.php?title=Adding_new_dictionaries_to_aspell

Instalar un tema de zimbra #

Documentación:

http://wiki.zimbra.com/index.php?title=Customizing_Themes_and_Adding_Zimbra_Powered_Logo_-_Open_Source_Edition Pasos instalar un nuevo tema:

  • Creo el skin de zylk a partir del skin froggy cambiando los colores base de la imagen corporativa de zylk.
  • Edito zylk_subs.txt
  • Edito zylk.xml
  • Instalo el nuevo tema
$ su - zimbra
zimbra@planetexpress:~$ cd /opt/zimbra/tomcat/webapps/zimbra/skins/
zimbra@planetexpress:~$ cp -r froggy/ zylk/
zimbra@planetexpress:~$ cd zylk
zimbra@planetexpress:~$ mv froggy_subs.txt zylk_subs.txt
zimbra@planetexpress:~$ mv froggy.xml zylk.xml

Edito los dos ficheros, cambio froggy por zylk y personalizo los colores.

zimbra@planetexpress:~$ zmprov mcf +zimbraInstalledSkin zylk
zimbra@planetexpress:~$ zmcontrol stop
zimbra@planetexpress:~$ zmcontrol start

Desplegar zimlets #

Listado de los zimlets:

zimbra@planetexpress:~$ /opt/zimbra/bin/zmzimletctl listZimlets
 Installed Zimlet files on this host:
       com_zimbra_amzn
       com_zimbra_phone
       com_zimbra_tracking
       com_zimbra_url
 Installed Zimlets in LDAP:
       com_zimbra_amzn
       com_zimbra_phone
       com_zimbra_tracking
       com_zimbra_url
 Available Zimlets in COS:
   default:
       com_zimbra_amzn
       com_zimbra_phone
       com_zimbra_tracking
       com_zimbra_url

Desplegar un zimlet.

zimbra@planetexpress:~$ /opt/zimbra/bin/zmzimletctl deploy test.zip
 [] INFO: Deploying Zimlet com_zimbra_test in LDAP.
 [] INFO: Installing Zimlet com_zimbra_test on this host.
 [] INFO: zimlet description not found: com_zimbra_test.xml
 [] INFO: Adding Zimlet com_zimbra_test to COS default
 [] INFO: Enabling Zimlet com_zimbra_test

Repliega el zimlet.

zimbra@planetexpress:~$ /opt/zimbra/bin/zmzimletctl undeploy com_zimbra_test
 [] INFO: Uninstalling Zimlet com_zimbra_test from LDAP.
 [] INFO: Removing Zimlet com_zimbra_test from COS default

Deshabilitar un zimlet.

zimbra@planetexpress:~$ /opt/zimbra/bin/zmzimletctl disable com_zimbra_test
 [] INFO: Disabling Zimlet com_zimbra_test

Enlace:

http://wiki.zimbra.com/index.php?title=ZimletUtil

Data store #

Desde la interfaz de administración se puede definir desde donde se alojan los mensajes. Desde la consola hay que crear los directorios.

zimbra@planetexpress:~$ cd /opt/zimbra/
zimbra@planetexpress:~$ mkdir store2
zimbra@planetexpress:~$ mkdir index2

Servidores > planetexpress.zylk.net > Volumenes > Añadir nuevo volumen > Definir el volumen.

Una idea útil es crearlos en una carpeta compartida por samba o nfs para hacer backups, o para que varios servidores de correo balanceen la carga con una carpeta común para guardar los mensajes.

Activar una cuenta de documentos #

zimbra@planetexpress:~$ zmprov mc default zimbraFeatureNotebookEnabled TRUE
zimbra@planetexpress:~$ zmprov mcf zimbraNotebookAccount wiki@zylk.net
zimbra@planetexpress:~$ zmprov in wiki@zylk.net moinmoin /opt/zimbra/wiki/Template Template
Initializing folders 
Initializing...
Creating wiki page _TemplateStyles in folder Template
Creating file document Logo.gif in folder Template
Creating wiki page _TemplateStyles_unused in folder Template
Creating wiki page _PathBodyTemplate in folder Template
Creating wiki page _PathSeparator in folder Template
Creating wiki page _Template in folder Template
Creating wiki page _PathItemTemplate in folder Template
Creating wiki page _SideBar in folder Template
Creating wiki page _TocBodyTemplate in folder Template
Creating wiki page _Footer in folder Template
Creating wiki page _Index in folder Template
Creating wiki page _Header in folder Template
Creating wiki page _TocItemTemplate in folder Template
Creating wiki page _TitleBar in folder Template

Forzar la actualización del antivirus #

zimbra@planetexpress:~$ /opt/zimbra/clamav/freshclam --config-file=/opt/zimbra/conf/freshclam.conf 

Tareas periódicas de zimbra #

Si miramos las tareas programadas del sistema veremos que hay un montón de tareas creadas para Zimbra. Entre ellas una tarea que arranca el script “zmdailyreport”. Esta nos genera un report con la cantidad de correo procesados ese dia, cuantos correo han llegado a cada persona y cuantos a enviado, los errores en el MTA, etc. Es interesante ir controlándolo. Si queremos un report de un mes entero, podemos modificar los parámetros startTime y endTime del script para ajuntarlo a nuestras necesidades. También podemos hacer
zimbra@planetexpress:~$ zmlocalconfig -e zimbra_mtareport_max_recipients=10

o bien:

zimbra@planetexpress:~$ zmlocalconfig -e zimbra_mtareport_max_senders=10

para no hacer el report demasiado largo.

Las tareas en el crontab son las siguientes:

$ su - zimbra
zimbra@planetexpress:~$ crontab -l
# ZIMBRASTART -- DO NOT EDIT ANYTHING BETWEEN THIS LINE AND ZIMBRAEND
#
# Log pruning
#
30 2 * * * find /opt/zimbra/log/ -type f -name \*.log\* -mtime +8 -exec rm {} \; > /dev/null 2>&1
#
# Status logging
#
*/2 * * * * /opt/zimbra/libexec/zmstatuslog
*/10 * * * * /opt/zimbra/libexec/zmdisklog
.
.
.
.
.
.
# ZIMBRAEND -- DO NOT EDIT ANYTHING BETWEEN THIS LINE AND ZIMBRASTART

Buzones, mensajes y colas #

Trazar mensajes #

Trazar mesajes por mensaje(id), remitente, destinatario, ip origen, ip destino y por la fecha de los últimos 30 dias.

zimbra@planetexpress:~$ zmmsgtrace
Usage: /opt/zimbra/bin/zmmsgtrace 
  -i msg_id 
  -s sender_addr -r rcpt_addr -F from_ip/host -D dest_ip/host -t start,end times in YYYYMMDD[hhmmss] format

Tarda unos 5 minutos en actualizarse.

Trazar los mensajes de un usuario #

zimbra@planetexpress:~$ zmmsgtrace -s zoidberg@zylk.net

Ver los mensajes en cola #

zimbra@planetexpress:~$ cd /opt/zimbra/postfix/sbin
zimbra@planetexpress:~$ ./postqueue -p

o bien

zimbra@planetexpress:~$ cd /opt/zimbra/postfix/sbin
zimbra@planetexpress:~$ ./mailq

o bien

zimbra@planetexpress:~$ cd /opt/zimbra/postfix/sbin
zimbra@planetexpress:~$ sendmail -bq

Leer un mensaje de la cola #

zimbra@planetexpress:~$ ./postcat -q 90EB6C8BD4

Borrar un mensaje de la cola #

Como root:

zimbra@planetexpress:~$ cd /opt/zimbra/postfix/sbin
zimbra@planetexpress:~$ ./postsuper -d <id de mensaje>

Borrar todos los mensajes de la cola #

Con cuidado y como root:

zimbra@planetexpress:~$ cd /opt/zimbra/postfix/sbin
zimbra@planetexpress:~$ 
./postqueue -p | awk '!/delivery/ && NF > 6 {print substr($1,1,10)}' | xargs -n 1 ./postsuper -d

El equivalente de una receta:

zimbra@planetexpress:~$ ./mailq | awk '!/delivery/ && NF > 6 {print substr($1,1,10)}' | postsuper -d -

Script de perl para borrar mensajes de las colas #

Enlace: http://www.linuxjournal.com/article/9454

#!/usr/bin/perl
$REGEXP = shift || die "no email-address given (regexp-style, e.g. bl.*\@yahoo.com)!";
@data = qx</usr/sbin/postqueue -p>;
for (@data) {
	if (/^(\w+)(\*|\!)?\s/) {
		$queue_id = $1;
	}
	if($queue_id) {
		if (/$REGEXP/i) {
			$Q{$queue_id} = 1;
			$queue_id = "";
		}
	}
}
#open(POSTSUPER,"|cat") || die "couldn't open postsuper" ;
open(POSTSUPER,"|postsuper -d -") || die "couldn't open postsuper" ;
foreach (keys %Q) {
	print POSTSUPER "$_\n";
};
close(POSTSUPER);

Here's how you'd use it:

# mailq
C73A015C095     7509 Mon Oct 13 14:56:17 MAILER-DAEMON
	(connect to mx5.ancientaward.com[64.156.166.211]: Connection refused)
 
National_Nosepicking_Month@mx5.ancientaward.com

Notice that the sender is identified as <MAILER-DAEMON> here. 
To remove these bounces, run delete-from-mailq as root:

# delete-from-mailq MAILER-DAEMON
postsuper: C73A015C095: removed
postsuper: Deleted: 1 message

Lanzar los mensajes de la cola #

zimbra@planetexpress:~$ postqueue -f

Mandar un mail desde la línea de comandos #

$ aptitude install mailx
$ mail -s test admin@zylk.net < archivo.txt 

o bien

$ aptitude install mutt
$ mutt -s test admin@zylk.net < archivo.txt 

Testear el envio de mails #

matt@planetexpress ~ $ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 planetexpress.zylk.net ESMTP Exim 4.67 Tue, 04 Mar 2008 16:55:44 +0100
helo localhost
250 planetexpress.zylk.net Hello localhost [127.0.0.1]
mail from: amy@zylk.net
250 OK
rcpt to: hermes@zylk.net
250 Accepted

data
354 Enter message, ending with "." on a line by itself
subject: test
esto es una prueba
.
250 OK id=1JWZV6-00020U-OV
^]

telnet> quit
Connection closed.

La tecla de escape es Ctrl-5

Postfix #

Ver la configuracion del postfix #

Del archivo /opt/zimbra/postfix/conf/main.cf
zimbra@planetexpress:~$ postconf
zimbra@planetexpress:~$ postconf mynetworks 

Ver las restricciones definidas en el postfix #

zimbra@planetexpress:~$ zmprov gacf | grep zimbraMtaRestriction
zimbra@planetexpress:~$ zmprov gacf | grep zimbraMtaDnsLookupsEnabled

Activar búsquedas de DNS en zimbra #

zimbra@planetexpress:~$ zmprov mcf zimbraMtaDnsLookupsEnabled TRUE

Añadir restricciones al postfix (listas negras) #

zimbra@planetexpress:~$ zmprov mcf zimbraMtaRestriction reject_invalid_hostname
             zimbraMtaRestriction reject_non_fqdn
             zimbraMtaRestriction "reject_rbl_client xbl.spamhaus.org"   (servidores de correo de spam)
             zimbraMtaRestriction "reject_rbl_client sbl.spamhaus.org"   (servidores de correo mal config.)
             zimbraMtaRestriction "reject_rbl_client list.dsbl.org"     

Nota: Las opciones de configuración del postfix hay que definirlas con los scripts de zimbra zm* y no directamente a través de /opt/zimbra/postfix/main.cf. Si no se pierden al iniciar el zimbra los machaca. Se recomienda no añadir "pbl.spamhaus.org" ya que resultan muchos falsos positivos.

Configurar redes de confianza MTA #

Desde la interfaz de administración:

Servidores > planetexpress.zylk.net > MTA > Redes de confianza

Desde la consola (como usuario zimbra):

La configuración actual,

zimbra@planetexpress:~$ postconf mynetworks
mynetworks = 127.0.0.0/8 192.168.1.0/24

permite hacer relay a cualquier ordenador de la subred 192.168.1.x

Para permitir que puedan hacer relay planetexpress.zylk.net (192.168.1.202/32) y planetmars.zylk.net (192.168.1.5/32)

zimbra@planetexpress:~$ zmprov ms planetexpress.zylk.net \
zimbraMtaMyNetworks "127.0.0.1/32 192.168.1.xxx/32 192.168.1.x/32"
zimbra@planetexpress:~$ postfix reload

Enlace:

http://wiki.zimbra.com/index.php?title=ZimbraMtaMyNetworks

0 archivos adjuntos
15452 Accesos
Promedio (0 Votos)
Comentarios