[Inclusão Digital]Problema com múltiplos logins no Freeradius
Clecio Rodrigo
clecio em velbras.com.br
Segunda Abril 2 10:38:32 BRT 2012
Ronaldo bom dia,
Segue abaixo como resolver a questão de logins presos no radius,
qualquer dúvida me adicione no MSN.
Pra resolver os problemas com o radius, freeradius com Multiplos Logins
segui a dica abaixo aqui funciona sem problemas.
O funcionamento do script é simples quando um cliente tenta conectar e o
seu login esta preso no radius, o script faz a verificação se o cliente
esta conectado no Mikrotik via SNMP, se ele não estiver conectado no
concentrador Mikrotik o login preso no radius é liberado.
Configurando o SNMP do mikrotik
Acesse o concentrador Mikrotik, clique SNMP, agora clique no botão SNMP
Settings, selecione a opção enable, preencha os campos Contact info e
Location, clique OK.
É muito interessante permitir que apenas o server radius tenha acesso
via SNMP ao concentrador Mikrotik, clique duas vezes na community
public, altere por outro o nome de public para outro caso queira, em
Address sete o IP do servidor radius, marque a opção Read Access.
O mikrotik esta pronto vamos agora para o servidor Radius
Junto ao radius acompanha o script checkrad que resolve este tipo de
problemas junto ao concentrador PPPoE ou Hotspot Mikrotik
Verificando a existencia do script
[root em server4 raddb]# whereis checkrad
checkrad: /usr/sbin/checkrad
Vamos editar o arquivo clients.conf
[root em server4 raddb]# vim clients.conf
Localize a entrada do seu concentrador Mikrotik
client 201.60.30.120 {
secret = supersecreto
shortname = fr01
nastype = other
}
Altere o nastypt de other para mikrotik_snmp, fica como no exemplo abaixo
client 201.60.30.120 {
secret = supersecreto
shortname = fr01
nastype = mikrotik_snmp
}
Vamos verificar se no arquivo radius.conf tem a entrada referenciando o
script checkrad
[root em server4 raddb]# vim radiusd.conf
Dentro do arquivo de configuração do radius o radius.conf
# The program to execute to do concurrency checks.
checkrad = ${sbindir}/checkrad
Agora basta apenas reiniciar o radius
[root em server4 raddb]# /sbin/service radiusd restart
radiusd (pid 4662) está rodando...
radiusd (pid 4662) está rodando...
Parando o servidor RADIUS: [ OK ]
radiusd está parado
Iniciando o servidor RADIUS: Thu Sep 25 08:59:06 2008 : Info: Starting -
reading configuration files ... [ OK ]
[root em server4 raddb]#
Vamos agora analisar o log do radius
[root em server4 raddb]# tail -f /var/log/radius/radius.log
Thu Sep 25 08:59:06 2008 : Info: rlm_exec: Wait=yes but no output
defined. Did you mean output=none?
Thu Sep 25 08:59:06 2008 : Info: rlm_sql (sql): Driver rlm_sql_mysql
(module rlm_sql_mysql) loaded and linked
Thu Sep 25 08:59:06 2008 : Info: rlm_sql (sql): Attempting to connect to
root em localhost:/mikrotik
Thu Sep 25 08:59:06 2008 : Info: rlm_sql_mysql: Starting connect to
MySQL server for #0
Thu Sep 25 08:59:06 2008 : Info: rlm_sql_mysql: Starting connect to
MySQL server for #1
Thu Sep 25 08:59:06 2008 : Info: rlm_sql_mysql: Starting connect to
MySQL server for #2
Thu Sep 25 08:59:06 2008 : Info: rlm_sql_mysql: Starting connect to
MySQL server for #3
Thu Sep 25 08:59:06 2008 : Info: rlm_sql_mysql: Starting connect to
MySQL server for #4
Thu Sep 25 08:59:06 2008 : Info: Ready to process requests.
Thu Sep 25 08:59:18 2008 : Auth: Login OK: [carlosaurelio] (from client
fr01 port 4827 cli 00:0E:2E:EB:2C:5C)
Script resolvendo o problema de login preso
Wed Sep 24 16:21:54 2008 : Error: Discarding duplicate request from
client fr02:44279 - ID: 130 due to unfinished request 4572
Wed Sep 24 16:21:54 2008 : Error: Discarding duplicate request from
client fr02:44279 - ID: 130 due to unfinished request 4572
Wed Sep 24 16:22:01 2008 : Error: Discarding duplicate request from
client fr02:44281 - ID: 133 due to unfinished request 4576
Wed Sep 24 16:22:02 2008 : Error: Discarding duplicate request from
client fr02:44281 - ID: 133 due to unfinished request 4576
Abraços
Leia Mais:
http://under-linux.org/f143/integracao-com-radius-119954/#ixzz1qtEnfmwZ
Att..
Clecio Rodrigo
Velbras Internet
Em 02/04/2012 09:45, Ronaldo Osowski escreveu:
> *Bom dia pessoal,
>
> Estou tendo este problema com o Freeradius, ele dá que o usuário já está
> logado porque a sessão dele deve estar pendurada e nega o próximo login...
>
> Haveria alguma forma de fazer com que ele sempre derrube sessões anteriores
> na hora do login, mantendo somente a última?
>
> Testei várias alternativas aqui, mas até agora nada...
>
> A mensagem que é escrita no log é a seguinte:
>
> Mon Apr 2 09:26:52 2012 : Auth: Multiple logins (max 1) : [nome.usuario]
> (from client popteste port 5756 cli 00:00:00:00:00:00)
>
> Estou usando o Freeradius 2.0.4, MySQL. Obrigado.
> *
> --
>
> Atenciosamente,
>
> Ronaldo Aurélio Osowski
> E-mail/MSN: ronaldo em osowski.com.br
> Site: www.osowski.com.br
>
> "There's no place like 127.0.0.1"
> _______________________________________________
> Inclusaodigital mailing list
> Inclusaodigital em anid.com.br
> http://mail.anid.com.br/mailman/listinfo/inclusaodigital
>
--
*Clecio Rodrigo da Silva*
Gerente de T.I.
Provedor Velbras
MSN: clecio_rodrigo em hotmail.com
Tel.: (17) 3249-4530
Cel.: (17) 9748-7464
Mais detalhes sobre a lista de discussão Inclusaodigital