#  > Telecomunicações >  > Redes >  >  Mikrotik + Freeradius + Mysql + Hotspot ( Casando MAC/IP/Login/Senha )

## AirKing

Ola pessoal... acabei de montar meu sistema utilizando mikrotik + freeradius + mysql + hotspot... como tive um pouco de dificuldade para faze-lo funcionar e tive que procurar em varios forums gringos... venho aqui compartilhar com a galera passo a passo o que foi feito para funcionar nesse esquema.


Lembrando que o freeradius voce vai instalar em uma maquina separada... ja que nao se pode instalar e nem vem instalado o radius no mikrotik.

Primeiramente faça download do Freeradius

wget ftp://ftp.freeradius.org/pub/radius/...s-1.1.7.tar.gz

Vamos agora compilar o freeradius.

./configure --prefix=/usr/local/radius --with-rlm-mysql-lib-dir=/usr/local/lib/mysql --with-rlm-mysqlinclude-dir=/usr/local/include/mysql --enable-ltdl-install

make
make install

Freeradius esta instalado no /usr/local/radius

Agora vamos configurar o banco de dados...
Esteja certo que seu mysqld esteja instalado e rodando.

para adicionar a base de dados do radius no seu mysql faca o seguinte:

mysql -u root -p

vai pedir a senha ... vc loga no mysql..

agora vamos criar o banco:

CREATE DATABASE radius;

apos digite exit para sair do mysql.

agora vamos importar a base de dados do mysql para seu banco chamado radius:
mysql -u root -p radius < /usr/local/radius/share/doc/freeradius/examples/mysql.sql

Com isso suas tabelas vao ser criadas... agora vamos criar um usuario:

primeiro vamos alimentar a tabela radcheck nessa tabela vai ficar o nome do usuario e a senha de autenticacao do radius:

mysql -u root -p

use radius;

INSERT INTO radcheck (UserName, Attribute, Value) VALUES ("fulano", "Password", "senha");

Valores opcionais... esses sao para quem querem checar tambem pelo radius... o IP do cliente e o MAC... assim casando IP - Mac - Login - Senha:

INSERT INTO radcheck (UserName, Attribute, Value) VALUES ("fulano", "Calling-Station-ID", "00:11:22:33:44:55");
INSERT INTO radcheck (UserName, Attribute, Value) VALUES ("fulano", "Framed-IP-Address", "192.168.0.20");

Pronto... agora vamos inserir atributos no radreply... na maneira que configurei meu radius... resolvi nao usar os grupos do radius... e sim do proprio mikrotik... a frente voces vao entender.

INSERT INTO radreply (UserName, Attribute, Value) VALUES ("fulano", "Mikrotik-Group", "128k");

Pronto... terminarmos de cadastrar um cliente no radius.... o valor 128k equivale ao grupo que vamos criar no mikrotik daqui a pouco.

Muito Importante: 

É necessario que vc coloque na lista de dictionarys do radius o dictionary do mikrotik faça o download do dictionary do mikrotik:

cd /usr/local/radius/share/freeradius
wget http://www.mikrotik.com/Documentatio...onary.mikrotik
vi dictionary

Apos a ultima entrada de Include adicione esse novo include.
$INCLUDE dictionary.mikrotik

entre na pasta de configuracoes do freeradius
cd /usr/local/radius/etc/raddb

Agora vamos editar os arquivos de configuracao:

edite o arquivo clients.conf

adicione duas entrada uma com o ip do mikrotik... e outra com ip da sua maquina... voce vai entender na hora que chegar a configuracao dos realms.

Exemplo:

client 200.200.200.200 {
secret = (senha que vc escolher para acesso do mikrotik)
shortname = mikrotik
nastype = other
}

client 200.200.200.1 {
secret = (senha que vc escolher para acesso do proxy (realm))
shortname = radius
nastype = other
}

agora vamos editar o radiusd.conf

na parte authorize ficam ativas as opcoes:
preprocess, chap, mschap, suffix, eap, sql

na parte preacct ficam ativas as opcoes:
preprocess, acct_unique, suffix

na parte accounting ficam ativas as opcoes:
detail, unix, sql, radutmp

na parte session ficam ativas as opcoes:
radutmp, sql

na parte post-auth ficam ativas as opcoes:
sql

pronto... terminamos de editar o radiusd.conf

Agora vamos configurar o seu realm... que seria o que vem depois da @ no login do cliente... tendo em vista que muitos provedores utilizam o login do cliente igual o do email para seguirem um padrao.

edite o arquivo proxy.conf

e adicione uma entrada no final assim:

realm seudominio.com.br {
type = radius
authhost = 200.200.200.1 ( ip da maquina aonde vc esta instalando o freeradius)
accthost = 200.200.200.1 ( ip da maquina aonde vc esta instalando o freeradius)
secret = senha ( senha que vc colocou no seu clients.conf )
}


Pronto seu servidor radius ja esta todo configurado agora... vamos rodar ele em modo debug.... pra ver se ocorre algum erro e caso nao ocorra na inicializacao.... podemos ver se o usuario esta autenticando.


Vamos configurar agora o mikrotik.

Voce vai criar um hotspot como qualquer outro.... tem varios posts no forum ensinando como criar certinho nao vou entrar em detalhes aqui....

Va em IP - Hotspot
Na Aba Servers Clique em Profile

de 2 clicks no profile que seu servidor hotspot esta utilizando.

Clique na aba Radius
ative a opcao Use Radius
e deixe ativa a opcao accounting e mude de wireless para ethernet.

agora... no menu principal clique em Radius
clique no sinal de + e adicione um radius.

Em Service deixe somente ativo o hotspot
Em Address coloque o ip do seu servidor radius
Em Secret Coloque a senha que voce configurou para acesso do ip do seu mikrotik
Em Realm Coloque seu dominio... que vc utilizou no proxy.conf

Agora... vamos criar os grupos do hotspot

IP - Hotspot - Users 
clique em Profiles
adicione um novo profile ( grupo )
preencha assim:
Name: 128k
Shared Users: 1
Rate Limit: 128k/128k

pronto.... seu grupo esta criado... com banda de 128k

uma ideia nessa parte eh vc tb criar grupos para aviso de debito .... vc coloca uyma banda tipo 64... e ativa a opcao advertise. nao vou explicar sobre o advertise porque voces podem encontrar muita coisa no forum

aqui tenho um grupo para o aviso.. e outro para o bloqueio... no de bloqueio coloco a banda dele ativo o session timeout ai o mikrotik fica derrubando ele... da a mensagem de corte do advertise e apos derruba o cliente.



Pronto.... Seu mikrotik esta prontinho para autenticar por radius... com controle de mac / ip / login / senha e de quebra... voce pode controlar tudooo por banco de dados.

Amigos... esse é o primeiro tutorial que escrevo... caso tenha esquecido algo por favor me perdoem.... se estiver algo errado por favor espero que tenham paciencia e possam me corrigir.

Agradeco a todos do forum... pois muito aprendi por aqui e quero agora compartilhar minhas aventurar com voces. 

Abracos.
Glauber Mattar

----------


## diegovilela01

cara muito bom teu manual, isso e bom para o crescimento do forum, estou tentando tb fazer essas configuracoes aki no meu, e nao estou conseguindo, mim adciona pra trocarmos ideia [email protected].

----------


## iceblue

Muito obrigado e parabens pelo post!

----------


## iuredaluz

e amigo, eu gostaria de fazer com servidor radius, mais utilizando pppoe-server no lugar do hotspot, tem como fazer simplesmente amarrando mac+ip? sem pppoe-server e sem hotspot?

----------


## AirKing

ola amigo...

Acredito que funcione pasra pppoe... basta vc mudar a opcao de radius para pppoe e utilizar os grupos do radius

Abracos.
Glauber Mattar

----------


## cleciorodrigo

ae Glauber muito bom o tutorial tah de parabens...

abraços

----------


## AirKing

Obrigado Clecio.

Abraco.
Glauber Mattar

----------


## cleciorodrigo

Apenas complementando quem quiser ao inves de crias os grupos no mk, e fazer isso direto no mysql com o freeradius basta inserir estes dados no banco de dados do freeradius

Cria um grupo com velocidade de 128kbps de download e upload, e não permite login simultaneo
### Inserir Grupo
INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("128", "Mikrotik-Rate-Limit", ":=", "128k/128k");
INSERT INTO radgroupcheck (GroupName, Attribute, Op, Value) VALUES ("128", "Simultaneous-Use", ":=", "1");

Cria um usuário, define a senha o IP, e o MAC
### Inserir Usuário
INSERT INTO radcheck (UserName, Attribute, Op, Value) VALUES ("fulano", "Password", ":=", "123");
INSERT INTO radcheck (UserName, Attribute, Value) VALUES ("fulano", "Calling-Station-ID", "00:11:22:33:44:55");
INSERT INTO radcheck (UserName, Attribute, Value) VALUES ("fulano", "Framed-IP-Address", "192.168.0.4");

Define o grupo no qual o usuário pertence
### Inserir Usuário em um Grupo
INSERT INTO usergroup (UserName, GroupName) VALUES ("fulano", "128");

Cria um grupo onde vc pode bloquear o usuário e definir de quanto em quanto tempo ele ira receber uma mensagem de aviso, e sua banda fica travada em 64kbps, para usar este grupo deve se alterar o grupo ao qual o usuário pertence
### Inserir Grupo para Usuários Bloqueados
INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("Bloqueados", "Mikrotik-Rate-Limit", ":=", "64k/64k");
INSERT INTO radgroupcheck (GroupName, Attribute, Op, Value) VALUES ("Bloqueados", "Simultaneous-Use", ":=", "1");
INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("Bloqueados", "Mikrotik-Advertise-URL", ":=", "http://www.seusite.com.br/aviso.html");
INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("Bloqueados", "Mikrotik-Advertise-Interval", ":=", "00:10:00");

Removendo o usuário fulano e adicionando ele no grupo Bloqueados
### Apagar Usuário de um Grupo
DELETE FROM usergroup WHERE UserName = 'fulano';
INSERT INTO usergroup (UserName, GroupName) VALUES ("fulano", "Bloqueados");

Criar grupo com brust
Cria um grupo com velocidade de 128kbps de download e upload e burst de 256kbps, e não permite login simultaneo
### Inserir Grupo
INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("128burst", "Mikrotik-Rate-Limit", ":=", "128k/128k 256k/256k 200k/200k 180/180");
INSERT INTO radgroupcheck (GroupName, Attribute, Op, Value) VALUES ("128burst", "Simultaneous-Use", ":=", "1");

Ae quem tive mais dica posta ae, ou quem tive as moral coloca esse otimo post no wiki

Abraços

----------


## danielmenezes

pessoal .. tive problemas nessa implantaçao, na verdade, a implantaçao foi um pouco diferente ...

configurei o mk para servidor de pppoe, amarrei ip ao mac e fiz o web-proxy.
porem, minhas conexoes ppp nao passam pelo web-proxy, elas vao direto .. soh consigo q elas passem por ele qndo configuro manualmente ... alguem ja passou por isso???

outra coisa, levantei o servidor radius em um gentoo, nao passo a passo como esta aqui, porem configurei posteriormente para q ficasse igual.
agora as duvidas .... no mk, coloco na aba secrets o cadastro do cliente somente com o q vem antes do @.... (fulano) ou completo com @.....([email protected]) e como sei q ta funcionando??

----------


## eliasfr

Configurei aqui com pppoe e está dando este erro no log do radius

Info: rlm_sql (sql): No matching entry in the database for request from user [ze]

----------


## edsonrocha88

oi, sou muito leigo nesse assunto
queria saber onde eu vou compilar o freeradius, se preciso baixar mais algum programas fora o freeradios q vc disponibilizou...já estou cm uma máquina cm o mikrotik instalado e outra com o win.xp msm, tenho q instalar algum outro sistema?
esse freeradius é instalado no windows??
é um ambiente?
me ajuda por favor!
desde já agradeco
=)

----------


## iceblue

> oi, sou muito leigo nesse assunto
> queria saber onde eu vou compilar o freeradius, se preciso baixar mais algum programas fora o freeradios q vc disponibilizou...já estou cm uma máquina cm o mikrotik instalado e outra com o win.xp msm, tenho q instalar algum outro sistema?
> esse freeradius é instalado no windows??
> é um ambiente?
> me ajuda por favor!
> desde já agradeco
> =)


Linux: Freeradius - servidor radius eficiente e completo [Artigo]

Divirta-se!

----------


## AirKing

> oi, sou muito leigo nesse assunto
> queria saber onde eu vou compilar o freeradius, se preciso baixar mais algum programas fora o freeradios q vc disponibilizou...já estou cm uma máquina cm o mikrotik instalado e outra com o win.xp msm, tenho q instalar algum outro sistema?
> esse freeradius é instalado no windows??
> é um ambiente?
> me ajuda por favor!
> desde já agradeco
> =)


Ola amigo... vc vai instalar o Freeradius no linux na distribuicao que vc achar melhor... eu particularmente gosto do CentOS www.centos.org - The Community ENTerprise Operating System - ele é uma versao free do red hat enterprise

Abracos.
Glauber Mattar

----------


## jhonnyp

amigos, vamos fazer um wiki com isso, muito bom esse material.

----------


## iuredaluz

tentei rodar em modo debug 
deu erro

[email protected]:/usr/sbin# freeradius -x
Starting - reading configuration files ...
Errors reading dictionary: dict_init: No ATTRIBUTE "Wireless-Enc-Algo" defined for VALUE "104-bit-WEP"
Errors reading radiusd.conf

----------


## AirKing

Ola amigo... isso ai é porque vc precisa comentar algumas linhas no dictionary.mikrotik sao umas 3 linhas.... 

Abracos.
AirKing

----------


## AirKing

> amigos, vamos fazer um wiki com isso, muito bom esse material.


podem ficar a vontaqde pra colocar no wiki.... falta um artigo assim no wiki da underlinux..

Abracos.
AirKing

----------


## iuredaluz

Ae galera, instalei meu servidor radius,(estou usando pppoe-server) porem não esta autenticando, eu n sei mais o que faço para funcionar, eu executo ele em modo debug, e inicia blz, mais quando vou conectar da erro. Olhe:

rad_recv: Access-Request packet from host 192.168.10.1:42948, id=84, length=258
Service-Type = Framed-User
Framed-Protocol = PPP
NAS-Port = 120
NAS-Port-Type = Ethernet
User-Name = "[email protected]"
Calling-Station-Id = "00:19:21:8D:66:FC"
Called-Station-Id = "PPPoE-WinXP"
NAS-Port-Id = "Local"
MS-CHAP-Domain = "netexpress.com.br"
MS-CHAP-Challenge = 0xc74ceaf7d0b2c5514ce2a0d191e1833b
MS-CHAP2-Response = 0x01003ef5ea2cc2dd9309fc2d1edad45c3b14000000000000 0000c6cb688188e9e7c15379f1958dd1afb27abcb866208f5c df
NAS-Identifier = "Eletron Luz"
NAS-IP-Address = 192.168.10.1
Mikrotik-Realm = "netexpress.com.br"
Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 0
modcall[authorize]: module "preprocess" returns ok for request 0
modcall[authorize]: module "chap" returns noop for request 0
rlm_mschap: Found MS-CHAP attributes. Setting 'Auth-Type = mschap'
modcall[authorize]: module "mschap" returns ok for request 0
rlm_realm: Looking up realm "netexpress.com.br" for User-Name = "[email protected]"
rlm_realm: Found realm "netexpress.com.br"
rlm_realm: Adding Stripped-User-Name = "iure"
rlm_realm: Proxying request from user iure to realm netexpress.com.br
rlm_realm: Adding Realm = "netexpress.com.br"
rlm_realm: Preparing to proxy authentication request to realm "netexpress.com.br"
modcall[authorize]: module "suffix" returns updated for request 0
radius_xlat: '[email protected]'
rlm_sql (sql): sql_set_user escaped user --> '[email protected]'
radius_xlat: 'SELECT id, UserName, Attribute, Value, op FROM radcheck WHERE Username = '[email protected]' ORDER BY id'
rlm_sql (sql): Reserving sql socket id: 4
rlm_sql (sql): User [email protected] not found in radcheck
radius_xlat: 'SELECT radgroupcheck.id,radgroupcheck.GroupName,radgroupc heck.Attribute,radgroupcheck.Value,radgroupcheck.o p FROM radgroupcheck,usergroup WHERE usergroup.Username = '[email protected]' AND usergroup.GroupName = radgroupcheck.GroupName ORDER BY radgroupcheck.id'
radius_xlat: 'SELECT radgroupreply.id,radgroupreply.GroupName,radgroupr eply.Attribute,radgroupreply.Value,radgroupreply.o p FROM radgroupreply,usergroup WHERE usergroup.Username = '[email protected]' AND usergroup.GroupName = radgroupreply.GroupName ORDER BY radgroupreply.id'
rlm_sql (sql): User [email protected] not found in radgroupcheck
rlm_sql (sql): Released sql socket id: 4
rlm_sql (sql): User not found
modcall[authorize]: module "sql" returns notfound for request 0
modcall: leaving group authorize (returns updated) for request 0
Sending Access-Request of id 0 to 192.168.10.5 port 1812
Service-Type = Framed-User
Framed-Protocol = PPP
NAS-Port = 120
NAS-Port-Type = Ethernet
User-Name = "iure"
Calling-Station-Id = "00:19:21:8D:66:FC"
Called-Station-Id = "PPPoE-WinXP"
NAS-Port-Id = "Local"
MS-CHAP-Domain = "netexpress.com.br"
MS-CHAP-Challenge = 0xc74ceaf7d0b2c5514ce2a0d191e1833b
MS-CHAP2-Response = 0x01003ef5ea2cc2dd9309fc2d1edad45c3b14000000000000 0000c6cb688188e9e7c15379f1958dd1afb27abcb866208f5c df
NAS-Identifier = "Eletron Luz"
NAS-IP-Address = 192.168.10.1
Mikrotik-Realm = "netexpress.com.br"
Proxy-State = 0x3834
--- Walking the entire request list ---
Waking up in 6 seconds...
rad_recv: Access-Request packet from host 192.168.10.5:1814, id=0, length=244
Service-Type = Framed-User
Framed-Protocol = PPP
NAS-Port = 120
NAS-Port-Type = Ethernet
User-Name = "iure"
Calling-Station-Id = "00:19:21:8D:66:FC"
Called-Station-Id = "PPPoE-WinXP"
NAS-Port-Id = "Local"
MS-CHAP-Domain = "netexpress.com.br"
MS-CHAP-Challenge = 0xc74ceaf7d0b2c5514ce2a0d191e1833b
MS-CHAP2-Response = 0x01003ef5ea2cc2dd9309fc2d1edad45c3b14000000000000 0000c6cb688188e9e7c15379f1958dd1afb27abcb866208f5c df
NAS-Identifier = "Eletron Luz"
NAS-IP-Address = 192.168.10.1
Mikrotik-Realm = "netexpress.com.br"
Proxy-State = 0x3834
Processing the authorize section of radiusd.conf
modcall: entering group authorize for request 1
modcall[authorize]: module "preprocess" returns ok for request 1
modcall[authorize]: module "chap" returns noop for request 1
rlm_mschap: Found MS-CHAP attributes. Setting 'Auth-Type = mschap'
modcall[authorize]: module "mschap" returns ok for request 1
rlm_realm: No '@' in User-Name = "iure", looking up realm NULL
rlm_realm: No such realm "NULL"
modcall[authorize]: module "suffix" returns noop for request 1
radius_xlat: 'iure'
rlm_sql (sql): sql_set_user escaped user --> 'iure'
radius_xlat: 'SELECT id, UserName, Attribute, Value, op FROM radcheck WHERE Username = 'iure' ORDER BY id'
rlm_sql (sql): Reserving sql socket id: 3
radius_xlat: 'SELECT radgroupcheck.id,radgroupcheck.GroupName,radgroupc heck.Attribute,radgroupcheck.Value,radgroupcheck.o p FROM radgroupcheck,usergroup WHERE usergroup.Username = 'iure' AND usergroup.GroupName = radgroupcheck.GroupName ORDER BY radgroupcheck.id'
radius_xlat: 'SELECT id, UserName, Attribute, Value, op FROM radreply WHERE Username = 'iure' ORDER BY id'
radius_xlat: 'SELECT radgroupreply.id,radgroupreply.GroupName,radgroupr eply.Attribute,radgroupreply.Value,radgroupreply.o p FROM radgroupreply,usergroup WHERE usergroup.Username = 'iure' AND usergroup.GroupName = radgroupreply.GroupName ORDER BY radgroupreply.id'
rlm_sql (sql): Released sql socket id: 3
rlm_sql (sql): No matching entry in the database for request from user [iure]
modcall[authorize]: module "sql" returns notfound for request 1
modcall: leaving group authorize (returns ok) for request 1
rad_check_password: Found Auth-Type MS-CHAP
auth: type "MS-CHAP"
Processing the authenticate section of radiusd.conf
modcall: entering group MS-CHAP for request 1
rlm_mschap: No User-Password configured. Cannot create LM-Password.
rlm_mschap: No User-Password configured. Cannot create NT-Password.
rlm_mschap: Told to do MS-CHAPv2 for iure with NT-Password
rlm_mschap: FAILED: No NT/LM-Password. Cannot perform authentication.
rlm_mschap: FAILED: MS-CHAP2-Response is incorrect
modcall[authenticate]: module "mschap" returns reject for request 1
modcall: leaving group MS-CHAP (returns reject) for request 1
auth: Failed to validate the user.
Delaying request 1 for 1 seconds
Finished request 1
Going to the next request
Waking up in 6 seconds...
rad_recv: Access-Request packet from host 192.168.10.1:42948, id=84, length=258
Ignoring duplicate packet from client mikrotik:42948 - ID: 84, due to outstanding proxied request 0.
--- Walking the entire request list ---
Waking up in 1 seconds...
rad_recv: Access-Request packet from host 192.168.10.1:42948, id=84, length=258
Ignoring duplicate packet from client mikrotik:42948 - ID: 84, due to outstanding proxied request 0.
Sending Access-Reject of id 0 to 192.168.10.5 port 1814
Proxy-State = 0x3834
Waking up in 1 seconds...
rad_recv: Access-Reject packet from host 192.168.10.5:1812, id=0, length=24
Proxy-State = 0x3834
Processing the post-proxy section of radiusd.conf
modcall: entering group post-proxy for request 0
modcall[post-proxy]: module "eap" returns noop for request 0
modcall: leaving group post-proxy (returns noop) for request 0
Delaying request 0 for 1 seconds
Finished request 0
Going to the next request
Waking up in 1 seconds...
--- Walking the entire request list ---
Waking up in 1 seconds...
--- Walking the entire request list ---
Sending Access-Reject of id 84 to 192.168.10.1 port 42948
Waking up in 3 seconds...
--- Walking the entire request list ---
Cleaning up request 1 ID 0 with timestamp 470770c9
Waking up in 1 seconds...
--- Walking the entire request list ---
Cleaning up request 0 ID 84 with timestamp 470770ca
Nothing to do. Sleeping until we see a request.


Me ajudem

----------


## iceblue

Galera,

desculpe a ignorancia da pergunta....

Eu gostaria de saber quais sao as vantagens de trabalhar com o free radius + mysql...

Alguem pode me explicar?

obrigado.

----------


## cleciorodrigo

Centralização dos dados, ou seja vc pode ter varios servidores mikrotik e ter todos os seus clientes cadastrados em uma unica base de dados, facilitando a manutenção, e podendo implementar outros serviços como o cliente tirar extrato de uso, logs, e alterar a propria senha

Falow




> Galera,
> 
> desculpe a ignorancia da pergunta....
> 
> Eu gostaria de saber quais sao as vantagens de trabalhar com o free radius + mysql...
> 
> Alguem pode me explicar?
> 
> obrigado.

----------


## iceblue

> Centralização dos dados, ou seja vc pode ter varios servidores mikrotik e ter todos os seus clientes cadastrados em uma unica base de dados, facilitando a manutenção, e podendo implementar outros serviços como o cliente tirar extrato de uso, logs, e alterar a propria senha
> 
> Falow


Obrigado pela informação.

----------


## bitim

> Apenas complementando quem quiser ao inves de crias os grupos no mk, e fazer isso direto no mysql com o freeradius basta inserir estes dados no banco de dados do freeradius
> 
> Cria um grupo com velocidade de 128kbps de download e upload, e não permite login simultaneo
> ### Inserir Grupo
> INSERT INTO radgroupreply (GroupName, Attribute, Op, Value) VALUES ("128", "Mikrotik-Rate-Limit", ":=", "128k/128k");
> INSERT INTO radgroupcheck (GroupName, Attribute, Op, Value) VALUES ("128", "Simultaneous-Use", ":=", "1");
> 
> Cria um usuário, define a senha o IP, e o MAC
> ### Inserir Usuário
> ...


Airking, boa pelo post, parabéns!!! Estava querendo implementar com o extrato de horas, você tem alguma dica? 

Abraços,

----------


## psgvaz

Primeiro parabens pelo tutorial

minha duvida e a seguinte:
vc cadastra no Radius o IP e o Mac do cliente, mais eu gostaria de cadastrar o keep alive no Radius, pois gostaria que quando ele se logar, so irar passar o tempo determinado por min. tenho a intencao de fazer um ponto se acesso pago por minuto.
Obrigado..............

----------


## iceblue

Galera, estou apanhando do freeradius aqui...

olha a msg que ele está dando no log do freeradius:
Error: Authentication-Request sent to a non-authentication port from client mikrotik:1024 - ID 1 : IGNORED

Alguem sabe o que pode ser?

outra coisa é q qdo eu rodo o freeradius em modo debug (freeradius -x) ele mostra a seguinte msg:
Starting - reading configuration files ...
Using deprecated naslist file. Support for this will go away soon.
There appears to be another RADIUS server running on the authentication port 1812

ta certo?

obrigado!

----------


## iceblue

boa noite galera,

Consegui resolver todos os problemas descritos acima, gostaria de algumas dicas!  :Big Grin: 


Eu estou ativando o session timeout e ele não está derrubando o kra....eu preciso habilitar alguma coisa no radius? preciso inserir algo no mysql?

Att.

----------


## marcostmariano

muito bacana, mas essa administraçao é soh no banco né?
esse sistema administrativo nao precisa "conversar" com o MK né?


abraço

----------


## tnarnold

E alguém sabe como posso nesse sistema fazer o freeradius "catar" no mysql a senha dos usuario em md5???

alguem tem uma configuraçao de exemplo??

----------


## mson77

edite sql.conf a seu gosto

----------


## tnarnold

isso e ja tinha me ligado mas n tenho muita noçao de sql ate andei pesquisando e encontre um funcao md5(String) do mysql mas n consegui inserir no arquivo do radius por isso perguntei se alguem tem exemplo...

----------


## mson77

E... porque voce precisa disso?


Se durante a dinamica... os dados.. user/senha já sao criptografados... uma vez que vc usa HTTP CHAP.




Abracos,

----------


## iuredaluz

> E... porque voce precisa disso?
> 
> 
> Se durante a dinamica... os dados.. user/senha já sao criptografados... uma vez que vc usa HTTP CHAP.
> 
> 
> 
> 
> Abracos,


 
Caro amigo, a questão do amigo querer por md5 nas senhas é que as senhas ficam gravadas no mysql, e la as senhas ficam sem encriptação nenhuma ok? Se alguem conseguir acessar, ele vai ver as senhas. Abraços

----------


## mson77

Amigão....



sim... eu entendo isso que voce diz...


E... quem tem acesso ao mysql database?
Basta limitar acesso ao DB.



Mas... se vc quer mesmo... realmente... alterar isso... basta alterar as sqls referentes a autenticacao.... vc cadastra usando a funcao md5() ja disponivel no mysql. Ou usa uma outra funcao do mysql chamada password(). Vc decide qual hash deseja usar.



Como isso é coisa muito particular... nao creio que haja exemplo na praça... mas pra implementar isso é simples.


A dica e o caminho a seguir está dada: (depende de cada freeradius instalado... segue arquivo)/etc/raddb/sql.conf/usr/local/etc/raddb/sql.confAbraços,

----------


## tnarnold

Eu preciso disso pq o sistema que eu tenho no provedor gera as senhas com hash md5 e nao tenho como alterar isso.... pq fizeram assim n tenho ideia ainda??? eu tentei alterar o sql.conf mas infelizmente ainda n consegui ja fiz varios testes em varias parte do arquivo reinciando o radius mas n autentica, basta eu ir no mysql e colocar a senha em ascii normal e segue baile, mas o SGCU cria as senha no mysql desse jeito, ai troca manualmente todo usuario q for acrescentado ao sistema fica bucha!!!

----------


## mson77

Ola tnarnold...



Otimo.


Podemos (todos aqui do forum) te ajudar.
Mas ate agora voce não expos aqui.... não postou aqui... NENHUMA INFORMAÇÃO DE FATO para que possamos de orientar e ajudar._ Dica do problema voce postou.__ Dica da solução tambem postamos._Você expõe MELHOR seus ensaios e resultados... o que voce fez... como fez... e resultados... e NÓS AQUI LEITORES... podemos opinar, discutir, ajudar e chegar na solução que você almeja.


O meu esforço aqui é tentar melhorar a QUALIDADE dos tópicos/discussões... e digo isso pois, acompanho esse forum diariamente e leio perguntas e respostas... que eu não consigo compreender. Ahhh... eu consigo ler, mas compreender... talvez depois de 5 leituras. Então seria melhor se as colocações fossem melhor apresentadas... para que os leitores aqui gastem o tempo em ACHAR UMA SOLUÇÃO PARA OS PROBLEMAS APRESENTADOS. E hoje.. tem sido o contrario: OU seja... há que se ler muuito para tentar ADIVINHAR. Nisso já gerou nosso **timeout**.


Voltando ao seu problema... e se voce fez o que diz ter feito... deve ter cometido algum erro de sintaxe.
_
LEMBRE-SE: Quem conhece seu ambiente é voce. SE voce não expor claramente... resta para os leiotres... apenas ADIVINHAR.
_ 

Abracos,


PS: Toda moeda tem 2 faces... aqui os meus comentários são de cunho estritamente **CONSTRUTIVOS**.

----------


## arkimonde

olá gostaria de saber como e feita a comunicaçao do freeradius com o mk a maquina q roda o freeradius precisa ter alguma conexao via cabo com a maquina q roda o mk?

ou e por via internet a comunicaçao?

da pra roda mk no vmware?

se rodasse seria uma beleza nao iria precisar de duas maquinas pra fazer so 1 serviso cada uma.

desde já agradeço todo o pessoal do forum under-linux já virou minha pagina inicial já revirei esse forum quase todo na teoria eu estou bem afiado mais na pratica q o bicho pega.

ate mais pessoal.

----------

