Your SlideShare is downloading. ×
Integração de Serviços em Plataforma Livre
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Integração de Serviços em Plataforma Livre

680
views

Published on

Artigo apresentado na SUCESU 2005

Artigo apresentado na SUCESU 2005


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
680
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. A integração de serviços como requisito fundamental no processo de migração para uma plataforma livre Mauro Tapajós Santos Renata Abadia Rodrigues de Oliveira Universidade Católica de Brasília tapajós@abordo.com.br, renatarodrigues@ucb.br ResumoDentro de uma organização, a primeira questão a ser levantada num processo de migração para plataformalivre é a manutenção de serviços essenciais para o seu funcionamento. Exemplo disto é gestão de umServiço de Diretórios, solução que permite gerenciar de forma centralizada as informações associadas àinfra-estrutura de recursos numa rede como usuários, impressoras, servidores, aplicações, etc. Entretanto, faltam ferramentas de administração de ambientes de TI que propiciem uma gerêncianão só eficiente, mas também integrada desses serviços básicos, permitindo não só administrá-losisoladamente, mas também integrá-los de forma facilitada para prover, por exemplo, autenticação única deusuários para todos os serviços de rede, gerenciamento do serviço de impressão, mapeamento automáticode drivers em servidores, distribuição automática de pacotes de software para estações de trabalho, backupautomático, etc. Dentro deste contexto, propõe-se um serviço de distribuição automática de pacotes de softwarecomo o primeiro de uma série de serviços que irão compor uma arquitetura centralizada de gerência de TI,baseada em software livre e capaz de atender a ambientes corporativos de maior porte.1. IntroduçãoO ambiente de TI atual exige determinados serviços de rede que garantem a operação normal de redescorporativas. No mundo das plataformas livres estes serviços estão disponíveis porém de formadesagregada. A integração destes serviços é fundamental para a adoção da plataforma livre em redescorporativas. Apresenta-se então o mecanismo de distribuição de software como serviço básico de rede. Esteserviço é extremamente importante para o correto funcionamento da arquitetura e serve de base paramuitos dos demais serviços.2. O Ambiente de TI AtualUm ambiente de TI operacional exige atualmente serviços básicos como:•Autenticação de usuários na rede (através dos processos de login) para que estes possam utilizar osrecursos de rede disponíveis•Personalizações no processo de login do usuário (uso de scripts de inicialização, avisos e alertas) paraautomatizar processos internos•Impressão via rede de acordo com regras e quotas pré-definidas•Acesso a arquivos em servidores em rede com controle de acesso adequado•Execução controlada e agendada de cópias de redundância de arquivos – backup•Disponibilização de softwares anti-vírus e suas atualizações•Instalações e atualizações automáticas de aplicações nas estações de trabalho•Geração automática de inventário do parque de TI para gerenciamento de configuração•Geração e tratamento de arquivos de logs dos sistemas Com isso se verifica que para garantir o correto funcionamento destes serviços é necessário umaintegração de todos. Com esse objetivo se costuma inserir neste contexto um servidor de diretórios cujafunção é centralizar as informações necessárias à utilização dos serviços citados. O servidor de diretórios armazena dados como senhas de usuários, privilégios de impressão,sistemas de arquivos disponíveis em rede, servidores em operação, controle de acesso aos recursos derede e permissões de execução de softwares. O servidor de diretórios é um banco de dados cujo objetivo éatender da forma mais eficaz e rápida a questionamentos de aplicações externas, ou seja, é um banco de
  • 2. dados otimizado para operações de leitura. O serviço de diretórios aparece então como componente essencial dentro de uma arquiteturaintegrada de TI. Em vista de sua importância, o serviço de diretórios normalmente é implementado emsoluções redundantes e, em alguns casos, distribuídas de forma a atender melhor às requisições de clientesem rede. O acesso á um servidor de diretórios também é um elemento importante que pode influirdiretamente no tempo de resposta que aplicações terão ao questionar o diretório. O protocolo mais usadopara acesso a servidores de diretórios em ambiente livre é o LDAP . É um protocolo leve e muito popularcom bom número de implementações, inclusive no mundo de plataformas livres como o software livreOpenLDAP1.3. Operação Integrada de Serviços de TIEm ambiente proprietário, existem algumas alternativas para um ambiente totalmente integrado como assoluções de fabricantes como Novell e Microsoft. Em todas estas estão presentes as características domundo proprietário: dependência de um único fabricante, opções de suporte restritas e caras, polarizaçãopara um conjunto limitados de plataformas ou tecnologias, custos de licenciamento altos, nenhumaliberdade de atuação no código fonte e uma evolução ditada apenas por diretrizes de negócio dosfabricantes. Em ambientes livres, muitas das características de desenvolvimento dos sistemas UNIX sãoherdadas, sendo considerada aqui, principalmente, a estratégia de se desenvolver funcionalidades emmodo atômico para depois integrá-las. Esta abordagem é válida também para os serviços de rede emdiscussão. Desta forma, não existe atualmente em plataforma livre uma solução completa e integrada deserviços de rede para um ambiente de TI livre e de porte corporativo. Dentro da proposta de um sistema livre integrado, haverá de existir no seu núcleo um serviço dediretórios único e saudável acessado por serviços e aplicações externas via protocolo LDAP. Estasaplicações obtem, assim, as informações necessárias para realizar as tarefas normais de um ambiente deTI. A figura 1 ilustra esta abordagem. Este é o primeiro passo rumo à integração dos diversos serviços. Figura 1 – Serviços de Rede numa Arquitetura Integrada4. Aplicações em Plataforma LivreUsuários em workstations necessitam de aplicações para realizar seus trabalhos. Um dos serviços de redeprimordiais num ambiente de TI é a distribuição de aplicações para usuários em workstations. Esta tarefa não é simples por que atua no âmago do sistema computacional: seus programas e osarquivos que o implementam. Nos ambientes mais simples a estratégia é manter uma equipe que váfisicamente em cada estação e realize o trabalho de instalação, atualização e desinstalação decomponentes e aplicações de software. Obviamente não é a solução desejada diante do custo e dasdificuldades de gerenciamento. Numa arquitetura de administração integrada para plataforma livre, este processo deve serautomatizado para permitir um controle total de que aplicações estão sendo instaladas e atualizadas,1 OpenLDAP – www.openldap.org
  • 3. mantendo as informações relacionadas no serviço de diretórios. Uma aplicação é constituída por alguns ou todos os seguintes elementos:•Arquivos executáveis binários para uma determinada plataforma computacional (i386, AMD, Palmtops,Mainframe, etc)•Arquivos de instrução em linguagens compiladas (código fonte a ser compilado previamente paraexecução)•Arquivos de instrução em linguagens interpretadas (como por exemplo scripts)•Ambiente de interpretação (como uma máquina virtual JAVA ou interpretador PERL)•Bibliotecas de rotinas compiladas ou não•Arquivos de configuração diversos•Arquivos adjuntos necessários para a aplicação: imagens, documentação, animações, palhetas de cores,drivers, ou qualquer outro Em plataforma livre é comum a disponibilização de software em formato aberto. Com isso é possívela visualização de seu código fonte, mas é exigido o passo de compilação do mesmo, de forma a criararquivos executáveis binários específicos para a plataforma em questão . Entre as vantagens destaalternativa está o fato do código poder ser auditado (verificado) e alterado, de acordo com possíveisdemandas de personalização e geração de binários otimizados para a plataforma. Na montagem da árvorede arquivos de código fonte é necessário que se tenha a informação de que arquivos de código compõem obinário sendo criado. Mais além, um mesmo binário pode ser criado a partir de vários binários intermediárioschamados de arquivos objetos. Assim, os arquivos objetos podem compor um arquivo executável ou atémesmo uma biblioteca. Para descrever estes relacionamentos, é comum o uso de ferramentas de automatização doprocesso de montagem dos binários necessário para a aplicação. O utilitário make2 pode manter asinformações de criação dos binários em arquivos de configuração chamados de makefiles. Nestes, estãodescritos todos os arquivos de código e as instruções para a compilação e montagem dos binários (alvos). Uma vez pronta, a aplicação é disparada no sistema por um arquivo executável que se encarregade realizar as devidas chamadas para os demais componentes.5. Pacotes de softwareCada aplicação é composta de um ou mais pacotes de software que podem conter os tipos de arquivoslistados anteriormente. Os pacotes são criados e mantidos de forma individual e são tratados pelasoperações de distribuição de software desta mesma forma. Um pacote de software é um conjunto organizado e completo de arquivos e instruções para suainstalação num sistema computacional. Este conjunto compõe principalmente aplicações mas pode conterbibliotecas, documentação ou dados quaisquer . Configurações como o acerto de caminhos padrões eajuste de variáveis de ambiente podem ser necessárias e estarão descritas no próprio pacote. Cada pacotepossui uma numeração de versão que o identifica diante das demais versões do mesmo pacote e serve dereferência para as informações de dependências. Apesar de individualizados, os pacotes de software podem ter dependências uns dos outros. Porexemplo: se for necessária a instalação de uma aplicação de criptografia, ela pode requerer a préviainstalação no sistema de uma biblioteca de rotinas criptográficas de que faz uso. Diante deste fato, osmecanismos de gerenciamento de pacotes a serem adotados deverão compreender corretamente a cadeiade dependências que existe entre pacotes de software. Para realizar as funções de instalação e manutenção de aplicações em estações ou até mesmoservidores, é necessária a definição de formatos padrões para transporte dos arquivos e suporte deinstalação das aplicações. Dentre as alternativas de formatos de pacotes em software livre, as mais usadas são: o formatoRPM (RedHat Package Manager)3, o dpkg (arquivos .deb - usado pelo gerenciador de pacotes dadistribuição Linux Debian4) e o formato usado pela distribuição Slackware5 (arquivos .tgz). Todas têm em comum o objetivo de permitir a instalação fácil via rede ou outras mídias como CDse DVDs. Cada uma porém organiza os arquivos e configurações de formas diferentes e podem ou nãoexigir no sistema ferramentas de manipulação destes pacotes como o RPM (utilitário rpm) e o Debian(utilitário dpkg). O formato Slackware oferece utilitários mas permite que se trabalhe diretamente com ospacotes realizando as operações manualmente. Um item importante a considerar nos formatos de pacotes é a facilidade de se ter scripts de pré epós-instalação que rodariam, respectivamente, antes e depois da instalação do pacote. Este recurso dá2 http://www.gnu.org/software/make/make.html3 http://www.rpm.org4 http://www.debian.org5 http://www.slackware
  • 4. grande flexibilidade para personalizar o sistema para o pacote em questão. Todos os formatos citadospossuem esta característica. Os pacotes também podem conter código fonte. O suporte ao uso de makefiles é outro item deinteresse. Ferramentas de geração de pacotes nos formatos citados existem e podem suportar a geraçãode pacotes binários a partir de código fonte através da análise de makefiles.6. Serviço de Distribuição de Software O ciclo de vida de uma aplicação se inicia com a instalação da mesma na estação do cliente. Oprocesso de instalação de aplicações, em maior ou menor grau, envolve as seguintes operações:1.Cópia dos pacotes de software (normalmente em formato compactado) que compõem a aplicação, para aestação via rede.2.Descompressão dos arquivos em local apropriado3.Geração dos arquivos binários executáveis4.Transferência dos arquivos gerados para locais apropriados dentro da estação5.Configurações da aplicação na estação, onde pode ser necessária a interação com o usuárioadministrador da mesma (usuário root).6.Configurações específicas para o usuário, onde pode ser necessária a interação com o mesmo. Estes passos nem sempre são fáceis e diretos em ambiente livre , principalmente para usuáriosleigos. A solução adotada automatizar ao máximo o processo com o uso de instaladores. O problema é que plataformas livres se diferem bastante em termos de configurações ecomponentes presentes no sistema. Além disso, é preciso que o sistema tenha o suporte devido aoprocesso de compilação e geração dos binários que rodarão a aplicação. Itens como compiladores ebibliotecas devem já estar disponíveis no sistema, caso contrário, os próprios devem ser instaladospreviamente. Com isso, surgiram várias ferramentas em plataforma livre que padronizam e automatizam oprocesso de instalação e manutenção de software nas estações de trabalho, realizando ou não (no caso dorpm) a instalação via rede. Algumas das opções são utilitários em linha de comando como o próprio rpm(usado com pacotes do formato RPM), o yum6 (também usado com pacotes RPM), o apt-get7 (usado compacotes debian .deb) e o emerge (usado pelo Portage – sistema gerencidor de software da distribuiçãoLinux Gentoo8). Outros já são aplicações em ambiente gráfico como o synaptic9 (que trata pacotes do tipoRPM ou Debian), o up2date (usado pela distribuição RedHat) e o Yast (usado pela distribuição SUSE10 parapacotes RPM). Um detalhe importante a ressaltar é que em plataforma livre as aplicações estão em processo dedesenvolvimento e evolução contínua. Isto resulta numa necessidade constante de atualizações dospacotes de software instalados. Qualquer arquitetura que se proponha para este fim deverá permitir estetipo de mecanismo de modo eficiente e flexível. Em outras palavras, a arquitetura deverá trataradequadamente as atualizações através e controle de versões de pacotes de software. Para tratamento correto dos aspectos acima é necessário um serviço de distribuição de software viarede. O serviço de distribuição de software é responsável em garantir nas estações de usuários (e até emservidores) a correta descarga, instalação e configuração de aplicações através de seus pacotes desoftwares, mantendo contínua observância dos mesmos com o objetivo de garantir as devidas atualizaçõesvia rede. Para distribuir software, é necessário implementar um reservatório para os pacotes de software.Este deve ser alcançado via rede, onde clientes do sistema de distribuição possam receber os pacotes einstalá-los. Não é interessante que se tenham cópias diversas dos pacotes em cada estação ou servidor deforma descoordenada. A abordagem com um repositório master garante que haja somente um ponto dedistribuição básico evitando problemas de incoerência nos pacotes, mas coloca toda a responsabilidade doprocesso de distribuição num único servidor de arquivos. Para evitar isso, mais repositórios podem ser agregados ao processo, dividindo a carga deconsultas e downloads no repositório master . Estes repositórios secundários seriam então um espelho doque existe no repositório master onde as cópias inicialmente são colocadas. Periodicamente seriam feitassincronizações dos vários pacotes de software a partir do servidor master para manter a atualidade dospacotes nos repositórios secundários. Com isso, descaracteriza-se o único ponto de falha do repositório6 http://linux.duke.edu/projects/yum/7 O utilitário apt-get também foi portado para ambientes RPM pela Conectiva com o nome AptRpm (https://moin.conectiva.com.br/AptRpm)8 http://www.gentoo.org9 http://www.nongnu.org/synaptic/10 http://www.novell.com/linux/suse/index.html
  • 5. master e pode-se realizar uma distribuição escalável através de uma rede de distribuição de pacotes desoftware que cresça com o ambiente de TI corporativo. Dentre os itens notáveis em tal arquitetura de distribuição estão:Instalação transparente e automática para o usuário – o sistema distribuidor deve contar com uma porçãocliente nas estações ou servidores e que analisará cada aplicação sendo instalada e buscará todas as suasdependências automaticamente via rede poupando o usuário leigo de intervenções neste sentido. Assim,dependências entre pacotes e versões corretas serão automaticamente tratadas pelo cliente para osformatos de pacotes de software suportados.Adequação às limitações de rede – o sistema pode otimizar a transferência dos pacotes. Podem-se utilizarmecanismos de compressão ou mesmo comprimi-los. O uso de recursos de rede que otimizem o uso debanda também é desejável, como o rsync11 para transferência de arquivos. É também importante verificar aoperação do sistema atrás de configurações seguras com firewalls.Categorização de software – é interessante que se possa criar grupos de softwares em categorias comoatualizações de segurança, aplicações gráficas, utilitários de sistema, programas desenvolvidosinternamente ou até mesmo dividindo os pacotes por distribuição Linux.Uso com diferentes plataformas – o sistema pode suportar diferentes arquiteturas e distribuições do sistemaoperacional. Isto significa manipular diferentes conjuntos de aplicações para cada uma das plataformas,tratando corretamente suas diferentes versões e particularidades.Administração do serviço de distribuição de pacotes de software – observar se é possível ter aadministração via WEB ou através de ferramenta própria com controle de usuário e senha para oadministrador de pacotes de software. Este processo deve ser seguro pois falhas podem permitir a entradade softwares maliciosos como “cavalos de tróia” ou impedir atualizações de segurança. É importantetambém que exista a facilidade de anúncio de novos softwares para os usuários, já que normalmente nãohaverá limitações de licenciamento (principalmente softwares livres).Distribuição agendada – esta facilidade permite ao administrador definir pacotes a serem imediatamenteinstalados (“push”), ou instalados até determinada data. Isto garante a contínua atualização do parque decomputadores, evitando que aplicações nas mesmas fiquem antigas demais (por exemplo: atualizações desegurança). Uma vantagem importante deste item é a flexibilidade de se executar distribuições de pacotesem larga escala ao mesmo tempo na mesma rede.Tolerância a falhas e segurança – a arquitetura deve prever o funcionamento na ocorrência de queda derepositórios, mesmo sendo o master, mantendo ainda assim o serviço ativo. Redundância de rede pode serobtida com análise específica e uso de recursos conhecidos como DNS para encontrar servidores, uso deIPs virtuais, etc. Aspectos de segurança ainda podem ser avaliados no que diz respeito à integridade dospacotes (como o uso de mecanismos de checagem com MD5) e o transporte dos pacotes entre repositóriose entre repositório e estação (como o uso de opções de transferências de arquivos seguras como scp12 ousftp13 e usando procedimento de autenticação com chaves criptográficas).7 – O Serviço de Distribuição Automatizada de Pacotes de Software dentro de uma Arquitetura deGerenciamento IntegradaNo ambiente corporativo, o serviço de distribuição de software figura como um dos mais importantes nogerenciamento de complexidade do ambiente. Porém, em plataforma livre, ele ainda não possui aintegração adequada com toda uma infra-estrutura de gerenciamento do ambiente de TI. Esta arquiteturaintegrada parte de um serviço de diretório preenchido com as informações necessárias para os serviços derede operarem (como o próprio serviço de distribuição de software). Para a correta integração com o serviço de diretórios, deverão existir objetos que contenham asinformações necessárias para que clientes e a administração de distribuição de software possam consultare alterar. Realizando assim o controle adequado do processo de distribuição. As regras para administração integradas estarão em objetos que devem descrever itens básicoscomo:1.Usuários e grupos de usuários cadastrados e ativos no ambiente2.Aplicações disponibilizadas pelo serviço de distribuição de pacotes de software3.Privilégios de instalação, uso e atualização de aplicações para grupos de usuários e estações de trabalho11 http://samba.anu.edu.au/rsync/12 Secure copy – parte do pacote de software ssh13 Secure FTP – parte do pacote de software ssh
  • 6. 4.Inventário atualizado de TI do ambiente – configurações de hardware e software instalados em cada umadas máquinas e servidores Estas regras devem descrever os processos internos de cada corporação. Usuários e grupos serãodefinidos unicamente para toda a arquitetura. Permissões de instalação e execução de aplicações sãodadas com base nas regras em vigor nos processos internos de TI. As mesmas informações de usuários egrupos se aplicarão para os demais serviços integrados da arquitetura de gerenciamento, comoautenticação e impressão em rede. O processo de administração do serviço de distribuição de software por sua vez será responsávelem inserir e retirar os pacotes de softwares a serem disponibilizados no repositório master, atualizando emparalelo o serviço de diretórios com estas informações através do protocolo LDAP. O cliente nas estações e servidores deve, no processo de inicialização do sistema ou mesmo nologin de usuários, checar as aplicações e atualizações disponíveis segundo os privilégios aplicados noserviço de diretórios. Após este passo, as aplicações e atualizações podem então ser instaladas ouexecutadas. Os privilégios podem se ater a usuários e grupos de usuários, ou serem aplicados tambémsobre conjuntos de computadores. Assim, para ser possível uma instalação ou execução, deve haver ocruzamento de dados de usuários e grupos com os dados de estações. Neste sentido, um passo intermediário mas necessário na aceitação da instalação de umaaplicação, é a prévia checagem de requisitos de plataforma para a instalação de pacotes de software. Isto épossível através de análise das informações de inventário contidas no serviço de diretórios. Por exemplo: seum pacote de software que contém um aplicativo de escritório deve ser instalado numa estação, então éfeita uma checagem se existe espaço em disco ou quantidade de memória suficiente na mesma analisandoo inventário da estação nas informações do serviço de diretórios. Sendo os requisitos de plataformasatisfeitos, a instalação prossegue checando os privilégios necessários. A figura 2 ilustra a arquitetura dedistribuição de software integrada. Figura 2 – Serviço de Distribuição de Software Integrado com o Serviço de Diretórios Dentro da solução com protocolo LDAP é possível se encontrar objetos nos schemas de objetospadrões para atender somente ao item 1. Os demais itens devem ser modelados e descritos como objetosem novos schemas que estenderiam o conjunto de objetos num servidor LDAP em plataforma livre,preferencialmente o OpenLDAP. Até o momento atual, nenhuma das alternativas em software citadas neste trabalho possui ascaracterísticas completas para uso na solução integrada sendo proposta. A solução será a montagem dosistema partindo dos componentes existentes e desenvolvendo as partes inexistentes como a consulta viaLDAP ao serviço de diretórios. O sistema de gerenciamento de ambientes de TI (GATI) , possui um módulo integrado dedistribuição de software que segue as linhas aqui descritas e está em desenvolvimento da sua versão 2.
  • 7. 8. ConclusãoUm ambiente de TI saudável e escalável exige a integração dos seus serviços básicos de forma a permitirsua operação devidamente controlada, otimizando recursos e atendendo melhor às demandas de usuários.Foi visto que esta solução deve conter um serviço de diretórios cujo objetivo é manter as informaçõesoperacionais de uso dos diversos serviços de rede. A opção mais indicada em plataforma livre é o uso dopadrão LDAP, cuja implementação mais popular é o OpenLDAP. Diante da diversidade de aplicativos disponíveis, é necessário o trabalho de desenvolvimento eintegração da arquitetura de serviços de rede básicos para plataformas baseadas em ambiente livre. Estetrabalho parte do que já existe em termos de funcionalidades e deve complementar o sistema com asfunções de integração com o serviço de diretórios, principalmente o uso do protocolo LDAP e a modelagemde novos objetos no serviço de diretórios para o trato das informações operacionais.Bibliografia[1] WAHL, M; HOWES, T. RFC 2251: Lightweight Directory Access Protocol v3. IETF, 1997.[2] VOLKERDING, Patrick; FOSTER-JOHNSON, Eric; REICHARD, Kevin. Linux Programming. 1 Ed. MisPress, 1997.[3] BOVET, Daniel; CESATI, Marco. Understanding the Linux Kernel. 2 Ed. O´Reilly, 2003.[4] FOSTER-JOHNSON, Eric. Red Hat RPM Guide. 1 Ed. Wiley Publishing Inc., 2003.[5] Slackware Packaging System. Disponível em: <http://www.slackware.org/config/packages.php>.Acessado em: 11 dez. 2004.[6] BAILEY, Edward. , Maximum RPM. 1 Ed. Sams, 1997.[7] Create Debian Linux Packages: Learn how to build easy-to-distribute packages for Debian users.2003. Disponível em: < http://www-106.ibm.com/developerworks/linux/library/l-debpkg.html>. Acessado em:15 dez. 2004.[8] KIRZNER, Rikki. Electronic Software Distribution: A Long Shot. 2003. Disponível em:<http://www.uniforum.org/news/html/publications/ufm/mar96/swdist.html>. Acessado em: 13 dez. 2004.[9] BLY, Martin; ALLAN, Alasdair; JENESS, Tim. Source Code Management and Software Distributionusing Open Source Technologies. 2003. Disponível em:<http://www.adass.org/adass/proceedings/adass02/reprints/P8-2.pdf>. Acessado em: 1 dez. 2004.[10] LUERKENS, Cameron; COLE, John; LEGG, Danielle. Software Distribution to PC Clients in aEnterprise Network. 1998. Disponível em: <http://www.usenix.org/publications/library/proceedings/lisa-nt98/full_papers/luerkens/luerkens.pdf>. Acesso em: 1 dez. 2004.[11] ANDERSON, Paul. Software Distribution and Repositories. 1997. Disponível em:<http://homepages.inf.ed.ac.uk/dcspaul/publications/SoftDist.pdf>. Acessado em: 13 dez. 2004.[12] CRUZ, Fernando; SANTOS, Giovanni; MEDEIROS, Raissa; et al. Uma Ferramenta para aAdministração de Serviços de Diretórios Basedo no OpenLDAP. Anais do 5 Fórum Internacional deSoftware Livre, pg 91, Porto Alegre, 2004. Anais.