Implantação de um Sistema de Workgroup Open Source

O objetivo deste documento é ajudar pessoas que, como eu, querem não somente a receita de bolo de como fazer, mas entender o por quê de cada coisa, entender um pouco do por quê e para quê. E é justamente isto que tento fazer neste documento, compilar de forma concisa tudo sobre groupware e correio eletrônico, os conceitos e a instalação. Espero que ajude a muitos como me ajudou.

[ Hits: 118.872 ]

Por: Claudio Rocha de Jesus em 14/01/2008


eGroupware



O eGroupware foi instalado através do Aptitude porém tive problemas na execução do setup, por isso foi instalado a partir dos fontes como segue:

Baixe os fontes do site:
Use o programa wget para isto:

# wget http://ftp.uni-kl.de/pub/egroupware/1.2/1.2-105/eGroupWare-1.2-105.tar.gz

Baixe-o no diretório /usr/src e copie-o para o diretório /var/www/:

# cp /usr/src/eGroupWare-1.2-105.tar.gz /var/www/

Descompacte com o comando tar:

# tar xvzf eGroupWare-1.2-105.tar.gz

Configuração do PHP

Para que o setup do e-Groupware funcione corretamente abra o arquivo /etc/php4/apache2/php.ini e altere as seguintes linhas para os valores que se encontram abaixo:

safe_mode = Off
magic_quotes_runtime = Off
register_globals = Off
memory_limit = 16M
max_execution_time = 30
file_uploads = On
mbstring.func_overload = 7
register_globals = Off

Caso o setup não encontre algumas das extensões necessárias para todo o seu funcionamento mesmo depois de ter instalado atrabvés do aptitude adicione as linhas abaixo no final do arquivo /etc/php4/apache2/php.ini:

extension=mcrypt.so
extension=pgsql.so
extension=ldap.so
extension=imap.so

Execute o comando pear install Auth_SASL para instalar este componente necessário pelo felamimail do eGroupware.

Faça as seguintes alterações, conforme orientação da documentação do eGroupware:

-------------------------------
- Suggested PHP Configuration -
-------------------------------

This is a suggested php.ini config for running eGroupWare on php4. It is roughly in the order of the paramters in your php.ini file. These recommendations are based on feedback from users and developers.

RESOURCES
max_execution_time = 90
This allows for encoding/decoding large file attachments on slower machines and other complex functions.

memory_limit = 20M At least this value should help with more complex operations.

ERRORS
error_reporting = E_ALL & ~E_NOTICE
Having this set to E_ALL, will cause all types of problems if left to display on the screen. E_NOTICE are non-fatal errors such as undefined variable etc. Having this set to E_ALL only will dramatically increase the size of your log files if you log errors.

display_errors = Off
This can cause header output problems if left on. They are better stored in your log file and that way you have a record of any problems.

log_errors = On
See above.

DATABASES
[dbms].allow_persistent = On
This must be set to on if you want to use persistent database connections. Change [dbms] to whatever db you want to use, i.e. mysql or pgsql.

FILE UPLOADING
file_uploads = On
If you want to use email,phpwebhosting, infolog or any apps that upload files this must be set to on.

upload_max_filesize = 5M
At least this. This will allow for larger email attachments and phpwebhosting files. Use filesize * 4 = memory_limit to allow for base64 encodes.

PHP4 SESSIONS
session.save_path = /tmp
Your httpd must be able to read and write to this directory, if you intend to use php4 sessions.

session.gc_maxlifetime = 1440
Set this to what you want to be your session time out limit. It is in seconds, so set it to 3660 if you want it to one hour ... the default is 24mins, which is generally too short.

REGISTER GLOBALS
register_globals = On
Until release eGroupWare will not work, if the value is set to Off. All further releases will support the Off setting.

Reinicie o apache e prossiga com a instalação do eGroupware.

Bem vindo(a) à instalação do eGroupware.

Como se trata de um programa desenvolvido em PHP não existe script de instalação. Para acessar o sistema depois de instalado, abra o navegador e digite a seguinte url:

http://localhost/egroupware/setup

Será aberta uma tela de bem vindo (por padrão em inglês) onde contêm uma caixa de seleção para se escolher o idioma a ser utilizado. Abra a lista e escolha Brazil.

Depois disso pressione o cursor do mouse sobre a frase "Executar testes de instalação".

Verificando a instalação do eGroupware

O configurador irá fazer uma série de checagens na instalação e configuração do PHP para ver se atende todos os requisitos necessários para o funcionamento do software. Veja se existe algum erro, corrija-os e pressione o botão "Prosseguir para o Cabeçalho Admin".

O arquivo de cabeçalhos "header.inc.php" deverá ser salvo no diretório /var/www/egroupware com as permissões 700 e ter como dono e grupo "www-data".

E o diretório egroupware deve ter as permissões definidas como 755 e ter como dono e grupo o "root".

Definir senha do header.inc.php

Nesta tela existe duas caixas de texto para digitar o nome e senha do administrador. Insira as informações como lhe convier e pressione o link "Prosseguir para o Cabeçalho Admin".

Adicionar domínio no arquivo header.inc.php

Nesta tela é feito primeiro uma análise da configuração do php, informando por exemplo qual a versão do php utilizada, se existe suporte a banco de dados e qual. Ela contém o seguinte conteúdo:

Você precisa adicionar um domínio no arquivo header.inc.php.

Análise:

Não foi encontrado suporte para o Microsoft SQL Server. Desablilitando
Aparentemente você tem suporte ao PostgreSQL
Não foi encontrado suporte para o Microsoft SQL Server. Desablilitando
Aparentemente você está usando o PHP4. Habilitando suporte as seções PHP4
Foi encontrado um arquivo de configurações. Carregando os dados desse arquivo.
Você precisa adicionar um domínio no arquivo header.inc.php

Configurações:

Raiz do Servidor
/usr/share/egroupware Para instalação pelo aptitude
/var/www/egroupware Para instalação pelos fontes
Inclua o Root (este deve ser o mesmo Root do servidor, a não ser que você saiba exatamente o que está fazendo)
/usr/share/egroupware Para instalação pelo aptitude
/var/www/egroupware Para instalação pelos fontes
Usuário de administração para o gerenciador do arquivo header
superuser
Senha de administração para o gerenciador do arquivo header
senhadosuperuser
Limitar acesso ao setup aos seguintes endereços IP, redes ou nomes de domínio (ex: 127.0.0.1, 10.1.1, meudominio.nomesite.com.br)
192.168.0
Conexões Persistentes
Sim - Você deseja usar conexões persistentes? (implica em uma performace melhor mas em um maior gasto de recursos)
Tipo de seção
php - Qual tipo de gerenciamento de seção você deseja usar? (o gerenciamento de seção do PHP4 pode ter uma performace melhor)
Habilitar Mcrypt
Não - Nem todos os algorítmos de criptografia do MCrypt funcionan com o eGroupware. Se você encontrar algum problema tente desligar essa opção.
Versão do Mcrypt
none - Defina esse valor para "old"para versões < 2.4, ou para a versão exata do MCrypt em uso.
Vetor de iniciação do Mcrypt
none - Isto deve ter aproximadamente 30 bytes.


Nota: o valor padrão foi aleatoriamente gerado

Caixa de seleção de domínios no login
Não
Domínio: minhaempresa.com.br
Tipo de BD
PostgreSQL - Qual o tipo de banco de dados você pretende usar com o eGroupWare?
Site do BD
192.168.100.3 - Nome do Servidor / IP do BD
Porta do BD
5432 - Número da porta TCP do servidor do Banco de Dados
Nome do BD
egroupware - Nome do Banco de Dados
Usuário do BD
egroupware - Nome do usuário do BD que o eGroupWare deve usar para conexão
Senha do BD
senhadosuperuser - Senha do usuário do Banco de Dados
Usuário de Configuração
superuser
Senha de Configuração
senhadosuperuser - É necessária uma senha para configuração
Ainda existem os seguintes botões nesta tela:
Adicionar um domínio
Baixar ou Visualizar o arquivo.
Preencha todos os dados acima e pressione o botão Baixar.
Salve o arquivo no diretório /var/www/egroupware.
Depois de salvar o arquivo clique em Continuar.
Na tela seguinte entre com o usuário e senha do superuser cadastrado neste último passo e pressione no botão Login.

Criação da Base de Dados

Caso o setup exiba erros de criação da base de dados a melhor maneira encontrada para criar a base sem problemas foi instalar no desktop o pgAdmin III (que tem versões para Windows e Linux) para administrar o Postgres remotamente. Antes de instalar o pgAdmin também tentei criar a base de dados pelo administrador da console, mas não obtive sucesso.

Antes de tentar se conectar no Postgres abra o arquivo /etc/postgresql/pg_hba.conf e adicione a seguinte linha, alterando o endereço IP para o que corresponda ao da estação que se esta tentando administrar remotamente:

TYPE    DATABASE   USER    IP-ADDRESS                   IP-MASK                       METHOD
host       all                   all         192.168.100.6                255.255.255.255       trust

Reinicie o servidor de banco de dados:

# /etc/init.d/postgresql restart

Caso queira coloque no endereço IP o endereço da sua rede assim poderá acessar de qualquer estação local.

Abra o pgAdmin, acesse o menu File e clique sobre Add Server. Abrirá a tela de conexão com um novo servidor.
  • No campo Address coloque o endereço IP do servidor onde esta o Postgres;
  • Dê uma descrição qualquer;
  • Em Maintenance DB escolha "template1";
  • Em Username escolha "postgres";
  • Deixe o campo Password em branco.
  • Estando conectado no Postgres, marque a opção Users e pressionando o botão direito do mouse, escolha New User. Adicione o usuário "egroupware", defina uma senha, e marque na aba "User Privileges" a opção "User can create databases".
  • Depois marque a opção "Databases", pressione o botão direito do mouse e escolha "New Database";
  • Em Name coloque "egroupware";
  • Defina o usuário "egroupware" como dono da base em Owner;
  • E pressione Ok.

Feito isso volte a configuração do egroupware e pressione o botão "Re-Check my database".

Configuração - Domínio: default(pgsql)

Nesta tela existem vários passos a seguir.

Passo 1 - Gerenciamento simples da aplicação

Sua base de dados está funcionando, mas não há nenhuma aplicação instalada todas aplicações enable for extra debug-messages*.

Marque a opção "enable for extra degub-messages*" (Habilitar mensagens de depuração extras) e pressione o botão Instalar. Se ocorreu tudo certo e não gerou nenhuma mensagem de erro pressione o botão "Verificar novamente a instalação". Fazendo isso o icone em formato de "X" ficará no formato de "V" indicando que pode passar para o próximo passo.

Passo 2 - Configuração

Seu diretório de arquivos '/var/lib/egroupware/minhaempresa.com.br/files' não existe.

Seu diretório de backup '/var/lib/egroupware/minhaempresa.com.br/backup' não existe.

Configuração do servidor de e-mail está faltando.

A maioria das partes neste passo são auto explicativas, comentarei alguns pontos de relevância e dúvida e os outros apenas indicarei como ficou.

Como foi indicado na mensagem acima o diretório "/var/lib/egroupware/minhaempresa.com.br/files" não existe. Estes diretórios devem ser criados na tela do shell manualmente, neste momento o comando mkdir é um grande aliado.

Uma observação a ser feita é que estes diretórios não devem pertencer ao diretório raiz do servidor web, geralmente "/var/www/".

Nestes diretórios o eGroupware armazenará os anexos do Infolog, Filemanger (gerenciador de arquivos) e outras aplicações.

Crie os diretórios como abaixo:

# mkdir /var/lib/egroupware
# mkdir /var/lib/egroupware/minhaempresa.com.br
# mkdir /var/lib/egroupware/minhaempresa.com.br/files
# mkdir /var/lib/egroupware/minhaempresa.com.br/backup


Dê permissão de leitura e gravação ao usuário do servidor Web (www-data).

# chown -R www-data.www-data /var/lib/egroupware/
# chmod -R 0700 /var/lib/egroupware/


Informação de Caminho do sistema (Path)
Digite o caminho completo para arquivos temporários. Exemplos: /tmp, C:TEMP: /tmp
Digite o caminho completo para arquivos de usuários e grupos. Exemplos: /files, E:FILES:
Isto tem que estar fora do diretório de documentos do seu servidor web!!! ou http://webdav.domain.com (WebDAV): /var/lib/egroupware/default/files
Informe o caminho completo para o diretório de backup. Se vazio: diretório de arquivos/db_backup:
Isto tem que estar fora do diretório de documentos do seu servidor web!!!
/var/lib/egroupware/default/backup
Digite a URL do eGroupWare. Ex.: http://www.dominio.com.br/egroupware ou /egroupware. Sem a barra final: /egroupware
Seleção de ordem de tipos de imagens: PNG -> JPG -> GIF

Informações do servidor

Digite o nome da máquina em que este servidor está sendo executado: 192.168.100.3

Configurações de servidor de e-mail padrão (também usadas para autenticação):

Endereço IP ou nome do servidor POP/MAIL do servidor de e-mail: 192.168.100.3
Protocolo do servidor de e-mail: IMAP
Tipo do login no servidor de e-mail: padrão (nome de login idêntico ao nome de usuário do eGroupware)
Domínio de E-mail (para gerenciador de E-Mail Virtual): minhaempresa.com.br
Endereço IP ou nome do servidor SMTP: 192.168.100.3
Porta do servidor SMTP: 25

Autenticação / Contas

Selecione o tipo de autenticação a ser usado: LDAP
Selecione onde você deseja salvar / recuperar as contas de usuários: LDAP
Tipo de criptografia para senhas SQL(padrão Md5): MD5
Permitir autenticação via cookie: Não
Auto login anonymous user*: Não
Permitir migração de senhas: Não
Tipos permitidos de migração (separados por vírgula):
Id mínimo para contas (Exemplo: 500 ou 100, etc.):
Id máximo para contas (Exemplo: 65535 ou 1000000):
usar prefixo para as contas de usuários:
Nomes de usuários são sensíveis à Maiúsculas / Minúsculas: Não
Criar contas de usuários automaticamente para usuários autenticados: Não
Usuários criados automaticamente expiram em: uma semana
Adicionar usuários criados automaticamente para este grupo (o grupo 'Padrão' será utilizado se este campo estiver vazio.):
Caso não exista registro de permissões ou grupo para o usuário ele é membro do: Negar Acesso

Se estiver usando LDAP:
Você precisa carregar os esquemas apropriados no seu servidor LDAP - veja phpgwapi/doc/ldap/README !!!
Você deseja gerenciar os atributos do diretório base e do interpretador de comandos?: Não
Prefixo de diretório home padrão LDAP
(Exemplo: /home para /home/codigodeusuario):
Interpretador de comandos padrão LDAP (Exemplo: /bin/bash):
Servidor LDAP: 127.0.0.1
Contexto de contas LDAP: ou=People,dc=minhaempresa,dc=com,dc=br
Filtro de pesquisa para contas LDAP. Padrão: "(uid=%user)", %domain=eGW-domain:
"(uid=%user)”
Contexto de grupos LDAP: ou=Groups,dc=minhaempresa,dc=com,dc=br
Super usuário LDAP (procurando contas e alterando senhas): cn=superuser,dc=minhaempresa,dc=com,dc=br
Senha do super usuário LDAP: senhaldap
Tipo de encriptação LDAP: DES
Habilitar LDAP versão 3: Sim
Todo restante continuou nos seus valores padrão
Pressione o botão Salvar.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Análise de produtos
   3. Definições
   4. Produtos
   5. Pacotes utilizados
   6. Configurações
   7. Configurações - continuação
   8. eGroupware
   9. Configuração de contas LDAP
   10. Atualizando a versão do eGroupWare
   11. ClamAV
   12. Patch de auto-create do Cyrus
   13. Bibliografia
Outros artigos deste autor

Git - Ciclo básico de trabalho

Conversão da base de dados do Cyrus IMAP no Debian

Compilando o Mono 2.2 no Ubuntu 8.10

Leitura recomendada

Implementando auto-resposta utilizando o Exim

Alteração de temas no Zimbra 8.0.7

Instalando o QMail e ferrramentas de administração

Postfix com autenticação em base LDAP no Slackware

Servidor de e-mail Postfix + MySQL + Dovecot + Cyrus

  
Comentários
[1] Comentário enviado por lucas.suporte em 14/01/2008 - 14:50h

otimo artigo, com bastante conceitos nos assuntos abordados, apresentando um forma de o leitor expandir o assunto do artigo.
Parabens!
Lucas Rocha
Analista de Rede

[2] Comentário enviado por Sandro Li em 14/01/2008 - 16:45h

Este artigo é excelente. Parabéns Claudio! Para mim, que sou novo aqui, ele está muito bem explicado.

Sandro Lima
Técnico em Informática.

[3] Comentário enviado por rodrigosalmeida em 14/01/2008 - 16:48h

Muito bom artigo...Parabens...

[4] Comentário enviado por jorcelangelo em 15/01/2008 - 14:52h

Uns dos melhores tutoriais que ja encontrei sobre software-livre na internet.
Parabens!!! Voce merece nota 10 !!!

E um detalhe, continue enviando tutoriais. Sempre estaremos agradecidos pelo seu trabalho.

[5] Comentário enviado por rlamana em 17/01/2008 - 11:28h

Muito bacana o artigo.

Vale a pena citar também o Zimbra que é um ótimo suite de colaboração e já esta totalmente traduzido para português brasil!

Abraços


[6] Comentário enviado por jamerson em 30/10/2008 - 17:07h

muito bom artigo, mas vc acha o egroupware melhor q o OpenGroupware?

[7] Comentário enviado por tiagotavares em 14/11/2008 - 12:14h

Respondendo a pergunta do usuário "jamerson", não minha opinião o EGroupware é melhor que o OpenGroupware. Estou migrando do OGO para o EGroupware, e estou gostando muito!

[8] Comentário enviado por dbsechin em 16/04/2009 - 18:29h

Alguem conseguiu integrar o addressbook do egroupware ao LDAP?

não estou conseguindo, se alguem conseguir...


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts