Como configurar corretamente o SNI no Zimbra OSE?

No início do século 21, um recurso como os endereços IPv4 está à beira do esgotamento. Em 2011, a IANA alocou os últimos cinco blocos /8 restantes do seu espaço de endereços para registradores regionais da Internet, e já em 2017 eles ficaram sem endereços. A resposta à catastrófica escassez de endereços IPv4 não foi apenas o surgimento do protocolo IPv6, mas também a tecnologia SNI, que tornou possível hospedar um grande número de sites num único endereço IPv4. A essência do SNI é que esta extensão permite que os clientes, durante o processo de handshake, informem ao servidor o nome do site ao qual desejam se conectar. Isso permite que o servidor armazene vários certificados, o que significa que vários domínios podem operar em um endereço IP. A tecnologia SNI tornou-se especialmente popular entre os provedores empresariais de SaaS, que têm a oportunidade de hospedar um número quase ilimitado de domínios, independentemente do número de endereços IPv4 necessários para isso. Vamos descobrir como você pode implementar o suporte SNI no Zimbra Collaboration Suite Open-Source Edition.

Como configurar corretamente o SNI no Zimbra OSE?

SNI funciona em todas as versões atuais e suportadas do Zimbra OSE. Se você tiver o Zimbra Open-Source rodando em uma infraestrutura multi-servidor, você precisará executar todas as etapas abaixo em um nó com o servidor Zimbra Proxy instalado. Além disso, você precisará de pares de certificado+chave correspondentes, bem como cadeias de certificados confiáveis ​​de sua CA para cada um dos domínios que deseja hospedar em seu endereço IPv4. Observe que a causa da grande maioria dos erros ao configurar o SNI no Zimbra OSE são precisamente arquivos incorretos com certificados. Portanto, aconselhamos que você verifique tudo cuidadosamente antes de instalá-los diretamente.

Em primeiro lugar, para que o SNI funcione normalmente, é necessário digitar o comando zmprov mcf zimbraReverseProxySNIEnabled TRUE no nó proxy Zimbra e reinicie o serviço Proxy usando o comando reinicialização do zmproxyctl.

Começaremos criando um nome de domínio. Por exemplo, pegaremos o domínio empresa.ru e, após a criação do domínio, decidiremos o nome do host virtual e o endereço IP virtual do Zimbra. Observe que o nome do host virtual Zimbra deve corresponder ao nome que o usuário deve inserir no navegador para acessar o domínio e também ao nome especificado no certificado. Por exemplo, vamos usar Zimbra como o nome do host virtual mail.empresa.ru, e como endereço IPv4 virtual usamos o endereço 1.2.3.4.

Depois disso, basta digitar o comando zmprov md empresa.ru zimbraVirtualHostName mail.company.ru zimbraVirtualIPAddress 1.2.3.4para vincular o host virtual Zimbra a um endereço IP virtual. Observe que se o servidor estiver localizado atrás de um NAT ou firewall, você deve garantir que todas as solicitações ao domínio vão para o endereço IP externo associado a ele, e não para seu endereço na rede local.

Depois de tudo feito, resta verificar e preparar os certificados de domínio para instalação e, em seguida, instalá-los.

Se a emissão de um certificado de domínio foi concluída corretamente, você deverá ter três arquivos com certificados: dois deles são cadeias de certificados da sua autoridade certificadora e um é um certificado direto para o domínio. Além disso, você deve ter um arquivo com a chave usada para obter o certificado. Crie uma pasta separada /tmp/company.ru e coloque todos os arquivos disponíveis com chaves e certificados lá. O resultado final deve ser algo assim:

ls /tmp/company.ru
company.ru.key
 company.ru.crt
 company.ru.root.crt
 company.ru.intermediate.crt

Depois disso, combinaremos as cadeias de certificados em um arquivo usando o comando gato empresa.ru.root.crt empresa.ru.intermediate.crt >> empresa.ru_ca.crt e certifique-se de que tudo está em ordem com os certificados usando o comando /opt/zimbra/bin/zmcertmgr verifycrt comm /tmp/company.ru/company.ru.key /tmp/company.ru/company.ru.crt /tmp/company.ru/company.ru_ca.crt. Depois que a verificação dos certificados e da chave for bem-sucedida, você poderá começar a instalá-los.

Para iniciar a instalação, primeiro combinaremos o certificado de domínio e as cadeias confiáveis ​​das autoridades de certificação em um arquivo. Isso também pode ser feito usando um comando como gato empresa.ru.crt empresa.ru_ca.crt >> empresa.ru.bundle. Depois disso, você precisa executar o comando para gravar todos os certificados e a chave no LDAP: /opt/zimbra/libexec/zmdomaincertmgr savecrt company.ru company.ru.bundle company.ru.keye instale os certificados usando o comando /opt/zimbra/libexec/zmdomaincertmgr implantar crts. Após a instalação, os certificados e a chave do domínio company.ru serão armazenados na pasta /opt/zimbra/conf/domaincerts/company.ru

Ao repetir essas etapas usando nomes de domínio diferentes, mas com o mesmo endereço IP, é possível hospedar várias centenas de domínios em um único endereço IPv4. Nesse caso, você pode usar certificados de vários centros emissores sem problemas. Você pode verificar a exatidão de todas as ações realizadas em qualquer navegador, onde cada nome de host virtual deve exibir seu próprio certificado SSL. 

Para todas as perguntas relacionadas ao Zextras Suite, você pode entrar em contato com o representante da Zextras Ekaterina Triandafilidi por e-mail [email protegido]

Fonte: habr.com

Adicionar um comentário