Ir para o conteúdo
ou

Software livre Brasil

0 comunidades

Nenhum(a)

 Voltar a Blog
Tela cheia

GOsa 2.5.x – Administração do LDAP

16 de Setembro de 2008, 0:00 , por Software Livre Brasil - 1Um comentário | Ninguém está seguindo este artigo ainda.
Visualizado 3018 vezes

GOsa é um fabuloso administrador de contas LDAP. Com ele é possível administrar usuários, grupos e serviços. Algumas das características do GOsa:

  • Interface simples;
  • Criação de grupos
  • Criação de Usuários para vários ambientes;
  • Backup;
  • Criação de templates;
  • Configuração de vários serviços (DNS,FTP,etc)

Nas próximos linhas estarei mostrando como instalar essa ferramenta no Linux Ubuntu-Server. A utilização é por sua conta.

Como pré-requisito instale o servidor apache e o php5.

 

[root@cabeca]# apt-get install apache2 php5

 

A primeira parte é instalar e configuração o OpenLDAP; o comando a seguir faz a instalação do LDAP.

 

[root@cabeca]# apt-get install slapd ldap-utils

 

Após a instação vamos partir para configuração.Em algumas distribuições, o LDAP está utilizando a configuração online, e por isso não existe o arquivo slapd.conf. Para utilizar o arquivo slapd.conf, delete a pasta slapd.d que encontra-se dentro do diretório /etc/ldap e altere a diretiva do SLAPD_CONF do arquivo /etc/default/slapd para SLAPD_CONF=/etc/ldap/slapd.conf.

Feito isso, o próximo passo é criar o arquivo slapd.conf dentro do diretório /etc/ldap. A segui tem um exemplo de configuração, os arquivos de schema estão no pacote do Gosa dentro do diretório contrib/openldap. Altere de acordo com as suas necessidades.

include         /etc/ldap/schema/core.schema
include         /etc/ldap/schema/cosine.schema
include         /etc/ldap/schema/inetorgperson.schema
include         /etc/ldap/schema/openldap.schema
include         /etc/ldap/schema/nis.schema
include         /etc/ldap/schema/misc.schema
include         /etc/ldap/schema/samba.schema
include         /etc/ldap/schema/pureftpd.schema
include         /etc/ldap/schema/gofon.schema
include         /etc/ldap/schema/gosystem.schema
include         /etc/ldap/schema/goto.schema
include         /etc/ldap/schema/samba3.schema
include         /etc/ldap/schema/gosa+samba3.schema
include         /etc/ldap/schema/gofax.schema
include         /etc/ldap/schema/goserver.schema
include         /etc/ldap/schema/goto-mime.schema
include         /etc/ldap/schema/dhcp.schema
include         /etc/ldap/schema/dnszone.schema
 
password-hash           {CRYPT}
defaultsearchbase       dc=trigo
 
pidfile  /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
 
 
loglevel        1024
 
#Cara os modulos
modulepath      /usr/lib/ldap
moduleload      back_hdb
moduleload      back_monitor
access to dn.base=
        by * read
 
access to dn.subtree=cn=Monitor
        by * read
 
access to attrs=userPassword,sambaPwdLastSet,sambaPwdMustChange,\
                sambaPwdCanChange,shadowMax,shadowExpire
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO) write
        by anonymous auth
        by self write
        by * none
 
access to attrs=goImapPassword
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO) write
        by * none
access to attrs=goKrbPassword
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO) write
        by * none
access to attrs=goFaxPassword
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO) write
        by * none
 
access to attrs=gotoLastUser
        by * write
 
access to attrs=sambaLmPassword,sambaNtPassword
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO)write
        by anonymous auth
        by self write
        by * none
 
access to *
        by dn.regex=uid=[^/]+/admin\+(realm=TRIGO)=wrscx
        by * read
 
# Monitor backend
database        monitor
database        hdb
cachesize 5000
mode              0600
 
suffix          dc=trigo
checkpoint      512 720
 
rootdn  cn=manager,dc=trigo
rootpw  x
 
# Indexing
index   default                                                 sub
index   uid,mail                                                eq
index   gosaMailAlternateAddress,gosaMailForwardingAddress      eq
index   cn,sn,givenName,ou                                      pres,eq,sub
index   objectClass                                             pres,eq
index   uidNumber,gidNumber,memberuid,macAddress                eq
index   gosaSubtreeACL,gosaObject,gosaUser                      pres,eq
 
# Indexing for Samba 3
index   sambaSID                                                eq
index   sambaPrimaryGroupSID                                    eq
index   sambaDomainName                                         eq
 
# Indexing for DNS/DHCP
index  zoneName                                                eq
index  relativeDomainName                                      eq
index   dhcpHWAddress                                          eq
index   dhcpClassData                                          eq
index   dhcpPrimaryDN                                          eq
index   dhcpSecondaryDN                                        eq
 
directory       /var/lib/ldap
lastmod on
Inicie o servidor LDAP em modo debug para verificar se existe algum erro, se existir, o erro e a linha que contém o erro será mostrado.
[root@localhost]# slapd -d 123 -u openldap
Se nenhum erro for apresentado, inicio o servidor LDAP normalmente.
 
[root@localhost]# slapd -d 123 -u openldap
 
O Próximo passo é criar a estrutura base do LDAP. Para isso crie um arquivo chamado base.ldif. O conteúdo deste arquivo está logo a seguir. Altere de acordo com as suas configurações.
dn: dc=trigo
objectClass: top
objectClass: dcObject
objectClass: organization
dc: trigo
o: Clodonil Trigo
Ao terminar de editar o arquivo, é preciso enviar essas informações do arquivo LDIF para a base LDAP. O comando ldapadd faz isso, altere o comando abaixo de acordo com as suas configurações.
 
[root@cabeca]# ldapadd -f base.ldif -x -D cn=manager,dc=trigo -W
 
Com a base LDAP pronta, vamos para a configuração do GOsa. Primeiramente é preciso fazer o download do pacote, que pode ser feito através do site http://oss.gonicus.de/pub/gosa/.

 2. Crie os seguintes diretórios:

  • /usr/share/gosa
  • /var/spool/gosa (Coloque o usuário do apache como dono deste diretório)
  • /etc/gosa

3.  Descompacte dentro do diretório /usr/share/gosa

 

[root@cabeca]# tar -xzvf gosa-2.5.17.tar.gz -C /usr/share/gosa

 

4.  Adicione as seguintes linhas no apache configurado.

#Crie um Alias
Alias /gosa /usr/share/gosa/html

5. Instale os módulos do PHP

  • Suporte ao LDAP (php5-ldap)
  • Suporte ao Mshash (php5-mhash)
  • Suporte ao IMAP (php5-imap)
  • Suporte ao Mysql(php5-mysql)
  • fping
  • libcrypt-smbhash-perl

Altere as seguintes linhas no php.ini, deixando conforme o exemplo abaixo:

register_globals = Off
session.gc_maxlifetime = 86400
session.auto_start = Off
memory_limit = 32M
implicit_flush = Off
max_execution_time = 30
expose_php = Off
magic_quotes_gpc = On
zend.ze1_compatibility_mode = Off

5. Acesse o browser e termine a instalação;utilize as telas abaixo para se guiar (não esqueça de reiniciar o apache). Ao iniciar o browser chame o endereço do servidor apache (http://ip-do-servidor/gosa). A primeira tela que deverá aparecer é a tela1. Nesta tela podemos destacar como característica a preocupação dos criadores do GOsa com a segurança. Para dar prosseguimento na instalação é necessário copiar a chave especifica e colocar no /tmp.

 

Figura 1 – Inicio da Instalação

 Na segunda tela o usuário terá a opção de escolher o idioma que desejar usar. Não existe em português. A Seguinte, expressa a licença de uso do software. A tela seguinte,é uma checagem dos pré-requisitos, como mostra a figura 2. Todas as opções requeridas devem ser atendidas. Nos pré-requisitos que descrevi anteriormente, estes itens já são instalados. Na figura está dando erro no kerberos, SNMP e CUPS. São três pacotes que não estarão disponível no GOsa.

Figura 2 – Pré-requísitos

A tela seguinte também é um método de checagem de arquivos schema. Caso apareça algum erro, deve ser resolvido antes de continuar a instalação. Na seguinte, o usuário tem que configurar a conexão com o servidor LDAP. Defina um usuário que tenha permissão de administrador na base LDAP, como mostra a figura 3. Coloque a base definido no slapd.conf como o suffix e o administrador definido no rootdn do mesmo arquivo. No exemplo que coloquei no slapd.conf, ficaria BASE=dc=trigo e Admin DN  cn=manager,dc=trigo.

Figura 3 – Configuração do LDAP

Nas telas seguintes, são definidas o timezone e os aditivos de serviços que o GOsa vai suportar, tais como DNS, DHCP, entre outros. Nas telas seguintes é necessário definir as entradas de usuário e grupos, além da criptografia utiliza. Também é necessário configurar as principais funcionalidades do GOsa tais como, sessão, debug e gid, como mostra a figura 3. A estrutura de armazenamento de usuários e grupos são definido nesta tela, na opção "People store subtree" se colocar "ou=users", significa que todos os usuários serão cadastrados dentro desta unidade. O mais comum é colocar "ou=people", mas é só questão de nomenclatura. Grave a opção deste parâmetro, porque vai ser requirido nas configurações dos outros serviços. 

A tela seguinte é muito importante. O GOsa reorganiza todas os objetos cadastrados na base LDAP. É também cadastra o usuário  administrador do GOsa. Não confunda com o administrador da base LDAP.

As últimas estão relacionada ao arquivo de configuração. Este arquivo deve ser copiado para o diretório /etc/gosa e as permissões devem ser configuradas conforme solicitado na instalação. As duas telas seguintes mostram a tela de login e o gerenciamento da base LDAP.

Ambiente de gerenciamento dos usuário.

Pronto, você tem um poderoso gerenciador de usuário e grupos. Começe a criar os usuários.


Fonte: http://www.nisled.org/?p=45

1Um comentário

  • 3c13fbe1d13fe7737ea5e933d509776b?only path=false&size=50&d=404keslley(usuário não autenticado)
    22 de Julho de 2011, 14:44

    Duvida

    Clodonil, quando eu apago o diretorio slapd e altero o arquivo /etc/default/slapd conforme você comentou, não consigo mais iniciar o serviço do ldap. Mesmo com o arquivo slapd.conf configurado corretamente, não consigo inciar mais o serviço. E mais uma duvida: quando apagamos o diretorio slapd.d o index no arquivo default/slapd para os arquivos slapd.pid e slapd.args ainda estão enderaçando pro diretorio slapd.d, obrigarotoriamente não deveriamos atualizar o caminho ?
    abraços.


Enviar um comentário

Os campos são obrigatórios.

Se você é um usuário registrado, pode se identificar e ser reconhecido automaticamente.