A principios del siglo XXI, un recurso como las direcciones IPv4 está al borde del agotamiento. En 2011, IANA asignó los últimos cinco bloques / 8 restantes de su espacio de direcciones a los registradores regionales de Internet, y ya en 2017 terminaron sus direcciones. La respuesta a la catastrófica escasez de direcciones IPv4 no fue solo el advenimiento de IPv6, sino también la tecnología SNI, que permitió alojar una gran cantidad de sitios web en una dirección IPv4. La esencia de SNI es que esta extensión permite a los clientes decirle al servidor el nombre del sitio con el que desean conectarse durante un apretón de manos. Esto permite que el servidor almacene múltiples certificados, lo que significa que múltiples dominios pueden operar en la misma dirección IP. La tecnología SNI se hizo especialmente popular entre los proveedores de SaaS para empresas, que pudieron alojar una cantidad casi ilimitada de dominios sin tener en cuenta la cantidad de direcciones IPv4 necesarias para esto. Veamos cómo puede implementar el soporte SNI en Zimbra Collaboration Suite Open-Source Edition.

SNI funciona en todas las versiones actuales y compatibles de Zimbra OSE. En el caso de que su Zimbra Open-Source se ejecute en una infraestructura multiservidor, deberá realizar todas las siguientes acciones en el nodo con el servidor Zimbra Proxy instalado. Además, necesitará pares de certificado + clave coincidentes, así como cadenas de certificados confiables de su autoridad de certificación para cada uno de los dominios que desea colocar en su dirección IPv4. Tenga en cuenta que la razón de la gran mayoría de los errores al configurar SNI en Zimbra OSE es precisamente en los archivos de certificado incorrectos. Por lo tanto, le recomendamos que verifique cuidadosamente todo antes de instalarlos directamente.
En primer lugar, para que SNI funcione normalmente, debe ingresar el comando
zmprov mcf zimbraReverseProxySNIEnabled TRUE en el nodo con el servidor proxy Zimbra, y luego reiniciar el servicio Proxy usando el comando
zmproxyctl restart .
Comenzaremos creando un nombre de dominio. Por ejemplo, tomamos el dominio
company.ru y, después de que el dominio ya se haya creado, determinaremos el nombre del host virtual de Zimbra y la dirección IP virtual. Llamamos la atención sobre el hecho de que el nombre del host virtual de Zimbra debe corresponder con el nombre que el usuario debe ingresar en la línea del navegador para obtener acceso al dominio, y también debe coincidir con el nombre indicado en el certificado. Como ejemplo, tome Zimbra
mail.company.ru como el nombre de host virtual y use
1.2.3.4 como la dirección IPv4 virtual.
Después de eso, simplemente ingrese el comando
zmprov md company.ru zimbraVirtualHostName mail.company.ru zimbraVirtualIPAddress 1.2.3.4 para vincular el host virtual de Zimbra a la dirección IP virtual. Llamamos su atención sobre el hecho de que si el servidor está ubicado detrás de un NAT o firewall, se debe tener cuidado de que todas las solicitudes al dominio vayan a la dirección IP externa vinculada a él, y no a su dirección en la red local.
Una vez hecho todo, solo queda verificar y preparar los certificados de dominio para la instalación y luego instalarlos.
Si el certificado para el dominio se emitió correctamente, debe tener tres archivos con certificados a la mano: dos de ellos son cadenas de certificados de su autoridad de certificación y uno es un certificado directo al dominio. Además, en sus manos debe tener un archivo con la clave que utilizó para obtener el certificado. Cree una carpeta separada
/tmp/company.ru y coloque allí todos los archivos disponibles con claves y certificados. El resultado debería ser algo como esto:
ls /tmp/company.ru company.ru.key company.ru.crt company.ru.root.crt company.ru.intermediate.crt
Después de eso, combine las cadenas de certificados en un archivo usando el comando
cat company.ru.root.crt company.ru.intermediate.crt >> company.ru_ca.crt y asegúrese de que todo esté bien con los certificados usando el comando
/ opt / zimbra / bin / zmcertmgr verificadocrt comm /tmp/company.ru/company.ru.key /tmp/company.ru/company.ru.crt /tmp/company.ru/company.ru_ca.crt . Después de que la verificación de los certificados y la clave sean exitosas, puede continuar con su instalación.
Para comenzar la instalación, primero combinaremos el certificado de dominio y las cadenas de confianza de las autoridades de certificación en un solo archivo. También se hace usando un comando del formulario
cat company.ru.crt company.ru_ca.crt >> company.ru.bundle . Después de eso, debe ejecutar el comando para escribir todos los certificados y la clave en LDAP:
/ opt / zimbra / libexec / zmdomaincertmgr savecrt company.ru company.ru.bundle company.ru.key , y luego instalar los certificados usando el comando
/ opt / zimbra / libexec / zmdomaincertmgr deploycrts . Después de la instalación, los certificados y la clave del dominio company.ru se almacenarán en la carpeta
/opt/zimbra/conf/domaincerts/company.ru .
Al repetir estos pasos utilizando diferentes nombres de dominio, pero con la misma dirección IP, puede lograr la ubicación de varios cientos de dominios en la misma dirección IPv4. Al mismo tiempo, puede usar certificados de varios centros de su emisión sin ningún problema. Puede verificar la exactitud de todas las acciones realizadas en cualquier navegador, donde para cada nombre de host virtual se debe mostrar su certificado SSL.
Para todas las preguntas relacionadas con la Suite Zextras, puede contactar al representante de Zextras, Ekaterina Triandafilidi, por correo electrónico katerina@zextras.com