TUTORIAL - ZIMBRA 8 NO UBUNTU SERVER 14.04
Autor: Irineu Teza Nunes | Publicado: 2016-06-06T14:11:00-03:00


PALAVRA DO AUTOR

Três anos se passaram desde que escrevi a série de 4 tutoriais explicando na época os detalhes de como instalar o Zimbra em um sistema Debian.&nbsp;

Devido ao grande sucesso, venho atualizar os tutoriais anteriores, com novas informações, no entanto, agora instalando o Zimbra no Ubuntu 14.04, sistema operacional que possui versão homologada pelo fabricante o qual irá facilitar muito a configuração.





TUTORIAL 1 - PRÉ-REQUISITOS E CONFIGURAÇÃO DO SERVIÇO DE DNS


Esse é a primeira parte de uma série de quatro tutoriais que possui como
 objetivo demonstrar a instalação do mais recente servidor de e-mail 
Zimbra, a configuração de um backup, e como bônus, a instalação de um 
chat integrado com o serviço de e-mail.



1 INTRODUÇÃO





Zimbra Collaboration Server é um servidor de e-mail Opensource, que 
integra diversos recursos como por exemplo: agenda, organizador de 
tarefas e porta arquivos. Através de extensões uma infinidade de outras 
funcionalidades podem ser implantadas. 
Funciona com clientes de e-mails com Thunderbird, Outlook, Evolution, além de possuir um cliente próprio o Zimbra Desktop.
Possui como concorrentes soluções como o Exchange da Microsoft e o GroupWise da Novel.&nbsp;
Nesse primeiro tutorial iremos preparar o sistema operacional para receber o Zimbra e
 realizar a configuração do serviço de DNS.



2 REQUISITOS DO SERVIDOR DE E-MAIL&nbsp;

2.1 HARDWARE


Para uma instalação de um servidor de teste é recomendado:


Processador Intel ou AMD, 32 ou 64 bits com clock de 1.5 GHz;
Memória de 4 GB;
Espaço livre em disco de 5 GB para instalação e logs;
Espaço livre em disco para armazenamento das mensagens.


Para uma instalação de um servidor para produção, é recomendado:


Processador mínimo Intel ou AMD com clock 2.0 GHZ e de 64 bits;
Memória de 8 GB;
Espaço livre em disco de 10GB para instalação e logs;
Espaço livre em disco para armazenamento das mensagens.


2.2 DOMÍNIO E IP





Um servidor DNS é pré-requisito para a instalação do Zimbra, ele pode 
estar no mesmo servidor ou em servidor(es) separados. Para nosso 
tutorial o servidor que irá hospedar o Zimbra é o mesmo que hospeda o 
servidor de DNS. O servidor de DNS é o responsável por resolver o nome 
do domínio em um ip. 

Todo o domínio precisa ser registrado para poder ser acessível via 
internet. No Brasil o responsável pelo registro é o Registro.br. Após o 
registro, é preciso configurar no ambiente do registro.br o endereço do 
servidor DNS que irá responder pelo seu domínio. Para tanto seu servidor
 deve possuir um número de ip válido na internet. Na verdade o 
registro.br exige pelo menos dois servidores DNS que respondam pelo seu 
domínio. Tal procedimento é adotado para garantir a redundância de forma
 que se um servidor ficar indisponível, o secundário pode responder em 
seu lugar. Nem sempre é possível dispor de 2 servidores em um ambiente 
de testes, dessa forma é possível configurar um único servidor DNS para 
trabalhar como primário e secundário ao mesmo tempo. Com tal atitude 
você perde a redundância, mas para um ambiente de teste e estudo é 
perfeitamente válido.



Atualização: É possível instalar o Zimbra sem configurar um servidor DNS e utilizar o registro.br para adicionar as entradas DNS necessárias. Apesar de funcionar, a configuração das entradas no registro.br são limitadas, e encontraremos problemas ao tentar implementarmos algumas entradas. Uma dificuldade que enfrentei por exemplo, foi não conseguir adicionar uma entrada DKIM devido ao uso restrito do entre aspas.

Observação: Estarei escrevendo futuramente um tutorial explicando com detalhes do que se trata o DKIM e como utilizá-lo com Zimbra. 


2.3 INSTALANDO E CONFIGURANDO O SERVIDOR DNS



Para o nosso tutorial o servidor irá responder pelo domínio teste.com.br
 e terá como ip o 192.168.0.1 e o 192.168.0.2. Como você pode observar 
são ips de LAN, que não são válidos para a internet, no entanto,
 para uma configuração real basta alterá-los.

a) Execute a instalação do seguinte pacote:

#apt-get install bind9

b) Editar arquivo /etc/hosts e adicionar as seguintes linhas:
192.168.0.1 ns1.teste.com.br ns1192.168.0.2 ns2.teste.com.br ns2

O ns1 e ns2 são os nomes de nossos dois servidores DNS que pertencem ao domínio teste.com.br


c) Mudar o nome da máquina para ns1:

#hostname ns1#echo ns1 &gt; /etc/hostname

d) Editar o arquivo /etc/resolvconf/resolv.conf.d/head e deixar com a estrutura abaixo:

domain teste.com.brsearch teste.com.brnameserver 192.168.0.1nameserver 192.168.0.2

e) Configurar as interfaces de rede editando o arquivo /etc/network/interfaces da seguinte forma:

auto lo eth0 eth0:1iface lo inet loopbackiface eth0 inet staticaddress 192.168.0.1netmask 255.255.255.0gateway 192.168.0.254iface eth0:1 inet staticaddress 192.168.0.2netmask 255.255.255.0



Note que o ip 192.168.0.254 diz respeito ao dispositivo responsável por 
disponibilizar a internet para o servidor. Este dispositivo pode ser um 
modem adsl, por exemplo.

f) Reiniciar a interface de rede.

# ifdown eth0 &amp;&amp; ifup eth0 &amp;&amp; ifup eth0:1

2.3.1 Configurar o serviço de DNS

a) Adicionar no arquivo /etc/bind/named.conf.local as seguintes linhas:
Dica: 
Procure digitar e não copiar essa configuração, o Bind é sensível a 
formatações inseridas por alguns editores ao copiar e colar.

zone "teste.com.br"{type master;file "/etc/bind/db.teste.com";allow-transfer { 192.168.0.2; };};b) Criar o arquivo /etc/bind/db.teste.com com o conteúdo abaixo:$TTL&nbsp;&nbsp;&nbsp; 604800@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; SOA&nbsp;&nbsp;&nbsp; ns1.teste.com.br. irineu.teste.com.br. (2016060615 &nbsp;&nbsp; ; Serial604800&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ; Refresh86400&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; ; Retry2419200&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; ; Expire604800 )&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ; Negative Cache TTL@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns1.teste.com.br.@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp; 192.168.0.1@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns2.teste.com.br.@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; MX&nbsp;&nbsp;&nbsp; 10&nbsp;&nbsp;&nbsp; ns1.teste.com.br.@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp; 192.168.0.1
ns1 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 192.168.0.1
webmail&nbsp;&nbsp;&nbsp; CNAME&nbsp; ns1
pop &nbsp; &nbsp; &nbsp;&nbsp; CNAME&nbsp; ns1
smtp &nbsp; &nbsp; &nbsp; CNAME&nbsp; ns1
imap &nbsp; &nbsp; &nbsp; CNAME&nbsp; ns1&nbsp; &nbsp; ns2&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 192.168.0.2

c) Testes sua configuração do DNS:

#named-checkzone teste.com.br /etc/bind/db.teste.com

Resultado esperado do comando:
zone teste.com.br/IN: loaded serial 3734755897OK


#/etc/init.d/bind9 restart

#nslookup ns1

Resultado esperado do comando:
Server: 192.168.0.1Address: 192.168.0.1#53Name: ns1.teste.com.brAddress: 192.168.0.1


#nslookup ns2
Server: 192.168.0.1Address: 192.168.0.1#53Name: ns2.teste.com.brAddress: 192.168.0.2

2.3.2 DNS Reverso


Apenas com a configuração do servidor de DNS que executamos até agora já
 é possível fazer a instalação do Zimbra. No entanto, para uso em 
produção é necessário ainda no mínimo a configuração do DNS Reverso. O DNS Reverso
 é uma das formas que um servidor utiliza para saber se a mensagem 
enviada do endereço de IP de seu servidor de e-mail responde ao domínio 
encontrado no cabeçalho. Vejamos com o exemplo de configuração.


a) Adicionar no arquivo /etc/bind/named.conf.local as seguintes linhas:

zone "0.168.192.in-addr.arpa" {type master;file "/etc/bind/db.teste.com-rev";}; 

b) Criar o arquivo /etc/bind/db.teste.com-rev

$TTL&nbsp;&nbsp;&nbsp; 604800@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; SOA&nbsp;&nbsp;&nbsp; ns1.teste.com.br. irineu.teste.com.br. (2016060615&nbsp;&nbsp;&nbsp; ; Serial604800&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ; Refresh86400&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ; Retry2419200&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; ; Expire604800 )&nbsp;&nbsp;&nbsp; ; Negative Cache TTL@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns1.teste.com.br.1&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; PTR&nbsp;&nbsp; ns1.teste.com.br.@&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns2.teste.com.br.2&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; PTR&nbsp;&nbsp; ns2.teste.com.br.


h) Testes sua configuração do DNS Reverso:

#named-checkzone 0.168.192.in-addr.arpa /etc/bind/db.teste.com-rev 

Resultado esperado:
zone 0.168.192.in-addr.arpa/IN: loaded serial 2016060615OK

#/etc/init.d/bind9 restart

#dig teste.com.br

Resultado esperado:
;; QUESTION SECTION:;teste.com.br.&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A;; ANSWER SECTION:teste.com.br.&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 604800&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp; 192.168.0.1;; AUTHORITY SECTION:teste.com.br.&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 604800&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns1.teste.com.br.teste.com.br.&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 604800&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; NS&nbsp;&nbsp;&nbsp; ns2.teste.com.br.;; ADDITIONAL SECTION:ns1.teste.com.br.&nbsp;&nbsp;&nbsp; 604800&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp; 192.168.0.1ns2.teste.com.br.&nbsp;&nbsp;&nbsp; 604800&nbsp;&nbsp;&nbsp; IN&nbsp;&nbsp;&nbsp; A&nbsp;&nbsp;&nbsp; 192.168.0.2

#dig -x 192.168.0.1


Resultado esperado:

;; QUESTION SECTION:;1.0.168.192.in-addr.arpa.&nbsp;&nbsp; &nbsp;IN&nbsp;&nbsp; &nbsp;PTR;; ANSWER SECTION:1.0.168.192.in-addr.arpa. 604800 IN&nbsp;&nbsp; &nbsp;PTR&nbsp;&nbsp; &nbsp;ns1.teste.com.br.;; AUTHORITY SECTION:0.168.192.in-addr.arpa.&nbsp;&nbsp; &nbsp;604800&nbsp;&nbsp; &nbsp;IN&nbsp;&nbsp; &nbsp;NS&nbsp;&nbsp; &nbsp;ns1.teste.com.br.;; ADDITIONAL SECTION:ns1.teste.com.br.&nbsp;&nbsp; &nbsp;604800&nbsp;&nbsp; &nbsp;IN&nbsp;&nbsp; &nbsp;A&nbsp;&nbsp; &nbsp;192.168.0.1

2.4 DEPÊNDENCIAS


O zimbra exige a instalação de alguns pacotes que podem ser instalados com o comando abaixo: 

#apt-get install sysstat sqlite3 libperl5.18 libgmp10 libaio1 pax



3 CONCLUSÃO

Neste ponto chegamos ao ambiente do sistema operacional pronto para 
receber o serviço de e-mail Zimbra. A instalação e configuração é parte 
do tutorial 2.



REFERÊNCIAS

TUTORIAL, Zimbra 8 no Debian 6 Squeeze. Disponível em: &lt;http://itnproducoes.blogspot.com.br/2013/04/tutorial-zimbra-8-no-debian-6-squeeze.html&gt;