Anda di halaman 1dari 3

IFRN Campus Natal Central

Curso de Tecnologia em Redes de Computadores


Disciplina de Tecnologia para Integrao de Servios

Prtica Integrao Asterisk / LDAP


1 Instalao do servidor LDAP

Para que a base LDAP seja corretamente configurada desejvel que o servidor esteja
com as informaes de nome e domnio configurados. Uma das formas de fazer isto
alterar os arquivos /etc/hosts, /etc/hostname e /etc/nsswitch.conf
adicionando as informaes a seguir (lembre de trocar xxxx pelos quatro primeiros
nmeros de seu prefixo):

/etc/hosts
127.0.1.1 server.prefixoxxxx.voip.ifrn.edu.br server
127.0.0.1 localhost.localdomain localhost

/etc/hostname
server

/etc/nsswitch.conf
...
hosts: files dns
...

Para que a mudana de nomes seja validada em todo o sistema, a soluo mais rpida
reiniciar o sistema. Aps o reinicio verif ique se o nome e domnio foram corretamente
configurados com o comando: hostname -f

Podemos agora instalar o servidor LDAP: apt-get install slapd ldap-utils


Durante a instalao ser requisitada a senha do usurio administrador da base
LDAP. Esta senha ser utilizada em todas as tarefas administrativas, como a
insero e remoo de dados;
Podemos, a qualquer momento, verif icar todo o contedo da base LDAP com o
comando slapcat.
Podemos, a qualquer momento, reconfigurar a base LDAP com o comando dpkg-
reconfigure slapd.

2 Configurao do servidor LDAP para integrao como o Asterisk

Para possibilitar a integrao com o Asterisk, necessrio adicionar um novo schema


configurao padro do servidor LDAP. Neste schema existem campos onde sero
inseridas informaes como nmeros de telefone, codecs, contextos etc a serem
utilizados por cada usurio.
Para este passo so necessrios dois arquivos: asterisk.ldap-schema e
asterisk.ldif. Os mesmos podem ser encontrados, por exemplo, no diretrio
/contrib/scripts/ do cdigo fonte do Asterisk. De posse dos mesmos basta
executar os comandos a seguir:

# cp asterisk.ldap-schema /etc/ldap/schema/asterisk.schema
# /etc/init.d/slapd restart

# ldapadd -Y EXTERNAL -H ldapi:/// -f asterisk.ldif


3 Inserindo os dados na base LDAP

Para manter a organizao da base de dados, sero criados inicialmente, na base LDAP:
Um n chamado People, para armazenar os usurios;
Um n chamado Groups, para armazenar os grupos;
Um grupo chamado voipusers.

Para tanto, basta criar um arquivo com o contedo a seguir (inicial.txt):

dn: ou=People,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
objectClass: organizationalUnit
ou: People

dn: ou=Groups,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
objectClass: organizationalUnit
ou: Groups

dn: cn=voipusers,ou=Groups,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
objectClass: posixGroup
cn: voipusers
GidNumber: 5000

E inserir seu contedo na base LDAP, com o comando:

# ldapadd -x -D cn=admin,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
-W -f inicial.txt

Os usurios podem ser inseridos criando um arquivo com base neste modelo (user.txt):

dn: uid=<login>,ou=People,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
objectClass: AsteriskSIPUser
uid: <login>
sn: <sobrenome>
givenName: <Nome>
cn: <Nome completo>
displayName: <Nome completo>
uidNumber: <valor numrico do UID>
gidNumber: <valor numrico do GID>
userPassword: <senha do usuario>
loginShell: /bin/bash
homeDirectory: /home/<login>
AstAccountCallerID: <nmero do telefone>
AstAccountContext: <contexto inicial das ligaes deste usurio>
AstAccountDTMFMode: rfc2833
AstAccountMailbox: <nmero do telefone>
AstAccountNAT: yes
AstAccountQualify: yes
AstAccountType: friend
AstAccountHost: dynamic
AstAccountRegistrationExten: <nmero do telefone>

Vale salientar que este modelo apenas uma sugesto. Existem dezenas de outros
campos que podem ser inseridos na configurao de cada usurio. Para inserir este
usurio na base LDAP basta executar o comando:

# ldapadd -x -D cn=admin,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
-W -f user.txt
4 Configurando o Asterisk para que o mesmo autentique os usurios (SIP) no LDAP

As configuraes a serem realizadas no Asterisk so bastante simples. Primeiro iremos


editar o arquivo res_ldap.conf, de forma que fique como mostrado a seguir:

[_general]
url=ldap://127.0.0.1:389
protocol=3
basedn=dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
user=cn=admin,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br
pass=<senha-do-administrador-da-base>

[sip]
name = AstAccountRegistrationExten

A seguir, devemos editar o arquivo sip.conf e remover o comentrio da linha:

rtcachefriends=yes

A seguir, devemos editar o arquivo extconfig.conf e adicionar ao seu final:

sipusers => ldap,"ou=People,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br",sip


sippeers => ldap,"ou=People,dc=prefixoxxxx,dc=voip,dc=ifrn,dc=edu,dc=br",sip

Feito isto, basta recarregar as configuraes do Asterisk, e testar a autenticao dos


usurios SIP via LDAP.

Anda mungkin juga menyukai