Como montar un sistema de correo con Zimbra (3/6)

Como montar un sistema de correo con Zimbra (3/6)

Introducción

No es ninguna novedad que el spam y los virus son uno de los problemas que más molestan, tanto a los usuarios como a los administradores. En el mercado existen soluciones especializadas en la “lucha” contra el spam, pero si no tenemos ninguna de estas herramientas podemos activar los filtros que nos proporciona zimbra.

Vamos a dividir el capítulo de filtros antispam en 2, ya que el que os muestro hoy es algo largo y requiere de más configuración, por lo que empezaremos con el filtro policyd y en el próximo capítulo veremos otros filtros.

!Empecemos!

Policyd

Este es un filtro muy interesante que aplicará cuotas tanto en los correos entrantes como salientes. Evitará que enviemos o nos envíen mails masivos, evitando que la IP pública de nuestra conexión o servidor sea añadida a alguna lista negra.

Este filtro es recomendable ya dispongais de un filtro antispam profesional como si no. Con este filtro controlaremos, por ejemplo, los envíos que pueda hacer un equipo infectado.

Este servicio viene desactivado por defecto y no se puede activar desde el portal web. Para activarlo ejecutaremos las siguientes ordenes desde la línea de comandos

su - zimbra
zmprov ms `zmhostname` +zimbraServiceInstalled cbpolicyd
zmprov ms `zmhostname` +zimbraServiceEnabled cbpolicyd

Una vez instalado y activado verificamos que se ha instalado correctamente ejecutando

zmprov gs `zmhostname` | grep zimbraServiceInstalled

En la salida de este comando tenemos que ver una línea  como la siguiente

zimbraServiceInstalled: cbpolicyd

Para verificar que el servicio está funcionando ejecutamos

zmcbpolicydctl status

y nos debería mostrar un resultado como el siguiente

policyd is running.

La instalación y activación de este servicio modifica la configuración del servidor postfix. Para verificar que es así, ejecutamos las siguientes ordenes

postconf | grep 10031

y deberíamos ver un resultado como el siguiente

zimbra@mail:~$ postconf | grep 10031
smtpd_end_of_data_restrictions = check_policy_service inet:localhost:10031
smtpd_recipient_restrictions = check_policy_service inet:localhost:10031, reject_non_fqdn_recipient, permit_sasl_authenticated, permit_mynetworks, reject_unlisted_recipient, reject_invalid_helo_hostname, reject_non_fqdn_sender, permit
smtpd_sender_restrictions = check_policy_service inet:localhost:10031, check_sender_access regexp:/opt/zimbra/common/conf/tag_as_originating.re, permit_mynetworks, permit_sasl_authenticated, permit_tls_clientcerts, check_sender_access regexp:/opt/zimbra/common/conf/tag_as_foreign.re

Si no nos aparece alguna de estas líneas podemos forzar el cambio en la configuración ejecutando

zmprov mcf +zimbraMtaRestriction "check_policy_service inet:127.0.0.1:10031"
zmlocalconfig -e postfix_enable_smtpd_policyd=yes

Ahora tenemos el servicio funcionando y el servidor postfix utilizándolo, pero no tenemos ninguna cuota creada ni asignada. Vamos a realizar las tareas necesarias para crear estas cuotas.

En primer lugar vamos a crear una carpeta en la que crearemos todo lo necesario para aplicar estas cuotas. Este paso lo ejecutaremos desde el usuario root

mkdir /opt/zimbra/scripts && chown zimbra.zimbra /opt/zimbra/scripts/

Volvemos al usuario zimbra y creamos el fichero que contendrá la sentencia SQL con las cuotas que asignaremos.

su - zimbra
vi /opt/zimbra/scripts/cuotas.sql

El contenido de este fichero es el siguiente

BEGIN TRANSACTION;
INSERT INTO "policies" VALUES(6, 'Zimbra', 0, 'Zimbra Policy', 0);
INSERT INTO "policy_members" (PolicyID,Source,Destination) VALUES(6, 'any', 'any');
INSERT INTO "quotas" VALUES (3, 6, 'Sender:user@domain', 'Sender:user@domain', 60, 'DEFER', 'Demasiados mensajes enviados en 60 segundos', 0, 'Cuota para 60 segundos', 0);
INSERT INTO "quotas" VALUES(4, 6, 'Recipient:@domain', 'Recipient:@domain', 60, 'REJECT', 'Demasiados mensajes enviados en 60 segundos', 0, 'Cuota para recepcion de dominios externos en 60 segundos', 0);
INSERT INTO "quotas_limits" VALUES(4, 3, 'MessageCount', 6, '', 0);
INSERT INTO "quotas_limits" VALUES(5, 4, 'MessageCount', 20, '', 0);
COMMIT;

Las cuotas que preparamos en este fichero va a permitir enviar un máximo de 6 mails por minuto y por usuario, y también que no recibamos más de 20 mensajes por minuto de un mismo dominio.

Antes de importar este SQL hacemos un backup de la base de datos actual

cp -ra /opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb /opt/zimbra/scripts/cbpolicyd.sqlitedb

Si queremos excluir alguna IP de este control podemos hacerlo añadiendo la siguiente línea al script

INSERT INTO policy_group_members (PolicyGroupId,Member,Disabled,Comment) VALUES(3,'172.16.4.10',0,'Servidor confiable');

Una vez tenemos el backup de la base de datos, vamos a importar el contenido del fichero SQL a la base de datos

sqlite3 /opt/zimbra/data/cbpolicyd/db/cbpolicyd.sqlitedb < /opt/zimbra/scripts/cuotas.sql

Policyd dispone de otros módulos para controlar el spam, pero los vamos a desactivar porque utilizaremos los propios de Zimbra. Adaptamos la configuración para cargar únicamente el módulo de cuota y modificar el nivel de log

zmlocalconfig -e cbpolicyd_log_detail=modules,tracking,policies; zmlocalconfig -e cbpolicyd_module_accesscontrol=1 cbpolicyd_module_checkhelo=0 cbpolicyd_module_checkspf=0 cbpolicyd_module_greylisting=0 cbpolicyd_module_quotas=1
zmlocalconfig -e cbpolicyd_log_level=3

y verificamos el resultado con

zmlocalconfig | grep -i cbpolicy

Ya tenemos la configuración preparada y solo nos queda reiniciar los servicios

zmcbpolicydctl restart && zmmtactl restart

Nos aseguramos que el servicio funciona correctamente con

zmcbpolicydctl status

Pruebas

Solo nos queda verificar que las cuotas funcionan correctamente. Para ello accederemos al webmail de Zimbra con alguno de los usuarios que esté funcionando. Una vez dentro enviaremos más de 5 mensajes en menos de 1 minuto. Si todo ha funcionado correctamente, al intentar enviar el quinto mensaje nos aparecerá el siguiente mensaje

En el log /opt/zimbra/log/cbpolicyd.log podemos ver como hemos superado la quota

[2017/03/06-21:24:08 - 6814] [CORE] INFO: module=Quotas, action=defer, host=127.0.0.1, helo=mail.eslinux.org, from=usuari2@eslinux.org, to=usuari1@eslinux.org, reason=quota_match, policy=6, quota=3, limit=4, track=Sender:usuari2@eslinux.org, counter=MessageCount, quota=7.88/6 (131.4%)

y en el log /var/log/mail.log podemos ver el mensaje que configuramos al configurar las cuotas

Mar 6 21:24:08 mail postfix/smtpd[5630]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 450 4.7.1 <usuari1@eslinux.org>: Recipient address rejected: Demasiados mensajes enviados en 60 segundos; from=<usuari2@eslinux.org> to=<usuari1@eslinux.org> proto=ESMTP helo=<mail.eslinux.org>

Bibliografia

Si queréis profundizar en este sistema antispam podéis consultar los siguientes enlaces

Creación Plantilla Windows Server 2012 R2 con VMware – Parte III

Creación Plantilla Windows Server 2012 R2 con VMware – Parte III

¡Hola a Tod@s!

¡Por fin! Con este Post finalizamos el tutorial para crear una plantilla con Windows 2012 R2 con Vmware.

En la primera parte vimos cómo crear con Vmware la Plantilla y la instalación básica de Windows 2012 Server.

En la segunda parte ya entramos en la personalización de nuestra maqueta Windows 2012 R2

En la parte final vamos a ver cómo cerrar la maqueta, dejarla preparada para crear nuestros servidores a partir de ella y finalmente como desplegarla.

Al Turrón!

Leer más Leer más

Como utilizar DNS con zimbra

Como utilizar DNS con zimbra

Introducción

En el primer capítulo de la serie “Como montar un servidor zimbra” mostraba la instalación básica. Después de pruebas con el entorno que estoy preparando, he visto problemas en la recepción de correos externos. El problema es debido a que el servidor tiene una IP privada, mientras que el DNS resuelve el nombre del servidor a la IP pública. Si el servidor zimbra tuviera directamente la IP pública no sería necesario hacer nada.

En este post trataré de explicaros como solucionar este problema con Split-DNS.

Hay que tener en cuenta que este procedimiento implica reiniciar servicios de zimbra, por lo que si el servidor está en producción, será necesario informar a los usuarios o realizar estas tareas fuera de horario laboral.

Leer más Leer más

Como montar un sistema de correo con Zimbra (2/6)

Como montar un sistema de correo con Zimbra (2/6)

Introducción

En el primer capítulo de este manual de Zimbra vimos como instalarlo en un Ubuntu Server 16.04 LTS, pero la funcionalidad dejaba mucho que desear, ya que no hicimos nada más.

En este segundo capítulo vamos a preparar una configuración para tener una base adecuada a nuestras necesidades, para luego empezar a crear cuentas de correo. Veremos las secciones en el portal de administración, pero las que yo marque aquí no tienen porqué ser las mismas que os sirvan a vosotros. Mirad con calma todas las opciones que Zimbra nos ofrece y seleccionad las que mejor cubran vuestras necesidades.

Leer más Leer más

Creación Plantilla Windows Server 2012 R2 con VMware – Parte II

Creación Plantilla Windows Server 2012 R2 con VMware – Parte II

¡Hola a Tod@s!

En la primera parte de este Post vimos cómo crear la VM que nos va a permitir crear la plantilla de Windows Server 2012 R2 a través de Vmware.

En esta segunda parte, vamos a ver la personalización inicial de Windows Server 2012 para que nuestra maqueta quede perfectamente actualizada y lista para desplegar.

Vamos al lio!

Leer más Leer más

Como montar un sistema de correo con Zimbra (1/6)

Como montar un sistema de correo con Zimbra (1/6)

Introducción

Antes de empezar con este post me gustaría comentar que no soy un experto en Zimbra. Voy a aprovechar un nuevo proyecto para ir compartiendo los avances y las experiencias con las que me iré encontrando.

Dividiré las publicaciones en los siguientes capítulos:

Es posible que vaya variando el contenido según las necesidades y lo que vaya preparando. Empecemos con el primer capítulo.

Leer más Leer más

Creación Plantilla Windows Server 2012 R2 con VMware – Parte I

Creación Plantilla Windows Server 2012 R2 con VMware – Parte I

¡Hola a Tod@s!

Como comenté en mi presentación, la finalidad de mis Posts era construir paso a paso una infraestructura de servidores Windows sobre Vmware, que nos permitiera alojar los servicios básicos de una empresa: AD, DNS, DHCP,…

Lo primero que debemos hacer una vez hemos implementado nuestra infraestructura virtual, es crear una plantilla de VM de Windows, en nuestro caso Windows Server 2012 R2 Standard, para ahorrar tiempo en instalaciones y configuraciones repetitivas que deben tener todos los servidores que montemos.

Esta plantilla nos servirá para desplegar en minutos, un Windows Server 2012, para una nueva función dentro de nuestra infraestructura.

Para crear esta plantilla, dividiremos este Post en 3 partes:

  1. Creación de la VM e Instalación del Sistema Operativo.
  2. Personalización del Sistema Operativo.
  3. Conversión a Plantilla y Despliegue

En esta primera parte, veremos cómo configurar la VM en nuestro VMWare y realizaremos la instalación básica de Windows 2012 R2 Standard así como algunas recomendaciones.

Leer más Leer más

Hello Mundo – Parte II

Hello Mundo – Parte II

Saludos a tod@s!

Mi nombre es Josep Prada, compañero de aventuras informáticas de Sergi durante muchos años en este loco mundo de la informática.

Muy amablemente me ha pedido que colabore en este Blog, para aportar un poco de conocimiento de Microsoft a nivel de servidores, mi fuerte, aunque es posible que escriba sobre otros productos que se crucen en mi camino como administrador.

Actualmente soy administrador de Sistemas Windows / Vmware aunqué también hago mis pinitos en Linux / Solaris y todo sistema que pase por mis manos.

Intentaré empezar a escribir con una serie de Posts relacionados con W2012 R2, que nos permitirán montar una estructura básica de Active Directory y hacerla crecer añadiendo roles y características.

Espero que os sea interesante, y cualquier duda intentare responderla dentro de mis posibilidades.

Gracias!

Buscar registros de correos en Exchange

Buscar registros de correos en Exchange

A partir de exchange 2007 Microsoft activó la famosa powershell. Es una potente herramienta que nos permitirá hacer de todo de manera rápida. Quizás la curva de aprendizaje es más elevada que con las herramientas gráficas, pero a la larga es mucho más rápido ejecutar las acciones a través de powershell.

En este post veremos como buscar registros de correo a través de powershell.

Leer más Leer más