Zimbra 8.8. Parte V. (Después de instalar)

Giua: https://www.jorgedelacruz.es/2015/01/13/zimbra-una-vez-instalado-que-hago-administrador/

Modificar timestamp

Un problema muy común, se trata del valor que podemos encontrar en nuestra Admin Console de Zimbra Collaboration, en concreto hablamos de Home > Manage > Accounts, cuando queremos comprobar cuando fue el último Login de nuestros usuarios.

  • Lo normal es que el último Login no nos parezca correcto, o al menos no actualizado, ya que parece algo obsoleto, y de hecho así es, Zimbra Collaboration viene con el atributo zimbraLastLogonTimestampFrequency por defecto en 7d (7 días), podemos cambiarlo para que refresque con un tiempo más prudencial y que se ajuste a nuestro entorno de trabajo, por ejemplo 15 minutos, pero podemos ajustarlo por segundos, minutos, horas o días.
  • Entonces en la terminal
su zimbra
zmprov mcf zimbraLastLogonTimestampFrequency 15m

Mail de bloqueo

Cuando nuestro sistema de Zimbra, bloquea una cuenta de correo a consecuencia de equivocarse consecutivamente de password, ya sea por un ataque o por descuido.

Nuestro sistema bloquea la cuenta y no nos informa de lo sucedido hasta que nos llama el usuario final. Lo que vamos a ver, es el comando “zmauditswatch”, el cual nos informará por email, cuando se bloquea una cuenta de correo. Cabe destacar que esta funcionalidad no viene habilitada por defecto en nuestros sistema de Zimbra.

¿Qué es zmauditswatch?

Zmauditswatch es un servicio de ZCS que notifica al administrador (a través de cualquier dirección de correo electrónico predefinida) de un posible ataque de fuerza bruta para cualquier cuenta alojada por Zimbra, examinando la información de fallo de autenticación. Los umbrales pueden configurarse por cuenta, IP y cuenta e IP. Una herramienta indispensable vaya.

COMO SE CONFIGURA

  • (zimbra_swatch_ipacct_threshold) – Comprobación de hash de IP / cuenta que advierte en 10 fallos de autenticación de un combo IP / cuenta dentro de una ventana de 60 segundos.
  • (zimbra_swatch_acct_threshold) – Comprobación de cuenta que avisa en 15 fallos de autenticación desde cualquier IP dentro de una ventana de 60 segundos. Intenta detectar un ataque basado en una cuenta comprometida distribuido en una sola cuenta.
  • (zimbra_swatch_ip_threshold) – IP que advierte en 20 fallos de autenticación a cualquier cuenta dentro de una ventana de 60 segundos. Intenta detectar un único ataque basado en host en varias cuentas.
  • (zimbra_swatch_total_threshold) – Comprobación total de fallos de autenticación que advierte en 1000 fallas de autenticación desde cualquier IP a cualquier cuenta en 60 segundos. El valor recomendado en esto es de 1% de cuentas activas para el buzón.
  • (zimbra_swatch_notice_user) – La dirección de correo electrónico que queremos que se usen cuando todas las condiciones ocurren.
su zimbra
zmlocalconfig -e zimbra_swatch_notice_user='admin@siua.ac.cr'
zmlocalconfig -e zimbra_swatch_ipacct_threshold=10
zmlocalconfig -e zimbra_swatch_acct_threshold=15
zmlocalconfig -e zimbra_swatch_ip_threshold=20
zmlocalconfig -e zimbra_swatch_total_threshold=60
zmlocalconfig -e zimbra_swatch_threshold_seconds=3600
  • Podemos consultar la información con
zmlocalconfig -x
  • Ahora tratamos de arrancar el servicio
zmauditswatchctl start
  • Pero falla
Starting auditswatch...failed.
  • Si miramos el log de zmauditswatch, veremos lo siguiente:
tail -f /opt/zimbra/log/zmauditswatch.out 
#RESPUESTA
/opt/zimbra/bin/zmauditswatchctl: line 107: /opt/zimbra/libexec/auditswatch: No such file or directory
  • Ahora como el usuario root
cd /tmp
wget http://bugzilla-attach.zimbra.com/attachment.cgi?id=66723
mv attachment.cgi\?id\=66723 auditswatch
mv auditswatch  /opt/zimbra/libexec/auditswatch
chown root:root /opt/zimbra/libexec/auditswatch
chmod 0755 /opt/zimbra/libexec/auditswatch
  • Ahra como usuario zimbra
su zimbra
zmauditswatchctl start

#RESULTADO
zmauditswatchctl start...done
  • Si por cualquier motivo no recibieramos alertas a nuestra cuenta predeterminada que configuramos antes, y en los logs vemos lo siguiente: revisar guia
/opt/zimbra/data/tmp/.swatch_script.2721: cannot open pipe to : Broken pipe

Activar Zmauditswatch en el auto-arranque

  • OPCION 1: NO SIRVIO
su root
echo ' ' >> /etc/rc.local
echo 'sleep 5800' >> /etc/rc.local
echo 'su - zimbra -c "zmauditswatchctl start"' >> /etc/rc.local
SI NO EJECUTA EL SERVICIO
systemctl status rc-local
sudo systemctl enable rc-local
#RESPUESTA 
The unit files have no [Install] section. They are not meant to be enabled
 using systemctl.
 Possible reasons for having this kind of units are:
 1) A unit may be statically enabled by being symlinked from another unit's
 .wants/ or .requires/ directory.
 2) A unit's purpose may be to act as a helper for some other unit which has
 a requirement dependency on it.
 3) A unit may be started when needed via activation (socket, path, timer,
 D-Bus, udev, scripted systemctl call, ...).
###############################################
#SOLUCION
###############################################
sudo nano /etc/systemd/system/rc-local.service

###############################################
#PEGUE
###############################################
[Unit]
 Description=/etc/rc.local Compatibility
 ConditionPathExists=/etc/rc.local

[Service]
 Type=forking
 ExecStart=/etc/rc.local start
 TimeoutSec=0
 StandardOutput=tty
 RemainAfterExit=yes
 SysVStartPriority=99

[Install]
 WantedBy=multi-user.target

###############################################
### PERMISOS
###############################################
sudo chmod +x /etc/rc.local

###############################################
### CREE BASH
###############################################
printf '%s\n' '#!/bin/bash' 'exit 0' | sudo tee -a /etc/rc.local

###############################################
### PERMISOS
###############################################
sudo chmod +x /etc/rc.local

###############################################
### HABILITE SERVICO
###############################################
sudo systemctl enable rc-local
sudo systemctl start rc-local.service
sudo systemctl status rc-local.service
  • Queda así
#!/bin/bash
sleep 5800
su - zimbra -c "zmauditswatchctl start"
exit 0
  • Si tampoco sirve OPCION 2 (ESTA ES LA QUE APLIQUE)
su root
nano /root/zmauditswatchctl.sh
  • Agregamos el código
su - zimbra -c "zmauditswatchctl start"
  • Le damos permisos de ejecución
chmod 777 -R /root/zmauditswatchctl.sh
  • Lo incluimos el el cron
crontab -e
@reboot sleep 60 && /root/zmauditswatchctl.sh
  • Comandos solo con su zimbra
zmauditswatchctl start
zmauditswatchctl stop
zmauditswatchctl status

Para probarlo

  • Si intentamos entrar en una cuenta con un usuario y una contraseña errónea por 10 veces:
tail -f /opt/zimbra/log/zmauditswatch.out 

#RESPUESTA

IP:Acct failure threshold exceeded: 10.20.200.78 admin@siua.ac.cr
Account failure threshold exceeded: 10.20.200.78 admin@siua.ac.cr
IP failure threshold exceeded: 10.20.200.78 exceeded threshold on failure for gustavo.matamoros@siua.ac.cr
IP:Acct failure threshold exceeded: 10.20.200.78 gustavo.matamoros@siua.ac.cr
Account failure threshold exceeded: 10.20.200.78 gustavo.matamoros@siua.ac.cr
  • Y por correo

IMAP / POP3 / SMTP (NO aplicar)

  • Permitiremos el acceso a los protocolos IMAP, POP3 y SMTP sin necesidad de usar encriptación:
  • Esto mejor no se aplica para que funcione solo con TLS
su zimbra
zmprov mcf zimbraMtaTlsAuthOnly FALSE
zmprov mcf zimbraImapCleartextLoginEnabled TRUE
zmprov mcf zimbraPop3CleartextLoginEnabled TRUE
  • Si va a ser un servidor IMAP, aumentaremos los threads y las conexiones (Para cuando hay mucos cliente IMAP ver guia)
zmprov ms 'correo.siua.ac.cr' zimbraImapNumThreads 500
zmprov ms 'correo.siua.ac.cr' zimbraImapMaxConnections 500

Más información: https://www.jorgedelacruz.es/2014/09/28/zimbra-resolviendo-problema-con-maximo-de-sesiones-imap/

Logs del servidor

  • Reenviaremos todos los logs del servidor a una cuenta en concreto:
# Una externa por si falla el servidor
zmprov ma 'admin@siua.ac.cr' zimbraPrefMailForwardingAddress 'interuniversitariadealajuela@gmail.com'

#Con copia a una interna
zmprov ma 'admin@siua.ac.cr' zimbraFeatureMailForwardingEnabled FALSE

Public service hostname

  • Cambiaremos los accesos directos de los diferentes componenetes de Zimbra:
zmprov mcf zimbraPublicServiceHostname 'correo.siua.ac.cr'

Tamaño de mensajes

  • Habitualmente, cuando configuramos un servidor de Zimbra, pocas veces nos paramos a pensar en los tamaños de upload y de MTA que nos vienen por defecto, una vez instalado nuestro servidor de Zimbra. Estos valores, los podemos ver de una forma rápida y sencilla, por consola o por GUI.
su - zimbra
zmprov gacf | grep zimbraMtaMaxMessageSize
#RESPUESTA
zimbraMtaMaxMessageSize: 10240000

zmprov gacf | grep zimbraFileUploadMaxSize
#RESPUESTA
zimbraFileUploadMaxSizePerFile: 2147483648

Los parámetros mostrados, son almacenados por el LDAP interno de Zimbra y posteriormene propagados por el zmmtaconfig. Otro dato importante, es que los valores que le indicamos por consola son en bit (b) y por la GUI son en kilobyte (KB). En la versión 8 de Zimbra, existen más parámetros de gestión de tamaños como por ejemplo: zimbraFileUploadMaxSizePerFile, casi todos ellos solamente se pueden modificar desde la consola. Pero estos que indico, son los básicos para un buen inicio y no tener problemas con el sistema de correo.

zimbraMtaMaxMessageSize es el tamaño máximo que nuestro servidor SMTP (en nuestro caso el Postfix) va a aceptar. Eso quiere decir, que si nos envian desde una cuenta externa un mensaje que se superior al valor que tenemos indicado, el servidor le retornará un mensaje de error.
zimbraFileUploadMaxSize el tamaño máximo que podemos subir archivos a nuestro servidor de Zimbra, incluyendo: maletín, calendarios, mensajes, etc…. . Esto os aconsejo dejarlo a un valor alto, sobre todo cuando se están haciendo migraciones ya que nos podría dar problemas.

zmprov mcf zimbraMtaMaxMessageSize 38912000
zmprov mcf zimbraFileUploadMaxSize 37888000000
  • Se pueden modificar por GUI

Más información: https://www.jorgedelacruz.es/2014/02/04/zimbra-configurando-tamanos-de-correo/

Redirigir de http a https:

  • Para redirigir
su zimbra
zmprov ms 'correo.siua.ac.cr' zimbraReverseProxyMailMode redirect
zmproxyctl restart

Cambiar logo zimbra

  • Primero debemos hacer las imagenes en las medidas
  • 440×60 pixels – Logo del pagina de login
  • 200×35 pixels – Logo cuando ya se esta logeado (top left corner)
  • Descargamos: aquí
  • Ahora se recomienda almacenar los logos en otra parte que puedan ser accedidos de forma remota para cuando se actualice el sistema estos no se remplacen
su - zimbra
zmprov md siua.ac.cr zimbraSkinLogoURL https://correo.siua.ac.cr
zmprov md siua.ac.cr zimbraSkinLogoLoginBanner https://web4.siua.ac.cr/img_zimbra/correo_login.png
zmprov md siua.ac.cr zimbraSkinLogoAppBanner https://web4.siua.ac.cr/img_zimbra/correo_app.png
zmmailboxdctl restart