Utilizei a Distribuição Ubuntu 8.04.2 Server (www.ubuntu.com), pois esta é a última distro LTS, suite de email ZIMBRA, e o painel de gerenciamento KyaPanel, uma ótima integração de ferramentas para um ambiente de email totalmente opensource.
Primeiramente esteja com o seu server atualizado, confira se em teu arquivo /etc/hosts o nome da máquina esteja com o nome de domínio incluído exemplo: mail.meudominio.com.br e que seu DNS esteja devidamente configurado para que está máquina seja o servidor de email (esta abordagem não faz parte do escopo deste artigo), baixe o pacote zimbra para ubuntu 8.04:
http://h.yimg.com/lo/downloads/5.0.16_GA/zcs-5.0.16_GA_2921.UBUNTU8.20090429045342.tgz
descompacte o arquivo: tar xvfs zcs-5.0.16_GA_2921.UBUNTU8.20090429045342.tgz próximo passo é instalar as dependências para instalação do zimbra:
sudo apt-get install libpcre3-dev libgmp3c2 libstdc++5-3.3-dev libltdl3-dev
Caso tenha alguma outra procure o nome da biblioteca que esta em falta e prossiga com a instalação.
Entre na pasta aonde foi descompactado os arquivos do zimbra e rode o script sudo ./install.sh ao rodar vai aparecer algo parecido a:
Operations logged to /tmp/install.log.8829
Checking for existing installation...
zimbra-ldap...NOT FOUND
zimbra-logger...NOT FOUND
zimbra-mta...NOT FOUND
zimbra-snmp...NOT FOUND
zimbra-store...NOT FOUND
zimbra-apache...NOT FOUND
zimbra-spell...NOT FOUND
zimbra-proxy...NOT FOUND
zimbra-archiving...NOT FOUND
zimbra-convertd...NOT FOUND
zimbra-cluster...NOT FOUND
zimbra-core...NOT FOUND
PLEASE READ THIS AGREEMENT CAREFULLY BEFORE USING THE SOFTWARE.
ZIMBRA, INC. ("ZIMBRA") WILL ONLY LICENSE THIS SOFTWARE TO YOU IF YOU
FIRST ACCEPT THE TERMS OF THIS AGREEMENT. BY DOWNLOADING OR INSTALLING
THE SOFTWARE, OR USING THE PRODUCT, YOU ARE CONSENTING TO BE BOUND BY
THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS OF THIS
AGREEMENT, THEN DO NOT DOWNLOAD, INSTALL OR USE THE PRODUCT.
License Terms for the Zimbra Collaboration Suite:
http://www.zimbra.com/license/zimbra_public_eula_2.1.html
Press Return to continue
Pressione ENTER para aceitar, iremos instalar: zimbra-core , zimbra-ldap , zimbra-logger , zimbra-mta , zimbra-snmp , zimbra-store , zimbra-apache , zimbra-spell , por padrão todos estes pacotes estarão marcados como Yes para instalação, ficando de fora o zimbra-proxy que está marcado como No.
Próximo prompt será: The system will be modified. Continue? [N] , coloque Y e de ENTER para prosseguir a instalação (este processo é um pouco demorado dependendo das configurações do seu server), neste próximo passa é relativo as configurações de DNS do seu servidor, se tudo estiver configurado de forma correta em seu DNS vocẽ não encontrará problemas nesta parte, caso apareça a mensagem: DNS ERROR resolving MX for mail.meudominio.com.br
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes]
Pressione ENTER e digite o seu domínio para que o instalador possa verificar as configurações que estão no seu DNS, então digite meudominio.com.br, caso acuse algum erro você pode continuar os procedimentos de instalação e voltando depois para configurar o DNS de forma adequada. Digitando No e ENTER.
Este passo agora é muito importante pois iremos definir a senha de admin, que o administrador do sistema zimbra, selecione a opção 3 em seguida 4, digite a nova senha de admin (cuidado pois os caracteres ficam visíveis), pressione r para voltar para o menu anterior, pressione a para aplicar as configurações.
Save configuration data to a file? [Yes] dê ENTER
Save config in file: [/opt/zimbra/config.12764] ENTER
The system will be modified - continue? [No] Yes e ENTER
Notify Zimbra of your installation? [Yes] No e ENTER
Moving /tmp/zmsetup.05252009-131654.log to /opt/zimbra/log
Configuration complete - press return to exit
Pressione ENTER
Agora você já está com a suite Zimbra instalada, configurada e rodando, agora seguiremos com a instalação do KyaPanel baixe o arquivo em :
http://www.kyapanel.com/images/stories/projetos/dl.php?f=kyapanel_2.2~1_all.deb
antes de prosseguir com a instalação do KyaPanel sugiro que pare o serviço do Zimbra para que não conflitem com as dependências que serão necessárias para instalação.
/etc/init.d/zimbra stop (aguarde pois são vários serviços que estão incluídos portanto demora um pouco).
Agora instale o pacote do KyaPanel com o comando:
sudo dpkg -i kyapanel_2.2~1_all.deb
certo ele vai reclamar que tem várias dependências, não tem nenhum problema, para isto temos o comando:
sudo apt-get -f install
isto fará com que seja instalada todas as dependências e em seguida a instalação do KyaPanel.
Pronto KyaPanel instalado, agora vamos partir para a configuração openldap. Vocẽ pode perguntar openldap???? Sim, o KyaPanel instala o openldap como dependência, mas iremos utilizá-lo para a configuração inicial, mais no final iremos remover do serviço para não iniciar, pois o Zimbra já possui o openldap integrado.
Quando o debconf lhe fizer perguntas, responda todas default's apertando só ENTER, pois está configurações não nos interessam no momento.
Copie os arquivos de /usr/share/kyapanel/ldap/schema/*.schema para a pasta /etc/ldap/schema/
sudo cp /usr/share/kyapanel/ldap/schema/* /etc/ldap/schema/
Pare o openldap: /etc/init.d/slapd stop
Certo vamos agora editar o arquivo /etc/ldap/slapd.conf , utilize o editor de sua preferência no meu caso vou usar o Vim.
sudo vim /etc/ldap/slapd.conf
Descomente a linha #allow bind_v2 , na parte do esquemas inclua os esquemas necessários para o KyaPanel. Insira abaixo do último include:
include /etc/ldap/schema/misc.schema
include /etc/ldap/schema/qmailuser.schema
include /etc/ldap/schema/phpgwaccount.schema
include /etc/ldap/schema/phpgwcontact.schema
include /etc/ldap/schema/samba.schema
Observer logo mais abaixo no arquivo que tem a opção:
suffix “dc=medominio,dc=com,dc=br”
logo mais abaixo tem a opção rootdn que está comentanda, descomente e insira na linha logo abaixo:
rootpw 123
salve e feche o arquivo.
Agora vamos para configuração do KyaPanel via interface Web, digite no navegador http://ip_do_servidor/kyainstall/
Na aba general defina a senha para o usuário kya, que é o administrador do painel, clique na aba ldap e insira o ip do servidor, no nosso caso 127.0.0.1, e a senha logo mais abaixo que é: 123, clique em Status Test, em seguida clique em Install, logo após irá aparecer a tela de Login, coloque o usuário: kya e a senha que vocẽ definiu anteriormente. Na próxima tela clique em Global Configurations, Enable/Disable Module, marque na linha Mail Module a opção local e pressione o botão change que fica logo acima.
Próximo passo agora é fazer a integração do KyaPanel com o Zimbra (aqui foi aonde mais sofri).
Agora vamos para parar e remover os serviços instalados com o KyaPanel que conflitam com o Zimbra, primeiro pare os serviços:
cd /etc/init.d/; ./postfix stop; ./courier-authdaemon stop; ./courier-imap stop; ./courier-ldap stop; ./courier-pop stop; ./slapd stop;
Agora removeremos da inicialização os mesmos:
cd /etc/init.d/
update-rc.d -f postfix remove
update-rc.d -f courier-authdaemon remove
update-rc.d -f courier-imap remove
update-rc.d -f courier-ldap remove
update-rc.d -f courier-pop remove
update-rc.d -f slapd remove
Vamos agora fazer a integração:
cd /usr/share/kyapanel/mail/zimbra/
./kp2z.sh
Pressione ENTER quando solicitado e aguarde.
Precisamos mudar a porta do apache2 pois conflita com o Zimbra, edite:
sudo vim /etc/apache2/ports.conf e coloque em Listen por exemplo porta 8080. Reinicie o apache:
sudo /etc/init.d/apache2 restart
Vamos iniciar o zimbra agora:
sudo /etc/init.d/zimbra start (aguarde pois demora mesmo)
Sincronizar domínios e usuários do KyaPanel com Zimbra e vice versa com o comando:
./kp2z_users.sh -a
dê ENTER para confirmar o caminho do Zimbra e aguarde.
Configuração do Postfix com KyaPanel:
entre em /opt/zimbra/postfix/conf/
mv main.cf main.cf.old
Crie um novo arquivo main.cf com o conteúdo abaixo (lembrando de substituir meudominio.com.br, pelo seu domínio, e a senha do Ldap pela sua, que você vai encontrar no Kyapanel dentro de Global Configurations, Ldap):
# KyaPanel main.cf
smtpd_banner = $myhostname ESMTP $mail_name
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
readme_directory = no
# TLS parameters
smtpd_tls_cert_file = /opt/zimbra/conf/smtpd.crt
smtpd_tls_key_file = /opt/zimbra/conf/smtpd.key
smtpd_tls_auth_only = yes
smtpd_tls_loglevel = 1
smtpd_use_tls = yes
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
myhostname = mail
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = mail, localhost, ldap:vdomains
relayhost =
mynetworks = 127.0.0.0/8
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
home_mailbox = Maildir/
mailbox_transport = kyapanel:
virtual_transport = kyapanel:
local_recipient_maps = ldap:accounts,ldap:vamldap
mailbox_command_maps = ldap:accounts
alias_maps = ldap:vamldap
virtual_alias_maps = ldap:vamldap
virtual_mailbox_base = /
virtual_mailbox_maps = ldap:accounts
virtual_mailbox_limit = 0
virtual_uid_maps = static:1003
virtual_gid_maps = static:1004
canonical_maps = ldap:canodoms
sender_bcc_maps = ldap:senderbcc
recipient_bcc_maps = ldap:recipientbcc
always_bcc=
#--------------------------------------------------------------
accounts_server_host = 127.0.1.1
accounts_bind_dn = cn=config
accounts_bind_pw = O_laV2U2W
accounts_search_base = ou=mail,ou=kya_panel,dc=meudominio,dc=com,dc=br
accounts_query_filter = (&(uid=%s)(mail=%s))
accounts_result_attribute = mailMessageStore
accounts_bind = yes
#--------------------------------------------------------------
vdomains_server_host = 127.0.1.1
vdomains_bind_dn = cn=config
vdomains_bind_pw = O_laV2U2W
vdomains_search_base = ou=mail,ou=kya_panel,dc=meudominio,dc=com,dc=br
vdomains_query_filter = (ou=%s)
vdomains_result_attribute = ou
vdomains_bind = yes
#--------------------------------------------------------------
vamldap_server_host = 127.0.1.1
vamldap_bind_dn = cn=config
vamldap_bind_pw = O_laV2U2W
vamldap_search_base = ou=aliases,ou=kya_panel,dc=meudominio,dc=com,dc=br
vamldap_query_filter = (&(uid=%s)(mail=%s))
vamldap_result_attribute = mailForwardingAddress
vamldap_bind = yes
#--------------------------------------------------------------
canodoms_server_host = 127.0.1.1
canodoms_bind_dn = cn=config
canodoms_bind_pw = O_laV2U2W
canodoms_search_base = ou=mail,ou=kya_panel,dc=meudominio,dc=com,dc=br
canodoms_query_filter = (ou=%d)
canodoms_result_attribute = CanonicalDomain
canodoms_bind = yes
#--------------------------------------------------------------
senderbcc_server_host = 127.0.1.1
senderbcc_bind_dn = cn=config
senderbcc_bind_pw = O_laV2U2W
senderbcc_search_base = ou=mail,ou=kya_panel,dc=meudominio,dc=com,dc=br
senderbcc_query_filter = (uid=%s)
senderbcc_result_attribute = SenderBccUser
senderbcc_bind = yes
#--------------------------------------------------------------
recipientbcc_server_host = 127.0.1.1
recipientbcc_bind_dn = cn=config
recipientbcc_bind_pw = O_laV2U2W
recipientbcc_search_base = ou=mail,ou=kya_panel,dc=meudominio,dc=com,dc=br
recipientbcc_query_filter = (uid=%s)
recipientbcc_result_attribute = RecipientBccUser
recipientbcc_bind = yes
#--------------------------------------------------------------
header_checks = regexp:/opt/zimbra/postfix/conf/header_checks
smtpd_client_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
check_client_access hash:/opt/zimbra/postfix/conf/whitelist_ip,
check_sender_access hash:/opt/zimbra/postfix/conf/whitelist_dom,
check_recipient_access hash:/opt/zimbra/postfix/conf/reverse_out,
reject_unknown_client_hostname,
reject_non_fqdn_hostname,
reject_rbl_client bl.spamcop.net,
reject_rbl_client sbl.spamhaus.org,
reject_rbl_client pbl.spamhaus.org,
reject_rbl_client list.dsbl.org,
reject_rbl_client dnsbl.njabl.org
smtpd_sender_restrictions =
reject_non_fqdn_sender,
reject_unknown_sender_domain,
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_unauth_destination
smtpd_data_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_unauth_pipelining,
reject_multi_recipient_bounce
Agora vamos criar os arquivos e setar como arquivos do postfix dentro de /opt/zimbra/postfix/conf os arquivos vazios, whitelist_dom, whitelist_ip e reverse_out:
touch whitelist_dom whitelist_ip reverse_out
/opt/zimbra/postfix/sbin/postmap whitelist_dom whitelist_ip reverse_out
Edite o arquivo header_check e insira este conteúdo no final do arquivo:
/^Subject:/ WARN
/^From:/ WARN
Edite agora o arquivo master.cf e insira este conteúdo no final do arquivo:
kyapanel unix - n n - - pipe
flags=Rq user=courier argv=/usr/share/kyapanel/mail/bin/kya-filter.sh -f ${sender} -- ${recipient}
Insira também na linha 10 este conteúdo:
-o content_filter=kyapanel:kyapanel
mais tarde iremos remover esta linha, não sei bem o motivo mais o postfix dá erro neste local, mais iremos deixar por enquanto por motivos de configurações do KyaPanel.
Para deixar o KyaPanel redondo com suas configurações iremos configurar o courier, o zimbra não se utiliza deste serviço, mais pra efeito de configurações fiz conforme o painel pede, vamos la:
Edite o arquivo: /etc/courier/authldaprc
vim /etc/courier/authldaprc
e vá ate o gerenciador do painel http://ip_do_servidor:8080/kyapanel/ , E-mail Management, General Configurations e entre em Courier Imap, complete as configurações dos arquivos authldaprc e authdaemonrc, conforme descrito em vermelho. (Da mesma forma você pode conferir se todas as informações do Postfix estão corretas também.)
Pronto agora é só ir adicionando usuários ao domínio. O KyaPanel tem várias opções de configurações para você como quota de domínio, quantidades de emails, etc.. agora é só ir destrinchando e ser feliz.
Recomendo reiniciar o servidor antes de começar a utilizar, para ver se ficou tudo certo.
Tem também o gerenciador do zimbra que você pode definir algumas opções, vale a pena dar uma olhada, pra isto digite em seu navegador: https://ip_do_servidor:7071/ usuário admin e a senha que você definiu no momento da instalação do Zimbra.
Espero ter ajudado alguém nesta árdua batalha de configuração deste servidor de email.
Boa tarde, primeiramente gostaria de parabenizar pelo tutorial, me encorajou a fazer testes com o Zimbra, que já venho namorando a algum tempo.
ResponderExcluirGostaria de saber qual configuração de máquina foi utilizada para esta "empreitada" e qual o recomendável para suportar 120 usuários.
Grato.
Marcos Rogério
Caro Marcos, primeiramente desculpe-me pela demora, este tutorial eu fiz em cima de uma maquina virtual, mais pra esta finalidade uma maquina com um processador P4 com 1Gb de Ram você consegue atender esta sua demanda!!!
ResponderExcluirAmigo, o Zimbra é um aplicação VMware, execelente porém se seus usuários utilizarem serviços IMAP / Webmail você vai precisar de um pouco mais de memória. 3G no mínimo e também dê preferência para um processador com duplo núcleo. No mais o sistema é muito show e com esta implementação do kyapanel para suprir essa deficiência da versão open-source do Zimbra você terá uma aplicação extremamente poderosa e até mesmo comercial.
ExcluirBom dia Carlos, parabéns pelo tutorial.
ResponderExcluirSeguindo os passos, quando fui parar o zimbra não aceitou a senha que escolhi e nem a senha que estava entre os colchetes.
Segui a instalação do KyaPanel mesmo assim.
Ao acessar a configuração via Web, não deu certo.
HTTP ERROR: 404
The page you were trying to access does not exist.
Como devo proceder?
Um abraço!
Muy bueno, estoy por realizarlo para migrar desde jegue, mi duda es si en mi caso conviene instalar kya primero, migrar desde jegue y luego zimbra.
ResponderExcluirSaludos