Manual Zimbra parte IV: Comandos en Consola, Migración de Servidores de Correo (cuentas y buzones) hacia Zimbra 8.7
Taller 7: Comandos en consola en Zimbra
Tabla de contenidos
Manual Zimbra parte IV: Comandos en Consola, Migración de Servidores de Correo (cuentas y buzones) hacia Zimbra 8.7
Taller 7: Comandos en consola en Zimbra
Tabla de contenidos
- Zimbra CLI Comandos
- Comandos Individuales de servicio
- Comandos de la consola de administración
- Buzones : zmmailbox
- Migración de cuentas y correos
- Creación de cuentas en forma masiva
- Migración de passwd y shado
- Obligar que los usuarios pongan una nueva contraseña
- Generación de contraseñas aleatorias
- Migración de buzones maildir
- Migración de Mailbox con Imapsync
- Migración de contactos entre zimbra a zimbra
- Migración de Zimbra a Zimbra
- Migración de buzones con zmztozmig
7.1.- Zimbra CLI Comandos
CLI | Description |
---|---|
ldap | Start, stop, or find the status of zimbra LDAP |
ldapsearch | Perform a search on an LDAP server |
logmysqladmin | Send myslqadmin commands to the logger mysql |
mailboxd | Start, stop, find the status of the mailboxd server |
mysql | Enters interactive command-line MySQL session with the mailbox mysql |
mysql.server | Start, stop the SQL instance for the mailboxpackage |
mysqladmin | Send admin commands to MySQL |
postconf | Postfix command to view or modify the postfixconfiguration |
postfix | Start, stop, reload, flush, check, upgrade-configuration of postfix |
qshape | Examine postfix queue in relation to time andsender/recipient domain |
zmaccts | Lists the accounts and gives the status ofaccounts on the domain |
zmamavisdctl | Start, stop, restart, or find the status of theAmavis-D New |
zmantispamctl | Start, stop, reload, status for anti-spam service |
zmantivirusctl | Start, stop, reload, status for the anti-virus service |
zmapachectl | Start, stop, reload, or check status of Apacheservice (for spell check) |
zmarchive | Config Command to view, modify, or configure archiving |
zmarchivectl | Start, stop, reload, status for archiving |
zmarchivesearch | Search archives on the account |
zmauditswatchctl | Start, stop, restart, reload, status of theauditswatch |
zmbackup | Performs full backups and incremental backupsfor a designated mail host. |
zmbackupabort | Stops a backup that is in process. |
zmbackupquery | Find a specific full backup set |
zmblobchk | Check consistency of the Zimbra blob store |
zmcalchk | Check consistency of appointments andattendees in the Zimbracalendar |
zmcertmgr | Manage self-signed and commercial certificates |
zmclamdctl | Start, stop, or find the status of Clam AV |
zmcleaniplanetics | Clean iPlanet ICS calendar files |
zmcontrol | (Start/Stop Service) Start, stop, status of the Zimbra servers. Also can use to find the Zimbra version installed. |
zmconvertctl | Start, stop, the conversion server or find thestatus of the converted attachments conversion/indexing |
zmdumpenv | General information about the serverenvironment is displayed |
zmgsautil | Create, delete the GAL sync account and initiate manual syncs. |
zmhostname | Find the hostname of the Zimbra server |
zmhsm | Start, stop and status of a HSM session. |
zmitemdatafile | Extracts and packs tgz files that ZCS uses forREST import/export |
zmjava | Execute Java with Zimbra-specific environmentsettings |
zmldappasswd | Changes the LDAP password |
zmlicense | View and install your Zimbra license |
zmlmtpinject | Testing tool |
zmlocalconfig | Used to set or get the local configuration of a Zimbra server |
zmloggerctl | Start, stop, reload, or find the status of the Zimbra logger service |
zmloggerhostmap | Used to manually map a DNS hostname to azmhostname. |
zmlogswatchctl | Start, stop, status of the swatch that is monitoring logging |
zmmailbox | Performs mailbox management tasks |
zmmailboxdctl | Start, stop, reload, or find the status of themailbox components (mailboxd, MySQL, convert) |
zmmailboxmove | (Move Mailbox) Used to move selected mailboxes from one Zimbra server to another. |
zmmboxsearch | (Cross Mailbox Search) Search across mailboxes to find messages andattachments |
zmmetadump | Support tool that dumps an items metadata in ahuman-readable form |
zmmtaconfigctl | Start, stop, or find the status of the MTAconfiguration daemon |
zmmtactl | Start, stop, or find the status of the MTA |
zmmypasswd | Trace messages |
zmmypasswd | Change MySQL passwords |
zmmysqlstatus | Status of mailbox SQL instance |
zmperditionctl | Start, stop, or find the status of the perdition IMAP proxy |
zmplayredo | Performs data restore using backed upsnapshots taken periodically.Users who use snapshots to backup and restore their information from a standby site use this command. |
zmprov | (Provisioning) Performs all provisioning tasks in Zimbra LDAP, including creating accounts, domains, distribution lists and aliases |
zmproxyconfgen | Generates configuration for the nginx proxy |
zmproxyctl | Start, stop, restart, and find the status of the IMAP proxy service |
zmproxypurge | Purges POP/IMAP routing information from oneor more memcached servers |
zmpython | Ability to write Python scripts that access Zimbra Java libraries. It sets the ZCS class path and starts the Jython interpreter. |
zmredodump | Support tool for dumping contents of a redologfile for debugging purposes |
zmrestore | Performs full restores and incremental restoresfor a designated mail host |
zmrestoreldap | Restore accounts from the LDAP backup |
zmrestoreoffline | (Offline Restore) Performs full restore when the Zimbra server (i.e., the mailboxd process) is down |
zmsaslauthdctl | Start, stop, or find the status of saslauthd(authentication) |
zmschedulebackup | Schedule backups and add the command to your cron table |
zmshutil | Used for other zm scripts, do not use |
zmskindeploy | Deploy skins for accounts from the command line |
zmsoap | Print mail, account, and admin information in the SOAP format |
zmspellctl | Start, stop, or find the status of the spell checkserver |
zmsshkeygen | Generate Zimbras SSH encryption keys |
zmstat-chart | Generate charts from zmstat data collected in adirectory |
zmstat-chart-config | Generate an .xml file with data included from the account setup |
zmstat-chart-config | Outputs an XML configuration that describes the current state of the data gathered from zmstat-chart to generate charts on the |
Consola de administración
CLI | Descripción |
---|---|
zmstatctl | Start, stop, check status, or rotate logs of zmstat data collectors |
zmstorectl | Start, stop, or find the status of Zimbra storeservices |
zmswatchctl | Start, stop, or find the status of the Swatchprocess, which is used in monitoring |
zmsyslogsetup | Used to setup system log config file |
zmthrdump | Initiate a thread dump and save the data to a filewith a timestamp |
zmtlsctl | Set the Web server mode to the communication protocol options: HTTP, HTTPS or mixed |
zmtrainsa | Used to train the anti-spam filter to recognizewhat is spam or ham |
zmtzupdate | Provides mechanism to process timezonechanges from the command line |
zmupdateauthkeys | Used to fetch the ssh encryption keys created by zmsshkeygen |
zmvolume | Manage storage volumes on your Zimbra Mailbox server |
zmzimletctl | Deploy and configure Zimlets |
Comandos de Servicio
su - zimbra
- Verificar el estado de todos los servicios en zimbra
zmcontrol status
- Detener todos los servicios
zmcontrol stop
- Iniciar todos los servicios
zmcontrol start
- Reiniciar todos los servicios
zmcontrol restart
- Ver la versión de zimbra y el parche actual
zmcontrol -v
7.2.- Comandos individuales de servicio (start, stop, restart, status)
- Ejemplo: Detenemos todos los servicios e iniciaremos uno a uno
zmcontrol stop
zmcontrol status
- Iniciar LDAP server
ldap start
zmcontrol status
- Iniciar MySQL Server
mysql.server start
- Iniciar zmconfigd
zmconfigdctl start
- Iniciar MTA (postfix, saslauthd)
zmmtactl start
- Iniciar Amavis, Antivirus y AntiSpam (amavis, spamassassin, clamav)
zmamavisdctl start
zmcontrol status
- Iniciar Mailbox (webmail, panel de administracion, servidores imap y pop3, servidores de filtros)
zmmailboxdctl start
- Iniciar spell (servidor de ortografía)
zmapachectl start
- Iniciar monitoreo
zmswatchctl start
- Iniciar estadísticas
zmstatctl start
- Iniciar Logger (logs del sistema)
zmlogswatchctl start
- **Reiniciar servicio antivirus+*
zmantivirusctl restart
- Reiniciar servicio antispam
zmantispamctl restart
- Iniciar servicio de memcache
zmmemcachedctl start
- Iniciar servicio dkim
zmopendkimctl start
- Iniciar proxy
zmproxyctl start
- Ver el estado de los servicios
zmcontrol status
7.3.- Comandos de la consola de administración
zmcontrol
zmprov
zmlocalconfig
7.3.1.- zmprov: Comando de administración de zimbra
- Loguearse primero como usuario zimbra
su - zimbra
- Lista la ayuda general de zmprov
zmprov help
- Listar la ayuda para gestionar las cuentas
zmprov help account
- Consola Interactiva
zmprov
prov
- Ver ayuda de cuentas
prov> help account
- Salir de la consola interactiva
prov> quit
7.3.1.1.- Cuentas
- Obtener listado de todas las cuentas del servidor (todos los dominios)
zmprov -l gaa
- Obtener todas las cuentas de administración
zmprov -l gaaa
- Obtener información de una sola cuenta
zmprov -l ga tuxito@dominio.com
- Cuentas de un dominio específico
zmprov -l gaa dominio.com
- Detalle de cuentas de un dominio especifico
zmprov -l gaa -v dominio.com
- Detalle de cuentas de un dominio especifico con Cuenta, Nombre y Quota
zmprov -l gaa -v dominio0.com | grep -e zimbraMailDeliveryAddress -e displayName -e zimbraMailQuota |sed -e "s/zimbraMailDeliveryAddress/Cuenta/" -e "s/displayName/Nombre/" -e "s/zimbraMailQuota/Quota/"
- Crear una cuenta, con cos default
zmprov ca pepito@dominio.com Pepito1. displayName "Pepito Perez"
- Crear un usuario con un caso específico ejemplo: Gerente
cos=`zmprov gc gerente | grep zimbraId:|cut -d ' ' -f2` zmprov ca juanito@dominio.com Juanito1. displayName "Juanito Martinez" zimbraCOSId $cos
- Crear una cuenta con detalle
zmprov ca windozero@dominio.com Windozero1. cn 'Windozero Luser' displayName 'WindozeroLuser' zimbraCOSId $cos
7.3.1.2.- Modificar opciones de una cuenta
- Cambiar de password de una cuenta
zmprov sp usuario1@dominio.com passnuevo
- Modificar un atributo de una cuenta
zmprov ma usuario1@dominio.com displayName "Luser Noob 1"
Nota: Se puede modificar cualquier atributo del usuario para la lista de atributos ejecutar
zmprov -l ga usuario1@dominio.com
7.3.1.3.- Busqueda de cuentas
- Búsqueda por atributos
Se puede buscar las cuentas por un atributo en común zmprov sa parametr -
Buscar todas las cuentas activas
zmprov sa zimbraAccountStatus=active
- Buscar todas las cuentas bloqueadas
zmprov sa zimbraAccountStatus=locked
- Buscar en cuales listas se encuentra una cuenta
zmprov gam cuenta@dominio.com
- Buscar todos las cuentas que están de vacaciones
zmprov -l gaa -v ofipymes.com |grep -e zimbraMailDeliveryAddress -e displayName -e zimbraPrefOutOfOfficeUntilDate |grep zimbraPrefOutOfOfficeUntilDate -B 2
7.3.1.4.- Borrar una cuenta
zmprov da usuario3@dominio.com
7.3.1.5.- Creación de Cuentas en forma masiva
- Nos logueamos como root
su -
- Creamos nuestro directorio de scrips
mkdir /opt/zimbra/scripts
- Entramos al directorio
cd /opt/zimbra/scripts
- Primero creamos un archivo con la lista de cuentas y sus respectivos COS
vim usuarios.txt
usuario1@dominio.com,Usuario1.,Usuario Prueba 1,default
usuario2@dominio.com,Usuario2.,Usuario Prueba 2,default
usuario3@dominio.com,Usuario3.,Usuario Prueba 3,gerente
- Creamos ahora un script que genere un archivo para la creación de usuario
vim crea_usuarios.php
#!/usr/bin/php
- Ejecutamos el script, para eso necesitamos php
yum -y install php56w-cli
chmod 755 crea_usuarios.php
crea_usuarios.php> cuentas.zm
- Creamos los usuarios con zmprov
/opt/zimbra/bin/zmprov < cuentas.zm
7.3.1.6.- Listas de correo
- Buscar todas las listas, y por dominio
zmprov gadl
zmprov gadl dominio.com
- Crear una lista
zmprov cdl lista@dominio.com
- Ver una lista específica
zmprov gdl lista@dominio.com
- Encontrar todas las listas de un dominio y sus miembros
for i in $( zmprov gadl dominio0.com | grep -v abuse | grep -v postmaster | sort ) ; do echo `zmprov gdl $i | grep -e 'mail: ' -e 'zimbraMailForwardingAddress: ' | sed 's/mail/Lista/' | sed 's/zimbraMailForwardingAddress: //'` ; done ;
- Agregar un miembro a la lista
zmprov adlm lista@dominio.com cuenta@dominio.com
- Remover un miembro de la lista
zmprov rdlm lista@dominio.com cuenta@dominio.com
- Borrar una lista
zmprov ddl lista@dominio.com
7.3.2.- Obtener y modificar valores de configuracion
- Ver los valores de configuración del servidor
zmlocalconfig
- Ver los valores de configuración mostrando los password
zmlocalconfig -s
- Mostrar el password de mysql
zmlocalconfig -s | grep mysql_root_password
- Mostrar el password de ldap
zmlocalconfig -s | grep zimbra_ldap_password
- Obtener todos los parámetros de configuración generales
zmprov gacf | less
- **Modificar un valor global de configuración **
zmprov mcf zimbraMtaMaxMessageSize 20240000
- Obtener los parámetros de configuración de un servidor
zmprov gs `zmhostname` | less
- Modificar el valor de configuración de un servidor
zmprov ms `zmhostname` zimbraImapNumThreads 1000
Siempre que se modifica un valor de zimbra hacer un restart del servidor o del servicio afectado***
7.4.- Buzones (zmmailbox)
- Entrar a la consola interactiva
zmmailbox
mbox>
- Ver ayuda general del comando
zmmailbox help
- **Ver ayuda de las cuentas **
zmmailbox help account
- Ver ayuda de los mensajes
zmmailbox help message
7.4.1.- Tamaño de un buzón
- Ver tamaño ocupado del buzón
zmmailbox -z -m cuenta@dominio.com gms
- Ver el tamaño de las quotas asignadas y ocupadas de todos los buzones
zmprov gqu `zmhostname`|awk {'print " "$3" "$2" "$1'}
- Revisar mensajes por carpetas en el buzón
zmmailbox -z -m cuenta@dominio.com gaf
- Borrar una carpeta completa de un buzón
zmmailbox -z -m cuenta@dominio.com emptyFolder Junk
- **Importar mensajes de una carpeta Maildir existente en el INBOX **
echo addMessage /INBOX /path/to/Maildir/cur | /opt/zimbra/bin/zmmailbox -z -m cuenta@dominio.com
- Buscar un mensaje
zmmailbox -z -m cuenta@dominio.com search -t message "prueba"
- Buscar un mensaje en todas las cuentas
zmprov -l gaa |awk '{print "zmmailbox -z -m "$1" search \"linux\" "}' |sh -v
linux es la palabra de búsqueda
- Buscar correos anteriores a una fecha: (formato mes/dia/año)
zmmailbox -z -m cuenta@dominio.com search -t message "in:INBOX (before: 07/28/13)"
- Obtener contenido de un correo
zmmailbox -z -m cuenta@dominio.com gm 21940