Escolar Documentos
Profissional Documentos
Cultura Documentos
LPIC-3 CORE
GUIA DE ESTUDOS LPIC 301
Topic 301: Concepts, Architecture and Design
301.1 LDAP Concepts and Architecture (weight: 3)
Description: Candidates should be familiar with LDAP and X.500 concepts
Key Knowledge Areas
LDAP and X.500 technical specification
Attribute definitions
Directory namespaces
Distinguished names
LDAP Data Interchange Format
Meta-directories
Changetype operations
The following is a partial list of the used files, terms and utilities:
LDIF
Meta-directory
changetype
X.500
/var/lib/ldap/*
Directory service - uma soluo de software de administradores que armazena e organiza as informaes sobre os
usurios da rede e dos recursos e ajuda a gerenci-los, por exemplo, controlando o acesso desses usurios aos recursos.
Meta-Directory - um conceito de um diretrio centralizado com todos os tipos de informao, comeando com os
dados pessoais, as credenciais de autenticao, listas de hardware, os endereos de impressora, etc. Empregando
metadiretrios em empresas, possivelmente poupar dinheiro e melhorar o controle do acesso aos recursos.
Padro X.500 - um conjunto de protocolos de apoio aos servios de diretrio. Foi inventado em 1984 pela Unio
Internacional de Telecomunicaes (CCITT). composto dos seguintes protocolos: Directory Access Protocol, do
Sistema de Protocolo, Information Shadowing Protocol Directory, Directory Operational Management Protocol
Bindings. Ele foi desenvolvido com o modelo OSI em mente, ainda possvel hoje em dia para execut-lo em TCP/IP
tambm.
LDAP - Significa Lightweight Directory Access Protocol, porque a alternativa leve para os servios de diretrio
X.500. LDAP baseado no protocolo TCP/IP. Segundo a Wikipedia Tim Howes, Kille Steve e Yeong Wengyik
comeou a trabalhar em LDAP em 1993. LDAP e X.500 so construdos em esqueleto Directory Information Tree.
Directory Information Tree - o esqueleto de dados fundamental para ambas as implementaes de X.500 e LDAP.
Como muitas outras estruturas de dados no mundo da computao so representadas como uma rvore. Um exemplo
deste tipo pode ser encontrado aqui. LDAP modelo de informaes em uma rvore construda de entradas.
LDAP entry - Uma entrada do diretrio que uma coleo de atributos e tem um nico nome distinto (DN).
Distinguished Name - Nome de uma entrada de diretrio em sua forma absoluta. DN composto por RDN (Relative
Distinguished Name).
Ex.: uid=roberto,ou=People,dc=empresa,dc=com,dc=br
LDAP Attribute - Uma estrutura de dados de base, composta por duas partes, ou seja, um par de um tipo e o valor.
Ex.: description: Instrutor
2
GUIA DE ESTUDOS LPIC 301
objectClass - um atributo especial que define como uma entrada especial deve ser semelhante, os atributos que so
permitidos e o que tem a sintaxe devem ser usados nos mesmos. objectClasses so definidos nos arquivos de esquema.
Schema Files - So esqueletos de entrada LDAP. Eles contm classes de objetos e atributos de requisitos utilizados pelo
diferentes DNS. Os arquivos de esquema normalmente residem no diretrio /etc/openldap/schema/ ou /etc/ldap/schema.
White Pages schema - um modelo de dados que descrevem a organizao de entradas em um servio de diretrio. O
nome vem das pginas em branco em um livro de telefone, que contm informaes sobre os indivduos, ao contrrio de
pginas amarelas revelando informaes sobre as empresas. As entradas so ordenadas de acordo com os indivduos
locais, por ordem alfabtica dos seus nomes, etc.
LDIF
O LDAP Data Interchange Format (LDIF) um formato de intercmbio de dados padro para representar o
contedo do diretrio LDAP, bem como atualizao de diretrios (Adicionar, Modificar, Apagar, Mudar o
nome). LDAP um acrnimo para "Lightweight Directory Access Protocol". Ele transmite o contedo do diretrio
como um conjunto de registros, um registro para cada objeto (ou entrada). Representa solicitaes de atualizao como
um conjunto de registros, um registro para cada solicitao de atualizao. Em ambos os casos, os dados so
apresentados sob a forma de texto simples.
Ex.: arquivo empresa.ldif
dn: dc=empresa,dc=com,dc=br
objectClass: top
objectClass: dcObject
objectClass: organization
o: empresa.com.br
dc: empresa
Metadirectory
O termo metadiretrio descreve qualquer soluo que ligue fontes de dados isolados e distintos em um volume
lgico nico. Um sistema metadiretrio prev o fluxo de dados entre um ou mais servios de diretrio e bases de dados,
a fim de manter a sincronizao de dados, e uma parte importante dos sistemas de gesto de identidade.
Os dados a serem sincronizados normalmente so colees de entradas que contm perfis de usurio e
autenticao ou potencialmente poltica de informao.
changetype
A palavra changetype em um arquivo LDIF, chave para modificar as entradas existentes.
X.500
um conjunto de protocolos de apoio aos servios de diretrio. Foi inventado em 1984 pela Unio
Internacional de Telecomunicaes (CCITT). composto dos seguintes protocolos: Directory Access Protocol, do
Sistema de Protocolo, Information Shadowing Protocol Directory, Directory Operational Management Protocol
Bindings. Ele foi desenvolvido com o modelo OSI em mente, ainda possvel hoje em dia para execut-lo em TCP/IP
tambm.
O conceito primrio do X.500 que no h um nico Directory Information Tree (DIT), uma organizao
hierrquica de entradas que distribudo atravs de um ou mais servidores.
Uma entrada consiste de um conjunto de atributos, cada atributo com um ou mais valores. Cada entrada tem
um nico nome distinto, formado pela combinao de seu nome distinto relativo (RDN), um ou mais atributos da
entrada em si, e a RDN de cada uma das entradas superior at a raiz da DIT.
/var/lib/ldap/*
Diretrio do banco de dados do servidor LDAP, este local configurado usando a diretiva directory no arquivo
slapd.conf. Contm os arquivos de banco de dados e ndices.
3
GUIA DE ESTUDOS LPIC 301
301.2 Directory Design (weight: 2)
Description: Candidates should be able to design and implement an LDAP directory, while planning an appropriate
Directory Information Tree to avoid redundancy. Candidates should have an understanding of the types of data which
are appropriate for storage in an LDAP directory
Key Knowledge Areas
Define LDAP directory content
Organize directory
Planning appropriate Directory Information Trees
The following is a partial list of the used files, terms and utilities:
Class of Service
Directory Information Tree
Distinguished name
Container
Class of Service
Classe de servio (COS) - Atributo virtual de servio. Alguns valores de atributos no podem ser armazenados
com a entrada em si prprio, em vez disso ele gerado pela lgica CoS como a entrada enviada para o aplicativo
cliente.
CoS Definition Entry - Identifica o tipo de classe de servio que voc est usando, ele armazenado como uma
entrada secundria LDAP abaixo do ramo em que ele valido.
CoS Template Entry - Esta entrada contm uma lista dos valores de atributo compartilhado, alteraes ao modelo de
valores dos atributos de entrada so aplicadas automaticamente a todas as entradas.
Class of Service Pointer - Identifica o modelo de entrada associado a esta definio CoS, utilizando o modelo do valor
de entrada do DN.
CoS Indirect - Identifica o modelo de entrada usando o valor da entrada de um alvo.
CoS Classic - Identifica o modelo de entrada utilizando tanto o modelo de entrada DN e o valor de um dos atributos da
entrada do alvo.
A Directory Information Tree (DIT) a representao dos dados em uma rvore hierrquica como a estrutura composta
de nomes distintos (DNs) que so as entradas de diretrio.
Em ambos os protocolos X.500 e do Lightweight Directory Access Protocol (LDAP) a utilizao da DIT em sua
estrutura de dados fundamental.
A implantao de uma nica organizao ter uma DIT, que consiste em duas partes:
Os nveis de topo de uma DIT freqentemente representam as divises polticas e geogrficas. O pressuposto inicial de
X.500 que todos os servidores de diretrio sero interligados para formar um espao nico e global.
As entradas no nvel superior da DIT correspondem aos pases, identificado pelo seu cdigo de pas (ISO 3166) de duas
letras. As organizaes de cadastros subordinadas entrada de um pas que corresponderia aos estados ou provncias e
nacional.
Existe inmeras tcnicas para modelar os elementos de uma organizao representada no diretrio (por
exemplo, as pessoas, funes ou dispositivos) em uma DIT. Os fatores determinantes so:
Distinguished name
a identificao de uma entrada do diretrio de forma nica exibindo seu nome e localizao na estrutura.
Ex.: uid=roberto,ou=People,dc=empresa,dc=com,dc=br
RDN
Relative Distinguished name, nome nico dado a um atributo dentro de sua unidade (ou). Pode ser baseado em
um nico atributo (uid) ou ser composto utilizando vrios atributos concatenados com o caractere + como em uid+cn.
RDN somente til quando associado a um DN de forma a identificar uma entrada nica na arvore do Diretrio.
Ex.: uid=roberto
uid=roberto,ou=People,dc=empresa,dc=com,dc=br - (login-based) LDAP e X.500 usam uid que significa "User ID",
para no ser confundido com o nmero de UNIX uid. A maioria das empresas tenta dar a todos os usurios, um nome
para login nico.
5
GUIA DE ESTUDOS LPIC 301
atributos
RDN
Container
Um Container uma classe, uma estrutura de dados, ou um tipo de dados abstratos (ADT), cujas ocorrncias
so colees de outros objetos. Eles so usados para armazenar objetos de forma organizada, seguindo regras de acesso
especfico.
Distributes schema
O contedo das entradas em uma sub-rvore so regidos por um esquema. O esquema define os tipos de
atributos que as entradas de diretrio podem conter. Uma definio de atributo inclui uma sintaxe, e mais os valores
no-binrio.
Exemplos:
Um mail attribute pode conter o valor "user@example.com".
Um jpegPhoto atribute dever conter fotografia (s) em binrio no formato JPEG / JFIF.
Um "member" atribute contm DNs de outras entradas de diretrio.
Um esquema define classes de objetos. Cada entrada deve ter um atributo objectClass, contendo classes
nomeadas definido no esquema. A definio do esquema das classes de uma entrada define que tipo de objeto pode
representar a entrada - por exemplo, uma pessoa, organizao ou domnio. A definio de objeto de classe tambm
atribui entrada a lista que pode e deve conter.
Por exemplo, uma entrada que representa uma pessoa pode pertencer s classes "top" e "person". Na classe
person seria exigir a entrada para conter o SN e CN atributes, e permitir a entrada tambm para conter
userPassword, telephoneNumber", e outros atributos.
Os schemas nada mais so do que arquivos texto contendo uma srie de ObjectClasses. Os ObjectClasses nada
mais so do que um conjunto de atributos, e os atributos nada mais so do que a definio lgica dos campos que
podem ser utilizados em uma base LDAP.Cada schema habilita um determinado tipo informao a ser armazenada na
base. Os schemas so lidos pela base LDAP e assim permite o uso dos campos nele definido.
6
GUIA DE ESTUDOS LPIC 301
Extended schema
Esquema estendido pode ser definido da mesma forma como um esquema normal (estrutural), com a diferena
fundamental que no pode ser usada por conta prpria. Eles s podero ser usados como uma extenso do esquema
normal (estrutural). Esquemas estendidos tambm so chamados esquemas auxiliares.
O identificador do objeto utilizado para definir que tipo de informao poder ser armazenado no atributo.
Trata-se de uma seqncia numrica nica que define os mais diversos tipos de valores. Quando dizemos que nica
estamos explicitando que existe somente uma nica entidade no universo conhecido que emite e gerencia esses
identificadores.
O OID utilizado para identificar objectClass, attribute, sintaxes, matchingrules,protocol mechanisms,
controls, extended operation e supported features, ou seja, todas as partes que formam o LDAP. O OID formado por
uma srie de nmeros separados por pontos (semelhantes a endereos IP) que devem ser lidos da esquerda para a
direita.
Ex.:
2.5.6 # OID of x.500 objectclasses
2.5.6.2 # OID of country objectclass
1.3.6.1.4.1.1446 # Mark Whal (Critical Angle)
1.3.6.1.4.1.311 # microsoft's enterprise OID
1.2.840.113556 # microsoft's us OID
/etc/ldap/schema/*
/etc/ldap/schema o local onde os arquivos que contm os esquemas (estruturais e auxiliares) so normalmente
armazenados.
Ex.:
-rw-r--r-- 1 root root 2084 Out 12 2008 corba.schema
-rw-r--r-- 1 root root 20346 Out 12 2008 core.schema
-rw-r--r-- 1 root root 14030 Out 12 2008 cosine.schema
-rw-r--r-- 1 root root 3378 Out 12 2008 dyngroup.schema
-rw-r--r-- 1 root root 6360 Out 12 2008 inetorgperson.schema
-rw-r--r-- 1 root root 3295 Out 12 2008 java.schema
-rw-r--r-- 1 root root 2471 Out 12 2008 misc.schema
-rw-r--r-- 1 root root 7723 Out 12 2008 nis.schema
-rw-r--r-- 1 root root 1602 Out 12 2008 openldap.schema
-rw-r--r-- 1 root root 4678 Out 12 2008 ppolicy.schema
Descrio do schemas
corba.schema - Define algumas classes de objetos e atributos para manipulao Common Object Request Broker
Architecture (CORBA) objeto referncias em vrias mquinas.
core.schema - Define muitos atributos comuns e classes de objetos. Este esquema onde voc vai encontrar as
organizationalUnit, dcObject, top, e organizationalRole.
cosine.schema - Um esquema para suportar guias de diretrio COSINE e X.500, com base no RFC 1274.
inetorgperson.schema - Define a classe de objeto inetOrgPerson e seus atributos, frequentemente,ente utilizado para
armazenar informaes de contatos.
java.schema - Um esquema usado para armazenar um objeto Java serializado, organizado, java remoto ou uma
referencia JNDI em um diretrio LDAP.
misc.schema - Define um pequeno grupo de objetos mistos e atributos, contem esquemas necessrios para implementar
roteamento de email (LDAP + Sendmail).
nis.schema - Define atributos e objetos necessrios para utilizar LDAP com o NIS.
7
GUIA DE ESTUDOS LPIC 301
openldap.schema - Objetos mistos utilizados pelo prprio OpenLDAP.
ppolicy.schema - Um conjunto de objetos para implementar polticas de senha no LDAP. Algumas destas so tratadas
pelo mecanismo shadow tradicional do UNIX.
Object class
Uma classe de objeto um local contendo um ou vrios atributos. Cada definio de classe de objeto tem um OID
nico. A definio descreve quais atributos so necessrios ou opcionais.
Attribute
Uma definio de atributo descreve o tipo, a sintaxe, comprimento e algumas propriedades adicionais dos dados que
podem ser inseridos em um atributo.
include directive
No slapd.conf a diretiva include usado para informar, quais os arquivos de esquema que devem ser carregados ao
inicializar o daemon slapd.
Ex.:
# Schema and objectClass definitions
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
make
Make um utilitrio usado para compilar programas usando cdigo fonte. O arquivo que especifica as
instrues para o make chamado de Makefile. Make mais comumente usado em C/C + +, mas em princpio pode ser
usado com praticamente qualquer software de projeto.
2 - V at o diretrio criado e, aps ler o README, verifique quais as opes de compilao voc quer ativar e
quais quer desativar
# cd /usr/local/src/openldap-"verso"
# ./configure --help
3 - Utilize o comando con?C gure com as opes desejadas para efetuar a verificao de que todos os requisitos
de compilao esto presentes em seu sistema
# ./configure --with-tls --enable-memberof=mod
8
GUIA DE ESTUDOS LPIC 301
4 - Verifique as dependncias
# make depend
5 - Compile o cdigo
# make
6 - Uma vez compilado o cdigo fonte, podemos testar se tudo ocorreu devidamente
# make test
gpg
O GNU Privacy Guard (GnuPG ou GPG) uma reposio de software livre para a sute de software de
criptografia PGP. GnuPG permite criptografar e assinar os seus dados e comunicao, caractersticas de um sistema de
gesto verstil chave, bem como os mdulos de acesso para todos os tipos de pblico diretrios chave. GnuPG, tambm
conhecido como BPM, uma ferramenta de linha de comando com caractersticas para fcil integrao com outros
aplicativos.
rpm
RPM Package Manager (originalmente Red Hat Package Manager, abreviado RPM) um sistema de
gerenciamento de pacotes. RPM uma ferramenta de software livre que instala, atualiza, desinstala e verifica softwares.
Exemplos de comandos
Instalar pacotes:
# rpm -vih package.rpm
Listar todos os pacotes instalados
# rpm -qa
Informao sobre um pacote instalado
# rpm -qi package
Informao sobre o arquivo rpm do pacote
# rpm -qip package.rpm
Remover um pacote instalado
# rpm -ve package
Atualizao de um pacote
# rpm -vUh package.rpm
Lista de todos os arquivos no pacote
# rpm -ql package
Mostrar qual pacote gerou um determinado arquivo
# rpm -qf /path/to/file
dpkg
dpkg base do sistema de gerenciamento de pacotes Debian. Foi criado por Ian Jackson em 1993, pacotes
dpkg so similar ao RPM, como ele usado para instalar, remover e fornecer informaes sobre arquivos .deb. dpkg
uma ferramenta de baixo nvel, ferramentas de mais alto nvel, como o APT, so utilizados para buscar os pacotes a
partir de locais remotos ou lidar com informaes complexas sobre dependncias
Exemplos de comandos
Instalar pacotes:
# dpkg -i package.deb
Listar todos os pacotes instalados
# dpkg -l
Informao sobre um pacote instalado
# dpkg -s package
Informao sobre o arquivo deb do pacote
# dpkg -I package.deb
Remover um pacote instalado
# dpkg -e package
Lista de todos os arquivos no pacote
# dpkg -L package
Mostrar qual pacote gerou um determinado arquivo
# dpkg -S /path/to/file
9
GUIA DE ESTUDOS LPIC 301
bdb
BDB tem alto desempenho, incorporado biblioteca do banco de dados com ligaes a C, C + +, Java, Perl,
Python, Ruby, Tcl, Smalltalk e muitas outras linguagens de programao. BDB pode suportar milhares de tpicos
simultneos de controles ou processos simultneos, possvel manipular bases de dados to grandes quanto 256
terabytes, em uma grande variedade de sistemas, incluindo mais UNIX-like e Windows como sistema operacional. BDB
pode ser usado como backend para slapd.
slapd
Stand-alone LDAP Daemon
slapd -d debug-level - Especifica o nvel de log a ser utilizado para informaes de registro
Ex.: slapd -d 64
-h URI_list - Especifica uma lista separada por espao de URIs do LDAP que o daemon deve servir. Os URIs mais
comuns so ldap:/// (LDAP na porta 389), ldaps:/// (LDAP sobre SSL na porta 636) e ldapi:/// (LDAP sobre IPC)
Ex.: slapd -h ldap:/// ldaps:/// ldapi:///
slapd -l syslog-local-user - Especifica o usurio local da facilidade do syslog. O valor padro LOCAL4
slapd -r diretory - Especifica um diretrio chroot jail para ser usado pelo slapd
slapd -s syslog level - Define um nvel de syslog em vez do nvel padro para se logar todas as mensagens do syslog
slapd -c cookie - Esta opo fornece um cookie para o servidor slave para replicao syncrepl.
slapd -T {a:c:d:i:p:t:acl:auth} - Executado no modo Tool. O argumento adicional escolhe se deseja executar como
slapadd, slapcat, slapdn, slapindex, slappasswd, ou slaptest.
slurpd
Stand-alone LDAP Update Replication Daemon.
slurpd -f config filename - Especifica o local e nome do arquivo de configurao slapd.conf a ser usado.
slurpd -r replogfile - Especifica o local e nome do arquivo do registro de replicao a ser processado.
slurpd -o - Executa o slurpd no modo nico para processar um nico registro de replicao e sair.
slurpd -t directory - Especifica o diretrio a ser usado para arquivos temporrios, como arquivos de trava e status.
slurpd -k srvtab file - Especifica o local do arquivo srvtab ao usar vinculaes do LDAPv2 Kerberos 4 a um servidor
slapd slave.
10
GUIA DE ESTUDOS LPIC 301
302.2 Developing for LDAP with Perl/C++ (weight: 1)
Description: Candidates should be able to write basic Perl scripts to interact with an LDAP directory
Key Knowledge Areas
Syntax of Perl's Net::LDAP module
Write Perl scripts to bind, search, and modify directories
The following is a partial list of the used files, terms and utilities:
Net::LDAP
Perl
C++
Net:: LDAP
Net:: LDAP uma coleo de mdulos que implementa um servio LDAP API para programas Perl. O mdulo
pode ser utilizado para pesquisas em diretrios ou executar funes de manuteno tais como adicionar, excluir ou
modificar entradas.
O mdulo Net:: LDAP por padro no fornecido com o Perl, para instalar use o gerenciador de pacotes
conforme a sua distribuio. Ex.: aptitude install libnet-ldap-perl ?(Debian)
Uma outra maneira de instalao baix-lo da Comprehensive Perl Archive Network (CPAN). Como usurio root digite
# perl -MCPAN -e shell
cpan> install Net::LDAP
cpan> exit
#!/usr/bin/perl
use Net::LDAP;
# Criar o objeto e abre uma conexo com o servidor ldap
$ldap = Net::LDAP->new( 'server.empresa.com.br' ) or die "$@";
A primeira operao que voc deve fazer fazer login, atravs da funo bind do objeto criado anteriormente
$ldap. Tambm verificado erros na autenticao usando o mtodo code e error.
# Verifique erros
$mesg->code && die $mesg->error;
A procura feita atravs da funo search. Como na funo bind, voc deve passar alguns parmetros e
verificar o resultado de sua consulta. Tambm verificado erros na pesquisa usando as funes code e error.
# Efetuar pesquisa
$mesg = $ldap->search(
base => "ou=People,dc=empresa,dc=com,dc=br",
filter => "(uid=*)"
);
11
GUIA DE ESTUDOS LPIC 301
# Verifique erros
$mesg->code && die $mesg->error;
# Imprimir resultados
foreach $entry ($mesg->entries) { $entry->dump; }
As alteraes na base de dados LDAP, so feitas atravs da funo modify e changes (add, delete e replace),
Tambm verificado erros na pesquisa usando as funes code e error.
# # Verifique erros
$mesg->code && die $mesg->error;
# Encerra a conexo
$mesg = $ldap->unbind;
#!/usr/bin/perl
use Net::LDAP;
# Cria o objeto e abre uma conexo com o servidor ldap
$ldap = Net::LDAP->new( 'server.empresa.com.br' ) or die "$@";
# Verifique erros
$mesg->code && die $mesg->error;
# Efetuar pesquisa
$mesg = $ldap->search(
base => "ou=People,dc=empresa,dc=com,dc=br",
filter => "(uid=*)"
);
# Verifique erros
$mesg->code && die $mesg->error;
# Imprimir resultados
foreach $entry ($mesg->entries) { $entry->dump; }
# # Verifique erros
$mesg->code && die $mesg->error;
12
GUIA DE ESTUDOS LPIC 301
# Encerra a conexo
$mesg = $ldap->unbind;
Perl
Perl uma linguagem de programao dinmica criada por Larry Wall e lanada em 1987. Perl pegou
emprestadas caractersticas de uma variedade de outras linguagens, incluindo C, shell script (sh), awk, sed e Lisp.
Estruturalmente, o Perl baseado no estilo bloco delimitado por parnteses do AWK e C, e foi amplamente
adotado para os seus pontos fortes na cadeia de processamento e falta de limitaes arbitrrias de muitas linguagens de
script no momento.
C++
C + + uma linguagem de programao de propsito geral, com alto nvel e as capacidades de baixo nvel. C
+ + considerada como uma linguagem de nvel mdio. Isto indica que o C + + inclui uma combinao de ambos de
alto nvel e caractersticas da linguagem de baixo nvel.
ACL
Lista de Controle de Acesso uma lista de permisses associadas a um objeto. A lista define o nvel de acesso
que cada usurio ter para cada tipo de informao na base de dados.
slapd.conf
Sintaxe:
access to <o que>
[ by <quem> [ <acesso> ] [ <controle> ] ]+
Ex.:
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by anonymous auth
by self write
by * none
13
GUIA DE ESTUDOS LPIC 301
Entidades
anonymous
Annimo descreve acesso ao diretrio quando o usurio est conectado sem autenticar-se.
users
Qualquer pessoa que tenha se autenticado com o servidor de diretrio.
self
limitar o acesso dos usurios aos objetos que so de propriedade do usurio.
*
Todos
Nveis de acesso
none
Nenhum meio de acesso ou no tem permisso.
auth
Controla se o usurio pode autenticar com o servidor de diretrio
compare
Controla se o usurio pode realizar uma comparao.
search
Controla se o usurio pode realizar uma busca em todo o DN ou especificado.
read
Controles de informaes se um usurio pode ler a partir do Diretrio.
write
Controla se o usurio pode gravar dados no Diretrio.
Replication concepts
A replicao a tcnica de duplicao de dados entre vrios diretrios para o desempenho, escalabilidade e
redundncia. uma maneira de trazer vrias reas geogrficas em conjunto em um diretrio da empresa. Estas vrias
cpias so mantidas em sincronia com um ou mais servidor de diretrio principal chamado de master ou de servidor
gravvel e um ou mais slave ou rplica.
14
GUIA DE ESTUDOS LPIC 301
Atravs da replicao, uma alterao feita em um diretrio propagada para um ou mais diretrios adicionais.
Com efeito, uma mudana para um diretrio aparece em vrios diretrios diferentes.
Vantagens principais:
Confiabilidade:
Cpias de segurana dos servidores e dados podem ser restaurado a partir de replicas caso todos os dados so
perdidos devido a alguma falha catastrfica. Com vrios servidores master voc tambm ter um backup para assumir
se o primeiro parar.
Performance:
Solicitaes de pesquisa de clientes pode ser distribudo em todos os servidores masters, em vez de um nico,
reduzindo assim a resposta de tempo, consequentemente aumentando o desempenho. Com mltiplos servidores masters
voc tambm ser capaz de distribuir aplicativos para masters diferentes, assim diminuindo as tarefas de escrita.
Slurpd
Slurpd um servio que fornece a capacidade de um servidor master slapd propagar alteraes para servidores
slave, criando um esquema de replicao. Slurpd executado na mesma mquina que o servidor master slapd.
2 - Pare o servidor slapd e altere a configurao do servidor master para habilitar o log de rplica
# /etc/init.d/slapd stop
slapd.conf
replogfile /var/lib/ldap/replog
replica uri=ldap://slave.empresa.com.br:389
suffix="dc=empresa,dc=com,dc=br"
binddn="cn=Replicator,dc=empresa,dc=com,dc=br"
credentials=123456
bindmethod=simple
tls=yes
5 - No servidor slave pare o slapd, remova a base inicial, importe os dados do arquivo base.ldif e arrume as
permisses de /var/lib/ldap/*
# /etc/init.d/slapd stop
# rm -i /var/lib/ldap/* (no apague o arquivo DB_CONFIG)
# slapadd -v -c -l base.ldif
# chown openldap: /var/lib/ldap/*
15
GUIA DE ESTUDOS LPIC 301
6 - Configurar ACLS no servidor slave (slapd.conf) e referencia ao master
access to attrs=userPassword,shadowLastChange
by dn="cn=Replicator,dc=empresa,dc=com,dc=br" write
by anonymous auth
by self write
by * none
access to *
by dn="cn=Replicator,dc=empresa,dc=com,dc=br" write
by * read
updatedn cn=Replicator,dc=empresa,dc=com,dc=br
updateref ldap://server.empresa.com.br
master/slave server
Um servidor de diretrio (master) tem a funo de gravao de dados. Um ou mais servidores de diretrio
(slave) tem cpias somente para leitura dos dados. Atravs do processo de replicao as atualizaes so distribudas a
partir do servidor de diretrio master para os servidores de diretrio slave. Quando um cliente tenta a atualizao
usando os servidores slave, ele redirecionado ao servidor master.
one-shot mode
Quando h uma falha na replicao por problemas de conexo com o servidor slave, criado um arquivo com
o nome ou ip do servidor com a extenso .rej contendo as informaes que no foram replicadas.
Para reenviar replicao manual use o comando slurpd indicando o arquivo a ser processado (-r) em modo
one-shot usando o parmetro -o.
# slurpd -r /var/spool/slurpd/slave.empresa.com.br.rej -o
referral
1 - O cliente envia modificao para rplica;
2 - A rplica retorna um referral (link) do master para o cliente;
3 - O cliente reenvia a modificao para o master;
4 - Master retorna o resultado para o cliente;
5 - Master atualiza as mudanas para a rplica.
16
GUIA DE ESTUDOS LPIC 301
syncrepl
O Syncrepl basicamente um sistema de replicao que ativado e controlado pelo servidor slave, ou seja, a
responsabilidade de manter a replicao, ?
ca no cliente e no no servidor. Outro aspecto importante o fato de que se a
conexo entre o servidor master e o servidor slave for interrompida por algum tempo e depois restaurada.
D) Adicione uma ACL que permita o usurio Replicator possa ler os atributos userPassword e shadowLastChange
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by dn="cn=Replicator,dc=empresa,dc=com,dc=br" read
17
GUIA DE ESTUDOS LPIC 301
Opes:
push-base synchronization - Mtodo que aps a primeira sincronizao, o servidor slave monitora o servidor master
de tempos em tempos comparando as duas bases, e atualizando o que foi modificado.
Ex.: type=refreshOnly
refreshAndPersist - Comea como o refreshOnly, mas ao invs de desligar servidor slave permanece conectado para
receber quaisquer atualizaes.
Ex.: type=refreshAndPersist
18
GUIA DE ESTUDOS LPIC 301
SSL / TLS
Secure Socket Layer (SSL) - Protocolo de camada de segurana que prov a privacidade e a integridade de dados entre
duas aplicaes que estejam se comunicando via internet ou intranet. A porta em que o servio trabalha deve ser
diferente do padro.
Transport Layer Security (TLS) - Criptogra?ra na camada de transporte, pode ser ativado sem a necessidade de
alterao da porta do servio.
Configurao do Servidor:
5 - Configure as ACLS
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by anonymous ssf=56 auth
by self ssf=56 write
by * none
Configurao do Cliente:
19
GUIA DE ESTUDOS LPIC 301
SSF = 0 - Define que a proteo est desativada e 1 ativada.
Encriptao DES - SSF = 56
Encriptao 3DES - SSF = 112
Encriptao AES - SSF = 128, 192 ou 256
Ex.:
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by anonymous ssf=56 auth
by self ssf=56 write
by * none
SASL
Simple Authentication and Security Layer (SASL)- uma estrutura de autenticao e segurana de dados em
protocolos de Internet. Ele separa os mecanismos de autenticao de protocolos de aplicao. Protocolos de aplicao
que suportam SASL normalmente tambm tem suporte ao Transport Layer Security (TLS) para complementar os
servios oferecidos pelo SASL.
3. Reinicie o saslauthd:
# /etc/init.d/saslauthd restart
proxy authorization
O SASL oferece um recurso conhecido como proxy authorization (autorizao de proxy) que permite a
autorizao entre um usurio intermedirio o usurio final e o servidor LDAP. Este usurio intermedirio far pedidos
em nome do usurio final. Um exemplo quando se utiliza uma interface web, onde um usurio pode alterar sua senha.
A aplicao web se conecta com um nome de usurio (cn=webproxy,dc=empresa,dc=com,dc=br) mas atravs de
ACLs que dada a permisso para fazer alteraes de outro usurio. O servidor LDAP acha que o prprio usurio
final, que est realizando os pedidos.
Para tornar o trabalho autorizao proxy, o administrador de LDAP pode adicionar os seguintes atributos de
entradas LDAP:
cn=webproxy,dc=empresa,dc=com,dc=br
authzTo: ldap:///dc=empresa,dc=com,dc=br??sub?(objectclass=person)
StartTLS
Permite que o cliente solicite uma camada de transporte segura antes de se vincular a um servidor LDAP. O
trafego de dados continua sendo enviada pela porta padro 389, diferente do ldaps:/// que usa a porta 636.
20
GUIA DE ESTUDOS LPIC 301
Ex.: ldap.conf
ssl start_tls
slapd.conf
TLSCipherSuite TLS_RSA_AES_256_CBC_SHA
TLSCACertificateFile /etc/ldap/ssl/cacert.pem
TLSCertificateFile /etc/ldap/ssl/ldap.pem
TLSCertificateKeyFile /etc/ldap/ssl/ldap.key
iptables
LDAP utiliza a porta TCP 389, e LDAPS (LDAP sobre SSL) usa a porta TCP 636. Se voc tiver um firewall
entre os servidores e seus clientes, estas portas devem ser autorizadas atravs do firewall:
TCP Wrappers
/etc/hosts.deny
slapd: ALL
/etc/hosts.allow
slapd: 192.168.1.,127.0.0.1
index
Melhora o desempenho das consultas feitas base LDAP criando ndices.
Sintaxe:
attrlist - Pode ser um nico atributo ou uma lista separada por vrgulas.
default - Valor padro deve ser definido antes de qualquer ndice
indices = [pres [,approx] [,eq] [,sub] [,special]]
Ex.:
index mail pres,eq,sub
21
GUIA DE ESTUDOS LPIC 301
Tipos de indexador Significado
slapd.conf
cachesize - A diretiva define o nmero de entradas que o backend LDAP ir manter na memria.
dbnosync - A diretiva especifica que os bancos de dados no precisam ser atualizados de imediato quaisquer registros
em memria.
Ex.: dbnosync
dirtyread - A diretiva permite retornar dados na memria que ainda podem no ter sido escritos para o disco.
Ex.: dirtyread
DB_CONFIG
Parmetros de configurao do BDB usados para melhorar o desempenho no servidor LDAP. Podem ser
informados no slapd.conf ou no arquivo DB_CONFIG.
Define o cache em memria para nomes de arquivos, deve ser ampliado quando o numero de tables e ndices
aumentarem.
set_lg_regionmax 1048576
Para importaes em modo batch, desabilitar os logs aum aumenta drasticamente a performance do servidor
set_flags DB_TXT_NOT_DURABLE
22
GUIA DE ESTUDOS LPIC 301
303.6 OpenLDAP Daemon Configuration (weight: 2)
Description: Candidates should have knowledge of the common slapd.conf configuration directives, and be familiar
with the basic slapd command line options
Key Knowledge Areas
slapd.conf configuration directives
slapd.conf database definitions
slapd and its command line options
Analyze slapd log files
The following is a partial list of the used files, terms and utilities:
slapd.conf
slapd
/var/lib/ldap/*
loglevel
slapd.conf
Arquivo padro de configurao do slapd.
Diretivas:
Esta opo permite o uso da verso 2 do protocolo LDAP. Muito til, pois alguns servios utilizam somente essa verso.
allow bind_v2
E nesta parte onde se incluem os arquivos de schema para que os objetos e seus atributos estejam disponveis
para uso. H uma linha para cada schema e seu caminho completo.
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
Onde ser salvo o arquivo contendo o PID do processo de execuo do OpenLDAP. Se voc mudar esta opo
o script de inicializao em /etc/init.d no conseguir parar o servio.
pidfile /var/run/slapd/slapd.pid
O OpenLDAP permite que alguns argumentos sejam passados no momento de sua execuo. Esses argumentos
devem ser definidos no arquivo nesta opo.
argsfile /var/run/slapd/slapd.args
Nvel de registro de atividades no OpenLDAP. O nvel 0 determina que no se faa registro de atividades.
loglevel none
Esta opo define o diretrio dos mdulos do OpenLDAP, alm da sua ativao. Esses mdulos permitem a
ativao de recursos extras. Diversos recursos como o ppolicy que permite definies elaboradas de polticas de
acesso e o syncprov que permite a ativao de uma das formas de replicao so exemplos de mdulos.
modulepath /usr/lib/ldap
moduleload back_bdb
moduleload syncprov
Esta opo define o retorno mximo a uma consulta feita na base OpenLDAP. Portanto se alguma pesquisa
tiver que retornar mais do que 500 resultados necessrio aumentar este valor. Se o valor de sizelimit for definido como
-1 ento o retorno ser ilimitado.
sizelimit 500
Esta opo define o nmero de CPUs que sero utilizadas para a indexao da base de dados. Se o servidor
tiver mais de um processador, aumente este nmero.
tool-threads 1
Esta opo define qual ser o backend que ser utilizado. Por padro utiliza-se bdb.
backend bdb
Esta opo ativa a primeira base de dados. Neste caso iremos utilizar BDB.
database bdb
23
GUIA DE ESTUDOS LPIC 301
O sufixo define a raiz da base de dados do LDAP
suffix "dc=empresa,dc=com,dc=br"
Define a senha do administrador da base de dados em forma de criptografia (use o comando slappasswd)
rootpw {SSHA}xzJGq8ltnmC1kN8pkePPzNyKdLqQ01qw
Ativa o registro do horrio de alterao das entradas da base de dados. til para replicaes e backup
lastmod on
Este um ajuste fino operao da base de dados BDB. Esta diretiva define quando o BDB deve adicionar um
ponto de checagem em seus logs de transao. Neste caso depois de 512 Kbytes ou aps 30 minutos desde a ultima
checagem, o que acontecer primeiro.
checkpoint 512 30
Lista de controle de acessos (ACL) base de dados - Ver Topic 303: Configuration (Access Control Lists in LDAP)
access to attrs=userPassword,shadowLastChange
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by dn="cn=Replicator,dc=empresa,dc=com,dc=br" read
by anonymous auth
by self write
by * none
access to *
by dn="cn=admin,dc=empresa,dc=com,dc=br" write
by * read
slapd
Stand-alone LDAP Daemon
Opes de linha de comando - Ver Topic 302: Installation and Development (Compiling and Installing OpenLDAP)
/var/lib/ldap/*
Diretrio do banco de dados do servidor LDAP, este local configurado usando a diretiva directory no arquivo
slapd.conf. Contm os arquivos de banco de dados e ndices.
24
GUIA DE ESTUDOS LPIC 301
loglevel
Diretiva usada no arquivo slapd.conf que determina o nvel de registros de atividades desejados. O
OpenLDAP tem nveis diferentes que so definidos por um nmero. Veja a tabela abaixo:
25
GUIA DE ESTUDOS LPIC 301
Ex.: ldapsearch -x -LLL -b ou=People,dc=empresa,dc=com,dc=br -h localhost -p 389
Index
Melhora o desempenho das consultas feitas base LDAP criando indices.
Operadores lgicos
Operadores comparativos
= para igual;
= para igualdades aproximadas;
<= para menor ou igual;
>= para maior ou igual;
* para qualquer;
slapd.conf
Configurao de indices no arquivo slapd.conf
26
GUIA DE ESTUDOS LPIC 301
ldap.conf
Arquivo usado para configurao nas maquinas clientes LDAP.
ldapsearch
Realiza pesquisa na base LDAP. Opes:
ldapadd
Adicione informaes base do LDAP, com o servidor em funcionamento. Opes:
ldapmodify
Permite fazer alteraes nos atributos de um objeto atravs de uma arquivo .ldif
27
GUIA DE ESTUDOS LPIC 301
Tipos de alteraes usadas no arquivo .ldif:
ldapdelete
Permite remover um objeto especificando o seu DN completo.Opes:
ldapmodrdn
Permite renomear um DN.Opes:
28
GUIA DE ESTUDOS LPIC 301
slapindex
Comando utilizado para indexar a base LDAP seguindo as definies da opo index do arquivo slapd.conf.
slapadd
Comando usado para adicionar dados off-line base LDAP (quando o servidor no esta rodando) Opes:
slapcat
Lista o contedo da base de dados. Usado tambm para criar backup redirecionando a sada da lista para um arquivo.
Opes:
Ex.: slapcat
slapcat > backup.ldif
whitespages
Um servio whitepages permite que clientes de e-mail (Mozilla Thunderbird e Microsoft Outlook) recuperem
informaes de contatos de uma base de dados LDAP.
29
GUIA DE ESTUDOS LPIC 301
Thunderbird (Icedove)
1 - Clique no menu ferramentas - Catalogo de endereos
2 - Menu arquivo - Novo - Diretrio LDAP ... e preencha as configuraes conforme seu servidor (clique no OK)
3 - Na parte esquerda da tela, clique com o boto direito do mouse sobre Servidor LDAP e escolha propriedades.
Clique sobre a guia Offline e selecione Receber agora
30
GUIA DE ESTUDOS LPIC 301
4 - Clique sobre a guia Avanado e selecione quantos registros sero exibidos no resultado de pesquisa, e quais
atributos sero usados como filtro de pesquisa
31
GUIA DE ESTUDOS LPIC 301
Outllok
Usado como cliente de email e catlogos de endereos.
Outlook LDAP
Nome cn, display-name
Primeiro Nome givenName
Nome do Meio initials
Ultimo Nome sn
Exibir cn, display-name
Endereo de email mail
Telefone Residencial homePhone
Endereo homePostalAddress
Pager officePager, pager
Mobile mobile
Telefone Comercial telephoneNumber
FAX Comercial officeFAX, facsimileTelephoneNumber
Cargo title
Departamento department, organizationUnitName, ou
Escritrio physicalDeliveryOfficeName
Nome da empresa o, organizationName
Cidade l
Estado st
CEP postalCode
Pas/Regio c, co, countryName
1 - No menu Ferramentas, clique em Contas de email ... e clique na opo Diretrio e clique em Adicionar um
novo catlogo de endereos ou diretrio
32
GUIA DE ESTUDOS LPIC 301
2 - Clique na opo Servio de Diretrio na Internet (LDAP) e clique em Avanar.
4 - Se o servidor especificado estiver protegido por senha, marque a caixa de seleo Este servidor requer que eu
faa o logon e digite seu nome de usurio e sua senha.
6 - Em Nome para Exibio, digite o nome do catlogo de endereos LDAP que voc deseja exibir na lista
Catlogo de Endereos da caixa de dilogo Catlogo de Endereos.
33
GUIA DE ESTUDOS LPIC 301
8 - Na guia Pesquisar, em Base de Pesquisa, digite o DN da base que ser feita s pesquisas
9 - A configurao do tempo limite de pesquisa em segundos especifica o nmero de segundos gastos pelo
Outlook pesquisando o diretrio LDAP para determinar nomes em uma mensagem. Voc tambm pode limitar o
nmero de nomes listados no Catlogo de Endereos retornados de uma pesquisa bem-sucedida.
10 - Feche o Outlook e o abra novamente e clique no menu Ferramentas, clique em Catalogo de endereos e
escolha ServidorLDAP em Mostrar nomes de:
11 - No menu Ferramentas, clique em Catalogo de endereos, digite o nome do usurio na caixa Nome: e
selecione Contm ou Comea com dependendo do tipo de pesquisa
34
GUIA DE ESTUDOS LPIC 301
PAM
PAM Pluggable Authentication Modules. Enquanto NSS um servio de informaes, o PAM um
mecanismo para executar um conjunto de algoritmos de autenticao de credenciais digitadas pelo usurio, e determinar
a sua identidade e o direito de acesso a um recurso (por exemplo, login em uma mquina).
O Pluggable Authentication Module permite a integrao de diversas tecnologias de autenticao, tais como
padro UNIX , RSA, DCE, LDAP, etc . Em servios do sistema, tais como login, senhas, rlogin, su, ftp, ssh, etc, sem
alterar qualquer um destes servios.
NSS
Name Service Switch prove uma interface de entrada para arquivo de senhas e de grupo para um servio de
nomes (como arquivos simples, ou um diretrio LDAP, ou mesmo um controlador de domnio do Windows.
Uma vez que um usurio autenticado, muitas aplicaes ainda precisam de acesso a informaes do usurio.
Esta informao tradicionalmente contidos em arquivos de texto (/etc/passwd, /etc/shadow e /etc/group), mas tambm
pode ser fornecida pelos servios de outro nome. NSS utiliza uma API comum e um arquivo de configurao
(/etc/nsswitch.conf), em que os prestadores de servio de nomes para cada base de dados que so suportados so
especificados.
35
GUIA DE ESTUDOS LPIC 301
passwd: User passwords.
rpc: Remote procedure call names and numbers.
services: Network services.
shadow: Shadow user passwords.
/etc/pam.d/*
Para integrar o PAM ao LDAP necessrio configurar alguns arquivos localizados dentro do diretrio
/etc/pam.d
# vim /etc/pam.d/common-auth
auth sufficient pam_ldap.so
# vim /etc/pam.d/common-password
password required pam_ldap.so try_first_pass
# vim /etc/pam.d/common-session
session sufficient pam_ldap.so
/etc/nsswitch.conf
O arquivo nsswitch.conf responsvel por dizer a ordem de pesquisa de alguns parmetros do linux, como
resoluo de nomes e usurios:
NIS
O Servio de Rede de Informao ou NIS (Originalmente chamado de Yellow Pages ou YP) um servio,
desenvolvido pela Sun Microsystems, para distribuio de informaes por uma rede. Facilita a administrao do
ambiente Linux/Unix, pelo fato de manter uma base de dados centralizada na rede, o que torna a manuteno e
consistncias mais fceis.
A base de dados NIS criada a partir de tabelas (plain text database), tal como /etc/passwd, /etc/shadow e
/etc/group. O NIS tambm pode ser utilizado para outras tarefas mais especializadas (como para /etc/hosts ou
/etc/services).
36
GUIA DE ESTUDOS LPIC 301
Neste ambiente NIS, os arquivos de mapa mestre residem no servidor master NIS. Cpias desses arquivos de
mapas so periodicamente transferidos para o servidor slave NIS. Os servidores NIS executar o daemon ypserv que
serve as informaes solicitadas pelos clientes.
Os clientes NIS rodam o daemon ypbind, que estabelece uma conexo com um servidor NIS, permitindo
processos ao cliente para obter informaes do servidor NIS. Os usurios podem alterar suas senhas com o comando
yppasswd.
NIS utiliza mapas para combinar todas as informaes para usurios, grupos e autenticao. Os mapas so
geralmente localizados em /var/yp/<nomededomnio>. Usando o comando ypwhich -m, podemos ver quais mapas esto
presentes no servidor master. Esta informao ajuda no planejamento de uma migrao para o LDAP. Determine quais
dos seus mapas NIS vai migrar para o seu diretrio. Nas maquinas clientes, o arquivo /etc/nsswitch.conf determina,
quais arquivos NIS que o cliente est usando.
Analisar a estrutura NIS, e decidir onde colocar as informaes no seu diretrio. Aqui esto algumas possibilidades:
Criar uma sub-arvore separado para os dados do NIS - Os scripts de migrao pode importar os seus dados de
NIS para sub-arvore em separado.
Integrar as informaes em seu diretrio NIS - Os scripts de migrao pode ser til dependendo de onde voc
colocar os dados NIS em seu diretrio. Voc pode us-los apenas para gerar LDIF, editar o LDIF, em seguida, importar
o LDIF em seu diretrio.
Os scripts exigem Perl, que se supe estar em /usr/bin/perl. Voc pode precisar editar o caminho para o
interpretador Perl se este no for o caso. As ferramentas de migrao esto disponveis separadamente no site PADL via
FTP. A instalao dos scripts pode ser feita instalando o pacote migrationtools. Aps a instalao ser criado o diretrio
migrationtools em /usr/share/. O arquivo migrate_common.ph onde so includas as configuraes do servidor LDAP .
37
GUIA DE ESTUDOS LPIC 301
# ls -l /usr/share/migrationtools/*.pl
-rwxr-xr-x 1 root root 2626 Jan 25 2006 /usr/share/migrationtools/migrate_aliases.pl
-rwxr-xr-x 1 root root 3252 Jan 25 2006 /usr/share/migrationtools/migrate_automount.pl
-rwxr-xr-x 1 root root 2707 Jan 25 2006 /usr/share/migrationtools/migrate_base.pl
-rwxr-xr-x 1 root root 2836 Jun 29 2008 /usr/share/migrationtools/migrate_group.pl
-rwxr-xr-x 1 root root 2725 Jan 25 2006 /usr/share/migrationtools/migrate_hosts.pl
-rwxr-xr-x 1 root root 2830 Jan 25 2006 /usr/share/migrationtools/migrate_netgroup_byhost.pl
-rwxr-xr-x 1 root root 2830 Jan 25 2006 /usr/share/migrationtools/migrate_netgroup_byuser.pl
-rwxr-xr-x 1 root root 3853 Jan 25 2006 /usr/share/migrationtools/migrate_netgroup.pl
-rwxr-xr-x 1 root root 2814 Jan 25 2006 /usr/share/migrationtools/migrate_networks.pl
-rwxr-xr-x 1 root root 11511 Jun 29 2008 /usr/share/migrationtools/migrate_passwd.pl
-rwxr-xr-x 1 root root 2402 Jan 25 2006 /usr/share/migrationtools/migrate_profile.pl
-rwxr-xr-x 1 root root 2786 Jan 25 2006 /usr/share/migrationtools/migrate_protocols.pl
-rwxr-xr-x 1 root root 2758 Jan 25 2006 /usr/share/migrationtools/migrate_rpc.pl
-rwxr-xr-x 1 root root 10546 Jun 29 2008 /usr/share/migrationtools/migrate_services.pl
-rwxr-xr-x 1 root root 3393 Jan 25 2006 /usr/share/migrationtools/migrate_slapd_conf.pl
migrate_aliases.pl - Migra aliases em /etc/aliases para as entradas em conformidade com o esquema rfc822MailGroup
migrate_automount.pl - Migra mapas de automount
migrate_base.pl - Cria entradas na base de dados, incluindo contextos subordinados, tais como ou=People e ou=Hosts
migrate_group.pl - Migra os grupos do arquivo /etc/group
migrate_hosts.pl - Migra os hosts do arquivos /etc/hosts
migrate_netgroup_byhost.pl - Migra o mapa netgroup.byuser
migrate_netgroup_byuser.pl - Migra o mapa netgroup.byuser
migrate_netgroup.pl - Migra netgroups do arquivo /etc/netgroup
migrate_networks.pl - Migra as redes do arquivo /etc/networks
migrate_passwd.pl - Migra os usurios do arquivo /etc/passwd
migrate_profile.pl - Cria uma entrada perfil de configurao POSIX DUA
migrate_protocols.pl - Migra protocolos do arquivo /etc/protocols
migrate_rpc.pl - Migra RPCs do arquivo /etc/rpc
migrate_services.pl - Migra servios do arquivo /etc/services
migrate_slapd_conf.pl - Cria um arquivo de configurao do OpenLDAP 2.x
Penrose
Sun's Network Information Service (NIS) to LDAP transition service (N2L service)
ypldapd (from PADL)
YPTransitd
38
GUIA DE ESTUDOS LPIC 301
O diagrama a seguir mostra como um ambiente NIS pode parecer quando convertido para NIS/LDAP Gateway
1 - Um diretrio LDAP substitui o servidor NIS master e mapas NIS. Mapa e transferncias de arquivos de mapas no
so mais necessrios. Replicao LDAP utiliza as atualizaes mais eficientes.
2 - Todos os servidores NIS se tornam servidores NIS/LDAP Gateway. O servidor NIS/LDAP Gateway executar o
daemon ypldapd, ao invs do daemon ypserv. ypldapd solicita informaes do diretrio LDAP envia as informaes
para os clientes NIS.
3 - Clientes NIS continuam a executar o daemon ypbind, que estabelece uma ligao a um servidor NIS/LDAP
Gateway, permitindo processos ao cliente para obter informaes do diretrio LDAP.
4 - Usurios alteram suas senhas com o comando ldappasswd ou um uma ferramenta de administrao LDAP em um
navegador web, ao invs do comando yppasswd.
slapd.conf
No arquivo de configurao do LDAP, inclua a linha de referencia ao arquivo de esquema do NIS. D o
usurio ypldapproxy acesso de leitura para todas as informaes.
access to dn=".*,dc=empresa,dc=com,dc=br"
by dn="uid=ypldapproxy,ou=People,dc=empresa,dc=com,dc=br" read
/etc/yp/*
ypldapd.conf - Arquivo de configurao do NIS/LDAP Gateway (ypldapd de PADL) onde voc pode alterar os valores
dos parmetros de configurao.
39
GUIA DE ESTUDOS LPIC 301
## Servidor domnio NIS
ypdomain server.empresa.com.br
## Servidor LDAP
ldaphost 192.168.200.10
## Base de pesquisa
basedn dc=empresa,dc=com,dc=br
## Ativar cache
caching on
## caches de despejo a cada meia hora.
cache_dump_interval 30
## Use o arquivo padro para mapeamento de nome de NIS para DN em seu diretrio LDAP.
namingcontexts namingcontexts.conf
## Definir um DN utilizado para a ligao ao servidor LDAP.
binddn uid=ypldapproxy,ou=People,dc=empresa,dc=com,dc=br
## Incluir a senha em texto puro para o binddn
bindcred 123456
## Esconde o campo de senha aos usurios sem privilgios.
hide_passwords on
Configurao do Servidor:
4 - Instale o pacote nis no servidor, e informe o domnio(empresa.com.br) quando pedir para informar domnio
NIS
# aptitude install nis
empresa.com.br
5 - Para configurar o nome do domnio NIS use o comando nisdomainname nomedodominio. Ao usar apenas o
comando sem nenhuma opo ser exibido o nome do domnio configurado no arquivo /etc/defaultdomain
# nisdomainname
empresa.com.br
# cat /etc/defaultdomain
empresa.com.br
6 - Edite o arquivo /etc/ypserv.conf, atravs dele voc pode definir algumas opes para o servidor de NIS,
possvel negar ou restringir o acesso a alguns mapas com base no host de origem.
# vim /etc/ypserv.conf
# Este o padro - restringir o acesso ao arquivo de senhas shadow, e permite acesso a todos os outros.
* :* : shadow.byname : port
* :* : passwd.adjunct.byname : port
* :* :* : none
40
GUIA DE ESTUDOS LPIC 301
7 - Para que o servidor de NIS no possa ser acessado fora da sua rede local, edite o arquivo
/etc/ypserv.securenets
# vim /etc/ypserv.securenets
NISSERVER=master
NISCLIENT=false
9 - Para criar o diretrio do domnio NIS use o comando /usr/lib/yp/ypinit -m e <control D> para confirmar o
FQDN de sua maquina, tecle y para confirmar a criao dos mapas de usurios
1 - Instale o pacote nis no cliente, e informe o domnio(empresa.com.br) quando pedir para informar domnio
NIS
# aptitude install nis
empresa.com.br
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
6 - Altere o arquivo /etc/fstab e aponte a montagem do diretrio /home para o servidor NFS e reinicie a maquina
# vim /etc/fstab
#/dev/hda3 /home ext3 defaults 0 2
192.168.200.10:/home /home nfs defaults 0 2
41
GUIA DE ESTUDOS LPIC 301
8 - Para alterar a senha do usurio no servidor NIS, use o comando yppasswd (123456 por linux2010)
joao@maq1:~$ yppasswd
Changing NIS account information for joao on server.empresa.com.br.
Please enter old password:
Changing NIS password for joao on server.empresa.com.br.
Please enter new password:
Please retype new password:
Configurao do Servidor:
1 - Pare o servidor NFS, remova ou comente a linha do arquivo /etc/exports e remova o daemon da inicializao
# /etc/init.d/nfs-kernel-server stop
# vim /etc/exports
# update-rc.d -f nfs-kernel-server remove
4 - Instale o pacote migrationtools que ser usado na migrao do usurio NIS para a base LDAP
# aptitude install migrationtools
6 - Use os comandos abaixo para migrar manualmente usurio e grupos NIS para um arquivo ldif
# ypcat passwd > /tmp/passwd.tmp
# ypcat group > /tmp/group.tmp
# ./migrate_base.pl > /tmp/ldif
# ./migrate_passwd.pl /tmp/passwd.tmp >> /tmp/ldif
# ./migrate_passwd.pl /tmp/group.tmp >> /tmp/ldif
8 - Adicione usuarios e grupos do arquivo /tmp/ldif a sua base LDAP com o comando ldapadd
# ldapadd -x -D cn=admin,dc=empresa,dc=com,dc=br -W -f /tmp/ldif
9 - Para confirmar se os usurio do NIS foram migrados para a base LDAP reinicie o servidor e use o comando
abaixo
# /etc/init.d/slapd restart
# ldapsearch -x -LLL -b ou=People,dc=empresa,dc=com,dc=br cn*
dn: ou=People,dc=empresa,dc=com,dc=br
dn: uid=jose,ou=People,dc=empresa,dc=com,dc=br
dn: uid=joao,ou=People,dc=empresa,dc=com,dc=br
dn: uid=maria,ou=People,dc=empresa,dc=com,dc=br
42
GUIA DE ESTUDOS LPIC 301
10 - Pare o servidor NIS, e remova o daemon da inicializao
# /etc/init.d/nis stop
# update-rc.d -f nis remove
Configurao do Cliente:
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
3 - Remova o sinal de mais (+) do final dos 4 arquivos (cuidado ao usar os comandos)
# sed -i 's/+//' /etc/passwd
# sed -i 's/+//' /etc/shadow
# sed -i 's/+//' /etc/group
# sed -i 's/+//' /etc/gshadow
4 - Altere o arquivo /etc/fstab e remova ou comenta a linha de montagem do diretrio /home do servidor NFS
# vim /etc/fstab
/dev/hda3 /home ext3 defaults 0 2
#192.168.200.10:/home /home nfs defaults 0 2
SIZELIMIT 12
TIMELIMIT 15
6 - Instale os pacotes libnss-ldap, libpam-ldap e ldap-utils para configurar a maquina como cliente LDAP
# aptitude install libnss-ldap libpam-ldap ldap-utils
43
GUIA DE ESTUDOS LPIC 301
Tornar a conta root local o administrador da base de dados
Sim
9 - Para integrar o PAM ao LDAP configure quatro arquivos localizados dentro do diretrio /etc/pam.d
common-auth:
# vim /etc/pam.d/common-auth
auth sufficient pam_ldap.so
auth required pam_unix.so nullok_secure try_first_pass
common-account:
# vim /etc/pam.d/common-account
account sufficient pam_ldap.so
account required pam_unix.so
session required pam_mkhomedir.so skel=/etc/skel umask=0077
common-password:
# vim /etc/pam.d/common-password
password sufficient pam_unix.so nullok obscure min=4 max=8 md5
password required pam_ldap.so try_first_pass
common-session:
# vim /etc/pam.d/common-session
session sufficient pam_ldap.so
session required pam_unix.so
10 - Reinicie o computador e faa login com o usurio joao. Troque a senha agora com o comando passwd, lembre-
se que a senha antiga linux2010 trocada quando a maquina era um cliente NIS.
44
GUIA DE ESTUDOS LPIC 301
A outra configurao tornar a maquina que roda o servidor, tambm cliente LDAP configurando os seguintes
arquivos:
/etc/nsswitch.conf
/etc/ldap/ldap.conf
/etc/libnss-ldap.conf
/etc/pam_ldap.conf
# vim /etc/pam.d/common-auth
auth sufficient pam_ldap.so
# vim /etc/pam.d/common-account
account sufficient pam_ldap.so
# vim /etc/pam.d/common-password
password required pam_ldap.so try_first_pass
# vim /etc/pam.d/common-session
session sufficient pam_ldap.so
Para permitir acesso ao servio SSH apenas aos usurios que so membros de um determinado grupo:
3 - Altere a configurao do ssh no pam, comentando as linhas @include common-auth e @include common-
account. Abaixo de cada acrescente uma linha apontando para um novo arquivo com a configuraes do grupo
# vim /etc/pam.d/ssh
#@include common-auth
auth sufficient pam_ldap.so config=/etc/ldap/ldap-ssh.conf
#@include common-account
account sufficient pam_ldap.so config=/etc/ldap/ldap-ssh.conf
host server.empresa.com.br
pam_groupdn cn=server,ou=Services,dc=empresa,dc=com,dc=br
pam_member_attribute member
45
GUIA DE ESTUDOS LPIC 301
jose@server:~$
6 - Tente fazer login com o usurio joao
# ssh joao@192.168.200.10
joao@192.168.200.10's password:
You must be a member of cn=server,ou=Services,dc=empresa,dc=com,dc=br to login.
Connection closed by 192.168.200.10
7 - Para adicionar um novo membro ao grupo de acesso ao SSH crie o arquivo adiciona_ssh.ldif com o contedo:
# vim adiciona_ssh.ldif
dn: cn=server,ou=Services,dc=empresa,dc=com,dc=br
add: member
member: uid=joao,ou=People,dc=empresa,dc=com,dc=br
3 - A configurao do PAM vem pronta, dando acesso aos usuarios LDAP o login via FTP
# vim /etc/pam.d/vsftpd
@include common-account
@include common-session
@include common-auth
46
GUIA DE ESTUDOS LPIC 301
ProFTP
2 - Edite o arquivo /etc/pam.d/proftpd e descomente a linha referente pam_shells.so. Essa linha est
definindo que para um usurio conseguir se logar no ftp ele deve possuir uma shell vlida
# vim /etc/pam.d/proftpd
auth required pam_shells.so
4 - Edite o arquivo /etc/proftpd/proftpd.conf e adicione ao final as linhas com as configuraes do servidor LDAP
LDAPServer server.empresa.com.br
LDAPDNInfo cn=admin,dc=empresa,dc=com,dc=br 123456
LDAPDoAuth on "ou=People,dc=empresa,dc=com,dc=br"
LDAPUseTLS off
Descrio:
A integrao Apache com LDAP feita no arquivo de configurao do virtual host. Nesta configurao apenas
usuarios da base LDAP tero acesso a um determinado diretrio e pagina.
47
GUIA DE ESTUDOS LPIC 301
<Directory /var/www/empresa.com.br/restrito>
Options Indexes FollowSymlinks MultiViews
AllowOverride None
AuthType Basic
AuthName "Acesso Restrito"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPURL "ldap://server.empresa.com.br/ou=People,dc=empresa,dc=com,dc=br?uid"
require valid-user
Order allow,deny
allow from all
</Directory>
48
GUIA DE ESTUDOS LPIC 301
ldap {
server = "server.empresa.com.br"
identity = "cn=admin,dc=empresa,dc=com,dc=br"
password = 123456
basedn = "ou=People,dc=empresa,dc=com,dc=br"
filter = "(uid=u%)"
base_filter = "(objectclass=*)"
access_attr = "uid"
ldap_connections_number = 5
timeout = 4
timelimit = 3
net_timeout = 1
tls {
start_tls = no
}
dictionary_mapping = ${confdir}/ldap.attrmap
edir_account_policy_check = no
Descrio:
BrowseLDAPBindDN cn=admin,dc=empresa,dc=com,dc=br
BrowseLDAPPassword 123456
BrowseLDAPServer ldap://server.empresa.com.br
BrowseLDAPDN dc=empresa,dc=com,dc=br
<Location /printers>
AuthType Basic
</Location>
dn: ou=printers,dc=empresa,dc=com,dc=br
objectClass: organizationalUnit
ou: printers
dn: cn=HP,ou=Printers,dc=empresa,dc=com,dc=br
cn: HP
printerDescription: Impressora LDAP
printerURI: ipp://192.168.200.10:631/printers/HP
printerLocation: TI
printerMakeAndModel: Unknown
printerType: 4
objectClass: top
objectClass: device
objectClass: cupsPrinter
7 - Restart o cups
# /etc/init.d/cups restart
50
GUIA DE ESTUDOS LPIC 301
ldap.conf
# O nome distinto da base de pesquisa.
base dc=empresa,dc=com,dc=br
smb.conf
1 - Instalar os pacotes samba e samba-doc
# aptitude install samba samba-doc
2 - Configure o arquivo smb.conf como PDC e adicione a configurao abaixo para autenticao LDAP
51
GUIA DE ESTUDOS LPIC 301
5 - Edite o arquivo slapd.conf para incluir o arquivo de schema, adicionar itens para indexar e adicionar ACLs
# vim /etc/ldap/slapd.conf
include /etc/ldap/schema/samba.schema
index SambaSID eq
index SambaPrimaryGroupSID eq
index SambaDomainName eq
access to attrs=userPassword,shadowLastChange,sambaLMPassword,sambaNTPassword
52
GUIA DE ESTUDOS LPIC 301
smbpasswd
Migrando usuarios LDAP para SAMBA
slaveDN="cn=admin,dc=empresa,dc=com,dc=br"
slavePw="123456"
masterDN="cn=admin,dc=empresa,dc=com,dc=br"
masterPw="123456"
# vim smbldap.conf
## Credencial do domnio
SID="S-1-5-21-3843609028-2715633953-1907622164"
sambaDomain="LPIC3"
## Informaes LDAP
slaveLDAP="127.0.0.1"
slavePort="389"
masterLDAP="127.0.0.1"
masterPort="389"
## Uso de criptografia
ldapTLS="0"
verify="require"
cafile="/etc/smbldap-tools/ca.pem"
clientcert="/etc/smbldap-tools/smbldap-tools.pem"
clientkey="/etc/smbldap-tools/smbldap-tools.key"
## Informaes SMB
defaultMaxPasswordAge="90"
userSmbHome="\\%L\homes\%U"
userProfile="\\%L\profile\%U"
userHomeDrive="H:"
userScript="logon.bat"
mailDomain="empresa.com.br"
53
GUIA DE ESTUDOS LPIC 301
## Configuraes adicionais para o smbldap-tools
with_smbpasswd="0"
smbpasswd="/usr/bin/smbpasswd"
with_slappasswd="0"
slappasswd="/usr/sbin/slappasswd"
54
GUIA DE ESTUDOS LPIC 301
8 - Usurio da base LDAP com atributos do samba
# ldapsearch -x -LLL uid=jose
dn: uid=jose,ou=People,dc=empresa,dc=com,dc=br
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: top
objectClass: qmailUser
objectClass: sambaSamAccount
givenName: Jose
sn: Silva
uidNumber: 1009
gidNumber: 100
homeDirectory: /home/jose
loginShell: /bin/bash
uid: jose
gecos: Jose da Silva
mail: jose@empresa.com.br
mailHost: smtp.empresa.com.br
mailMessageStore: /home/vmail/jose/Maildir/
sambaLogonTime: 0
sambaLogoffTime: 2147483647
sambaKickoffTime: 2147483647
sambaPwdCanChange: 0
sambaPwdMustChange: 2147483647
sambaSID: S-1-5-21-3843609028-2715633953-1907622164-3018
cn: Jose Silva
displayName: Jose Silva
sambaPasswordHistory: 00000000000000000000000000000000000000000000000000000000
00000000
sambaPwdLastSet: 1270854628
sambaAcctFlags: [UX ]
55
GUIA DE ESTUDOS LPIC 301
samba3.schema
http://www.zytrax.com/books/ldap/ape/samba.html
slapd.conf
# Arquivo de schema do samba
include /etc/ldap/schema/samba.schema
# Indices de pesquisas
index SambaSID eq
index SambaPrimaryGroupSID eq
index SambaDomainName eq
Kerberos
Kerberos, em homenagem ao co de trs cabeas de Hades na mitologia grega, um protocolo que permite aos
usurios e servidores para comprovar sua identidade atravs de uma rede no confivel. Foi desenvolvido no Instituto
de Tecnologia de Massachusetts (MIT) para uso em suas redes e, desde ento, encontrou seu lugar em muitas outras
redes. A Microsoft escolheu usar Kerberos como parte do Windows 2000 do Active Directory.
56
GUIA DE ESTUDOS LPIC 301
1 - Instalar o Kerberos (na instalao informe o FQDN da maquina)
# aptitude install krb5-admin-server krb5-clients krb5-kdc-ldap
Active Directory
Active Directory da Microsoft um servio de diretrio que usa alguns protocolos abertos, como Kerberos,
LDAP e SSL. Existem vrias maneiras de usar o AD para autenticao, voc pode usar pam_krb5, LDAP ou winbind.
1 - Crie um realm com o mesmo nome do domnio do Active Directory em nosso servidor Kerberos
# kdb5_util create -r WINDOWS.COM -s
2 - Informar para o servidor Kerberos qual o realm que ser utilizado, alterando o arquivo /etc/krb5.conf
# vim /etc/krb5.conf
[libdefaults]
default_realm = WINDOWS.COM
WINDOWS.COM = {
kdc = server.windows.com
admin_server = server.windows.com
}
57
GUIA DE ESTUDOS LPIC 301
single sign-on
Single sign-on (SSO) um mtodo de controle de acesso que permite que um usurio se autentique uma vez, e
ter acesso aos recursos de mltiplos sistemas de software.
Kerberos um mecanismo popular para aplicaes para externar a autenticao inteiramente. Quando um
usurio cadastrado no servidor Kerberos emitido um bilhete, que o seu software cliente apresenta para os servidores
que eles tentam acessar. Kerberos est disponvel no Unix, Windows e plataformas mainframe, mas exige uma ampla
modificao de cliente / servidor de cdigo do aplicativo,e, por conseqncia no usado por muitas aplicaes
legadas.
DNS
Voc precisa configurar uma zona DNS com o mesmo nome de seu reino Kerberos. O mais fcil se voc
possui o nome de DNS publicamente visveis, como o `example.org" se o seu reino EXAMPLE.ORG ', mas voc
pode configurar um servidor DNS interno com as informaes para o seu reino apenas. Se isso for feito, voc no
precisa manter os arquivos de configurao atualizado para o KDC (informaes de endereamento).
Postfix
A integrao Postfix com LDAP feita atravs de parmetros includos no arquivo /etc/postfix/main.cf. Para
poder utilizar pesquisas adicionando um local, onde as contas de email de usuarios podem ser localizadas na base
LDAP, altere a seguinte opo:
## Local onde as contas de email de usuarios podem ser localizadas na base LDAP
alias_maps = hash:/etc/aliases, ldap:accounts
58
GUIA DE ESTUDOS LPIC 301
## Filtro de pesquisa (accountStatus=0) para o usurio poder receber email
accounts_query_filter = (&(uid=%u)(accountStatus=0))
## Atributo que deve ser retornado no caso da pesquisa ser efetuada com sucesso.
accounts_result_attribute = uid
## Verso utilizada
accounts_version = 3
6 - E necessrio adicionar novos atributos aos nossos usurios, para que estejam aptos a enviar e receber
mensagens. Crie o arquivo mail.ldif com o seguinte contedo
# vim mail.ldif
dn: uid=aluno,ou=People,dc=empresa,dc=com,dc=br
add: objectClass
objectClass: qmailUser
-
add: mail
mail: aluno@empresa.com.br
-
add: accountStatus
accountStatus: 0
8 - Para adicionar os atributos via phpldapadmin, instale o pacote e acesse no browser no endereo
http://192.168.200.10/phpldapadmin/
59
GUIA DE ESTUDOS LPIC 301
60
GUIA DE ESTUDOS LPIC 301
12 - Voltando tela com as configuraes do usurio, clique na opo Add new attribute na lista ao lado
esquerdo
Sendmail
A integrao com LDAP no Sendmail pode ser usado para aliases, mapas e classes.
Aliases
O ALIAS_FILE (O AliasFile) pode ser configurado para usar LDAP para pesquisas alias. Exemplo:
define(`ALIAS_FILE', `ldap:')
Maps
FEATURE () 's que tm um argumento opcional r definio do mapa (por exemplo, mailertable, mailertable,
virtusertable, etc) pode ter a palavra-chave especial LDAP. Exemplo?
FEATURE(`access_db', `LDAP')
FEATURE(`virtusertable', `LDAP')
schema
Para que a integrao Postfix preciso o esquema qmail.schema obtido no endereo:
http://bettercom.de/misc/qmail.schema
Para que a integrao sendmail preciso o esquema sendmail.schema. Ele distribudo com o cdigo-fonte sendmail.
61
GUIA DE ESTUDOS LPIC 301
SASL
O Cyrus-IMAP usa o autenticador externo Cyrus-SASL, baseado na SASL (Camadas de Autenticao e
Segurana Simples). O servio saslauthd responsvel por atender aos pedidos de autenticao.
2 - Edite o arquivo /etc/default/saslauthd e altere a opo START para yes e a opo MECHANISMS para ldap
# vim /etc/default/saslauthd
START=yes
MECHANISMS="ldap"
5 - Faa o teste de autenticao com o SASL com um usurio da base LDAP e sua senha
# testsaslauthd -u roberto -p 123456
0: OK "Success."
POP/IMAP
A implementao depende de qual daemon POP/IMAP ser usado. Alguns podem ser configurados usando
PAM. Outros tm a sua prpria configurao para usar LDAP. Neste guia ser usado o Courier com os pacotes courier-
pop e courier-imap.
authmodulelist="authldap"
authmodulelistorig="authldap"
62
GUIA DE ESTUDOS LPIC 301
## Base de pesquisa e usurio que far a conexo
LDAP_BASEDN ou=People,dc=empresa,dc=com,dc=br
LDAP_BINDDN cn=admin,dc=empresa,dc=com,dc=br
LDAP_BINDPW 123456
LDAP_TIMEOUT 5
## Dados complementares
LDAP_FULLNAME cn
LDAP_CLEARPW clearPassword
LDAP_CRYPTPW userPassword
LDAP_DEREF never
LDAP_TLS 0
LDAP_ALIAS 1
LDAP_URI ldap://server.empresa.com.br
LDAP_NUMPROCS 5
LDAP_BASEDN dc=empresa,dc=com,dc=br
LDAP_BINDDN cn=admin,dc=empresa,dc=com,dc=br
LDAP_BINDPW 123456
LDAP_TIMEOUT 5
LDAP_MAIL mail
LDAP_MAILDROP maildrop
6 - Reinicie os daemons
# /etc/init.d/courier-authdaemon restart
# /etc/init.d/courier-ldap restart
# /etc/init.d/courier-imap restart
# /etc/init.d/courier-pop restart
mailbox_transport = virtual:
mailbox_command_maps = ldap:accounts
local_recipient_maps = $alias_maps $virtual_mailbox_maps
virtual_maps = ldap:accountsmap
virtual_mailbox_base = /
virtual_mailbox_maps = ldap:accounts
virtual_uid_maps = static:240
virtual_gid_maps = static:240
virtual_maildir_extended = yes
accounts_server_host = server.empresa.com.br
accounts_bind_dn = cn=admin,dc=empresa,dc=com,dc=br
63
GUIA DE ESTUDOS LPIC 301
accounts_bind_pw = 123456
accounts_search_base = dc=empresa,dc=com,dc=br
accounts_query_filter = (&(objectClass=qmailUser)(mail=%s))
accounts_result_attribute = mailMessageStore
accounts_bind = yes
accountsmap_server_host = server.empresa.com.br
accountsmap_bind_dn = cn=admin,dc=empresa,dc=com,dc=br
accountsmap_bind_pw = 123456
accountsmap_search_base = dc=empresa,dc=com,dc=br
accountsmap_query_filter = (&(objectClass=qmailUser)(mailAlternateAddress=%s))
accountsmap_result_attribute = mail
accountsmap_bind = yes
8 - Reinicie o daemon
# /etc/init.d/postfix restart
9 - Adicione os novos atributos aos nossos usurios. Crie o arquivo imap.ldif com o seguinte contedo
# vim imap.ldif
dn: uid=felipe,ou=People,dc=empresa,dc=com,dc=br
add: objectClass
objectClass: qmailUser
-
add: mail
mail: felipe@empresa.com.br
-
add: mailHost
mailHost: smtp.empresa.com.br
-
add: mailMessageStore
mailMessageStore: /home/vmail/felipe/Maildir/
11 - Faa o login com o usurio que recebeu os novos atributos, e como usurio root crie as pastas
# mkdir /home/vmail/felipe
# maildirmake /home/vmail/felipe/Maildir
# chown -R vmail: /home/vmail
12 - Para adicionar os atributos (qmailUser, mail, mailhost e mailMessageStore) via phpldapadmin, instale o
pacote e acesse no browser o endereo http://192.168.200.10/phpldapadmin/
64
GUIA DE ESTUDOS LPIC 301
13 - Faa testes de configurao com POP ou IMAP usando algum cliente de email
65
GUIA DE ESTUDOS LPIC 301
iostat
Fornece relatrio de uso da CPU, estatsticas e de entrada/sada, estatsticas para dispositivos, parties e
sistemas de arquivos de rede (NFS). Para ter acesso a este comando, instale o pacote sysstat. Opes:
vmstat
Com o vmstat voc tambm pode ver as estatsticas de disco e CPU. Alm disso, d-lhe informaes sobre sua
memria fsica e virtual.
pstree
Usado para exibir de forma hierrquica a lista de processos.
w
Exibe informaes sobre os usurios atualmente na mquina, e seus processos. Mostra o cabealho, nesta
ordem: data atual, quanto tempo o sistema esta em funcionamento, quantos usurios esto conectados no momento, e as
mdias de carga do sistema durante os ltimos 1, 5 e 15 minutos.
lsof
Lista os arquivos abertos, ou quando usado apontando o caminho de um arquivo ele informa qual processo tem
relao com o arquivo aberto. Exemplo:
# lsof /usr/sbin/gdm
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
gdm 8588 root txt REG 3,5 311148 138579 /usr/sbin/gdm
gdm 8589 root txt REG 3,5 311148 138579 /usr/sbin/gdm
top
Oferece uma viso dinmica em tempo real do sistema em execuo.
uptime
Exibe quanto tempo o sistema esta em funcionamento.
sar
Coleta, exibe relatrio ou salvar as informaes de atividade do sistema. Para ativar o servio abra o arquivo
/etc/default/sysstat e altere a opo ENABLED="false" para true. Reinicie o daemon do sysstat.
# vim /etc/default/sysstat
ENABLED="true"
# /etc/init.d/sysstat restart
mpstat
Relatrio de estatsticas relacionadas com os processadores.
Ferramentas de monitoramento
66
GUIA DE ESTUDOS LPIC 301
swap
Usando o comando free voc pode ver o uso de memria e swap.
# ps -eo pid,state,comm
blocks in + out
Usando o comando vmstat (coluna bi e bo). Exemplo
PDQ (rpido pra caramba) uma ferramenta de modelagem para analisar as caractersticas do desempenho
de recursos computacionais, como processadores, discos e um conjunto de processos que fazem requisies desses
recursos, por exemplo.
Um modelo PDQ analisado com algoritmos baseados na teoria de en?dleiramento (queueing). A verso atual
facilita a criao e anlise de modelos de desempenho em C, Perl, Python, Java e PHP.
67
GUIA DE ESTUDOS LPIC 301
Funes de PDQ do Python:
# perl test.pl
***************************************
****** Pretty Damn Quick REPORT *******
***************************************
*** of : Wed Apr 14 21:19:45 2010 ***
*** for: OpenCenter ***
*** Ver: PDQ Analyzer v5.0 071209 ***
***************************************
***************************************
=======================================
****** PDQ Model INPUTS *******
=======================================
WORKLOAD Parameters:
Source per Customers Demand
------ ------- ------
work 0.7500 1.0000
=======================================
****** PDQ Model OUTPUTS *******
=======================================
68
GUIA DE ESTUDOS LPIC 301
Bounds Analysis:
Max throughput 1.0000 Customers/Seconds
Min response 1.0000 Seconds
trend (tendncia)
Analisando as mudanas ao longo do tempo e extrapolando as demandas futuras.
what if
Predizer o impacto das mudanas na carga de trabalho.
validate (validar)
Validar os resultados extras e verificar tendncias.
Monitorao e estima da capacidade de crescimento pode ser feito usando as ferramentas descritas na seo
306,1. ( Measure Resource Usage). Grficos podem ser feito usando a ferramenta rrd-tools.
iostat, vmstat, pstree, w, lsof, top, uptime e sar
70
GUIA DE ESTUDOS LPIC 301
9 - Ser feira a verificao do programas necessrios, selecione RRDTool 1.2.x e clique em Finish
71
GUIA DE ESTUDOS LPIC 301
12 - Na parte superior esquerda da tela, clique em graphs para ter acesso a grficos de memria, load average,
usuarios logados e processos
72