8) Adicionando usuários ao LDAP
Para carregar informações dos usuários para o banco de dados do LDAP, basta criar um arquivo ".ldif" com os dados correspondentes. O exemplo abaixo define os atributos mínimos de usuário SIP.
Início do arquivo users.ldif:
dn: ou=sipusers,dc=dominio,dc=com
ou: sipusers
objectClass: top
objectClass: organizationalUnit
dn: cn=joao,ou=sipusers,dc=dominio,dc=com
objectClass: top
objectClass: AsteriskSIPUser
cn: joao
AstAccountCallerID: 1001
AstAccountHost: dynamic
AstAccountRealmedPassword: {MD5}a94775781e5bb7d3e4ec047c56f0acc5
AstAccountContext: default
AstAccountType: friend
dn: cn=maria,ou=sipusers,dc=dominio,dc=com
objectClass: top
objectClass: AsteriskSIPUser
cn: maria
AstAccountCallerID: 1001
AstAccountHost: dynamic
AstAccountRealmedPassword: {MD5}a94775781e5bb7d3e4ec047c56f0acc5
AstAccountContext: default
AstAccountType: friend
Onde:
- cn: nome de usuário da conta SIP.
- AstAccountCallerID: informação de identificação do usuário.
- AstAccountHost: a host dinâmico permite que o usuário se registre com IP variável.
- AstAccountRealmedPassword: senha da conta. O hash md5 pode ser criado através do aplicativo md5sum.
- AstAccountContext: é o contexto que o usuário está inserido; contextos de extensão foram definidos no extensions.conf .
- AstAccountType: define o tipo de cliente. O tipo "peer" apenas efetua chamadas e "friend" fazem e recebem chamadas.
Para carregar o arquivo através do comando ldapadd execute o comando:
ldapadd -x -D "cn=adminldap" -f users.ldif
9) Adicionando extensões ao LDAP
Após ter inseridos os usuários na base de dados, deve ser inserido o plano de discagem. Primeiramente será associado um número de telefone com cada usuário.
Início do arquivo extensions.ldif:
dn: ou=extensions,dc=dominio,dc=com
ou: extensions
objectClass: top
objectClass: organizationalUnit
dn: cn=1001-1,ou=extensions,dc=dominio,dc=com
cn: 1001-1
objectClass: top
objectClass: AsteriskExtension
AstContext: users
AstExtension: 1001
AstPriority: 1
AstApplication: Dial
AstApplicationData: SIP/joao,20
dn: cn=1002-1,ou=extensions,dc=dominio,dc=com
cn: 1002-1
objectClass: top
objectClass: AsteriskExtension
AstContext: users
AstExtension: 1002
AstPriority: 1
AstApplication: Dial
AstApplicationData: SIP/maria,20
Onde:
- AstContext: contexto em que essa extensão existe.
- AstExtension: identificador da extensão (número do ramal).
- AstPriority: cada extensão pode executar vários comandos, a prioridade determina a ordem em que são executados.
- AstApplication: o comando a ser executado quando a extensão recebe uma chamada. O Dial liga para outro usuário.
- AstApplicationData: argumentos do comando a ser executado. O Dial tem dois argumentos; o primeiro é o usuário que a chamada irá conectar e o segundo é o tempo (segundos) que permanecerá chamando antes de sair.
Use ldapadd para adicionar o seguinte ao seu banco de dados LDAP através do comando:
ldapadd -x -D "cn=adminldap" -f extensions.ldif
10) Adicionando "echo" para teste
Será adicionada uma extensão ao plano de discagem, onde serão executados três comandos echo para teste. O número do ramal será '190'.
Início do arquivo echo.ldif:
dn: cn=190-1,ou=extensions,dc=dominio,dc=com
cn: 190-1
objectClass: top
objectClass: AsteriskExtension
AstContext: echo
AstExtension: 190
AstPriority: 1
AstApplication: Playback
AstApplicationData: demo-echotest
dn: cn=190-2,ou=extensions,dc=dominio,dc=com
cn: 190-2
objectClass: top
objectClass: AsteriskExtension
AstContext: echo
AstExtension: 190
AstPriority: 2
AstApplication: Echo
dn: cn=190-3,ou=extensions,dc=dominio,dc=com
cn: 190-3
objectClass: top
objectClass: AsteriskExtension
AstContext: echo
AstExtension: 190
AstPriority: 3
AstApplication: Playback
AstApplicationData: demo-echodone
A configuração básica do Asterisk e LDAP estão completas, agora basta reiniciar os serviços do Asterisk e LDAP e configurar os clientes VoIP.