Come configurare correttamente SNI in Zimbra OSE?

All’inizio del 21° secolo una risorsa come gli indirizzi IPv4 è sull’orlo dell’esaurimento. Nel 2011, la IANA ha assegnato gli ultimi cinque blocchi /8 rimanenti del suo spazio di indirizzi ai registrar Internet regionali, e già nel 2017 avevano esaurito gli indirizzi. La risposta alla catastrofica carenza di indirizzi IPv4 non è stata solo l’emergere del protocollo IPv6, ma anche della tecnologia SNI, che ha reso possibile ospitare un numero enorme di siti web su un unico indirizzo IPv4. L'essenza di SNI è che questa estensione consente ai client, durante il processo di handshake, di comunicare al server il nome del sito al quale desidera connettersi. Ciò consente al server di archiviare più certificati, il che significa che più domini possono operare su un indirizzo IP. La tecnologia SNI è diventata particolarmente popolare tra i fornitori SaaS aziendali, che hanno la possibilità di ospitare un numero quasi illimitato di domini indipendentemente dal numero di indirizzi IPv4 necessari a questo scopo. Scopriamo come implementare il supporto SNI in Zimbra Collaboration Suite Open-Source Edition.

Come configurare correttamente SNI in Zimbra OSE?

SNI funziona con tutte le versioni attuali e supportate di Zimbra OSE. Se hai Zimbra Open-Source in esecuzione su un'infrastruttura multi-server, dovrai eseguire tutti i passaggi seguenti su un nodo con il server proxy Zimbra installato. Inoltre, avrai bisogno di coppie certificato+chiave corrispondenti, nonché di catene di certificati attendibili della tua CA per ciascuno dei domini che desideri ospitare sul tuo indirizzo IPv4. Tieni presente che la causa della stragrande maggioranza degli errori durante la configurazione di SNI in Zimbra OSE sono proprio i file errati con certificati. Pertanto vi consigliamo di controllare attentamente il tutto prima di installarli direttamente.

Prima di tutto, affinché SNI funzioni normalmente, è necessario inserire il comando zmprov mcf zimbraReverseProxySNIEnabled TRUE sul nodo proxy Zimbra, quindi riavviare il servizio Proxy utilizzando il comando riavvio zmproxyctl.

Inizieremo creando un nome di dominio. Ad esempio, prenderemo il dominio company.ru e, una volta creato il dominio, decideremo il nome dell'host virtuale e l'indirizzo IP virtuale di Zimbra. Tieni presente che il nome dell'host virtuale Zimbra deve corrispondere al nome che l'utente deve inserire nel browser per accedere al dominio e corrispondere anche al nome specificato nel certificato. Ad esempio, prendiamo Zimbra come nome host virtuale mail.company.rue come indirizzo IPv4 virtuale utilizziamo l'indirizzo 1.2.3.4.

Successivamente, basta inserire il comando zmprov md company.ru zimbraVirtualHostName mail.company.ru zimbraVirtualIPAddress 1.2.3.4per associare l'host virtuale Zimbra a un indirizzo IP virtuale. Tieni presente che se il server si trova dietro un NAT o un firewall, devi assicurarti che tutte le richieste al dominio arrivino all'indirizzo IP esterno ad esso associato e non al suo indirizzo sulla rete locale.

Una volta terminato tutto, non resta che controllare e preparare i certificati di dominio per l'installazione, quindi installarli.

Se l'emissione di un certificato di dominio è stata completata correttamente, dovresti avere tre file con certificati: due di questi sono catene di certificati della tua autorità di certificazione e uno è un certificato diretto per il dominio. Inoltre, è necessario disporre di un file con la chiave utilizzata per ottenere il certificato. Crea una cartella separata /tmp/company.ru e posizionare lì tutti i file disponibili con chiavi e certificati. Il risultato finale dovrebbe essere qualcosa del genere:

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

Successivamente, combineremo le catene di certificati in un unico file utilizzando il comando cat azienda.ru.root.crt azienda.ru.intermediate.crt >> azienda.ru_ca.crt e assicurati che tutto sia in ordine con i certificati utilizzando il 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. Una volta completata con successo la verifica dei certificati e della chiave, è possibile iniziare a installarli.

Per iniziare l'installazione, uniremo innanzitutto il certificato del dominio e le catene di fiducia delle autorità di certificazione in un unico file. Questo può essere fatto anche usando un comando come cat company.ru.crt company.ru_ca.crt >> company.ru.bundle. Successivamente, è necessario eseguire il comando per scrivere tutti i certificati e la chiave su LDAP: /opt/zimbra/libexec/zmdomaincertmgr savecrt company.ru company.ru.bundle company.ru.keye quindi installare i certificati utilizzando il comando /opt/zimbra/libexec/zmdomaincertmgr deploycrts. Dopo l'installazione, i certificati e la chiave del dominio company.ru verranno archiviati nella cartella /opt/zimbra/conf/domaincerts/company.ru

Ripetendo questi passaggi utilizzando nomi di dominio diversi ma lo stesso indirizzo IP, è possibile ospitare diverse centinaia di domini su un singolo indirizzo IPv4. In questo caso è possibile utilizzare senza problemi i certificati di diversi centri emittenti. Puoi verificare la correttezza di tutte le azioni eseguite in qualsiasi browser, dove ciascun nome host virtuale dovrebbe visualizzare il proprio certificato SSL. 

Per tutte le domande relative a Zextras Suite, è possibile contattare il rappresentante di Zextras Ekaterina Triandafilidi via e-mail [email protected]

Fonte: habr.com

Aggiungi un commento