La fiabilidad del cifrado es uno de los indicadores más importantes al utilizar sistemas de información para empresas, ya que diariamente participan en la transmisión de enormes cantidades de información confidencial. Un medio comúnmente aceptado para evaluar la calidad de la conexión SSL es la prueba independiente de Qualys SSL Labs. Dado que cualquier persona puede ejecutar esta prueba, es especialmente importante para los proveedores de SaaS que la evaluación en esta prueba sea la máxima. La calidad de la conexión SSL no solo preocupa a los proveedores de SaaS, sino también a las empresas comunes. Para ellas, esta prueba es una excelente oportunidad para identificar posibles puntos vulnerables y cerrar con anticipación todas las brechas para los ciberdelincuentes.

En Zimbra OSE se permite el uso de dos tipos certificados SSL. El primero es un certificado autofirmado que se agrega automáticamente durante la instalación. Este certificado es gratuito y no tiene limitaciones de tiempo, lo que significa que es ideal para probar Zimbra OSE o utilizarla exclusivamente dentro de una red interna. Sin embargo, al ingresar al cliente web, los usuarios verán una advertencia del navegador de que este certificado no es confiable, y la prueba de Qualys SSL Labs definitivamente fallará en su servidor.
El segundo es un certificado SSL comercial firmado por una autoridad certificadora. Estos certificados son bien aceptados por los navegadores y se utilizan comúnmente en la explotación comercial de Zimbra OSE. Justo después de la instalación correcta del certificado comercial, Zimbra OSE 8.8.15 muestra una calificación A en la prueba de Qualys SSL Labs. Este es un excelente resultado, pero nuestro objetivo es alcanzar un resultado A+.


Para alcanzar la máxima calificación en la prueba de Qualys SSL Labs al utilizar Zimbra Collaboration Suite Open-Source Edition, es necesario seguir una serie de pasos:
1. Aumento de los parámetros del protocolo de Diffie-Hellman
Por defecto, en todos los componentes de Zimbra OSE 8.8.15 que utilizan OpenSSL, el valor de los parámetros del protocolo Diffie-Hellman es de 2048 bits. En principio, esto es más que suficiente para obtener una calificación de A+ en las pruebas de Qualys SSL Labs. Sin embargo, si se está actualizando desde versiones anteriores, el valor de los parámetros puede ser inferior. Por lo tanto, se recomienda, después de completar la actualización, ejecutar el comando zmdhparam set -new 2048, que elevará los parámetros del protocolo Diffie-Hellman a unos aceptables 2048 bits, y si se desea, con este mismo comando se puede aumentar el valor a 3072 o 4096 bits, lo cual, por un lado, incrementará el tiempo de generación, pero por otro lado, mejorará el nivel de seguridad del servidor de correo.
2. Activar la lista recomendada de cifrados utilizados
Por defecto, Zimbra Collaboration Suite Open-Source Edition admite una amplia gama de cifrados fuertes y débiles, que son utilizados para cifrar los datos que pasan por una conexión segura. Sin embargo, el uso de cifrados débiles es una desventaja considerable al verificar la seguridad de una conexión SSL. Para evitar esto, es necesario configurar la lista de cifrados utilizados.
Para ello, debe utilizarse el comando zmprov mcf zimbraReverseProxySSLCiphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128:AES256:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4'
Este comando ya incluye un conjunto de cifrados recomendados y, gracias a él, se pueden incluir de inmediato en la lista cifrados confiables y excluir los no confiables. Ahora solo queda reiniciar los nodos con el proxy inverso utilizando el comando zmproxyctl restart. Después de reiniciar, los cambios realizados entrarán en efecto.
En caso de que esta lista no sea de su agrado por alguna razón, se pueden eliminar algunos cifrados débiles utilizando el comando zmprov mcf +zimbraSSLExcludeCipherSuites. Así, por ejemplo, el comando zmprov mcf +zimbraSSLExcludeCipherSuites TLS_RSA_WITH_RC4_128_MD5 +zimbraSSLExcludeCipherSuites TLS_RSA_WITH_RC4_128_SHA +zimbraSSLExcludeCipherSuites SSL_RSA_WITH_RC4_128_MD5 +zimbraSSLExcludeCipherSuites SSL_RSA_WITH_RC4_128_SHA +zimbraSSLExcludeCipherSuites TLS_ECDHE_RSA_WITH_RC4_128_SHA, que excluirá completamente el uso de cifrados RC4. También se puede hacer lo mismo con los cifrados AES y 3DES.
3. Activando HSTS
Los mecanismos habilitados de obligar el cifrado de la conexión y la recuperación de la sesión TLS también son condiciones obligatorias para obtener la mejor puntuación en la prueba de Qualys SSL Labs. Para habilitarlos, es necesario ingresar el comando zmprov mcf +zimbraResponseHeader "Strict-Transport-Security: max-age=31536000". Este comando añadirá el encabezado necesario a la configuración, y para que las nuevas configuraciones surtan efecto, será necesario reiniciar Zimbra OSE con el comando zmcontrol restart.
Ya en esta etapa, la prueba de Qualys SSL Labs mostrará una calificación de A+, sin embargo, si desea mejorar aún más la seguridad de su servidor, se pueden tomar algunas medidas adicionales.

Por ejemplo, se puede habilitar el cifrado obligatorio de las conexiones entre procesos, así como habilitar el cifrado obligatorio al conectarse a los servicios de Zimbra OSE. Para verificar las conexiones entre procesos, debe ingresar los siguientes comandos:
zmlocalconfig -e ldap_starttls_supported=1
zmlocalconfig -e zimbra_require_interprocess_security=1
zmlocalconfig -e ldap_starttls_required=truePara habilitar el cifrado obligatorio, debe ingresar:
zmprov gs `zmhostname` zimbraReverseProxyMailMode
zmprov ms `zmhostname` zimbraReverseProxyMailMode https
zmprov gs `zmhostname` zimbraMailMode
zmprov ms `zmhostname` zimbraMailMode https
zmprov gs `zmhostname` zimbraReverseProxySSLToUpstreamEnabled
zmprov ms `zmhostname` zimbraReverseProxySSLToUpstreamEnabled TRUEGracias a estos comandos, se cifrarán todas las conexiones con los servidores proxy-servidores y de correo, y se realizará el proxy de todas estas conexiones.

De este modo, siguiendo nuestras recomendaciones, no solo se puede lograr la máxima calificación en la prueba de seguridad de la conexión SSL, sino también aumentar significativamente la seguridad del funcionamiento de toda la infraestructura de Zimbra OSE.
Para cualquier pregunta relacionada con Zextras Suite, puede ponerse en contacto con la representante de la empresa "Zextras" Ekaterina Triandafiliidi al correo electrónico katerina@zextras.com
Fuente: habr.com
