-
Autenticação Hotspot automática via MAC Address
Olá pessoal.
Consegui desenvolver algo que acho muito interessante pra que usa Hotspot em conjunto com o MK-Auth. O usuário é automaticamente logado com o seu nome de usuário e senha, da mesma forma que acontece com a autenticação via cookie, entretanto não é necessário que exista o cookie na máquina do usuário e nem que a autenticação via cookie esteja ativada.
Como funciona?
Quando o usuário está desconectado e tenta acessar qualquer página na internet, ele é automaticamente redirecionado para a página de login do Mikrotik. Nessa página, antes que qualquer coisa apareça na tela, é verificado qual o MAC Address do usuário e se este MAC está cadastrado no MK-Auth.
Se este MAC não existir cadastrado no MK-Auth, a tela de login é exibida normalmente.
Se o MAC existir no banco de dados, o login é feito automaticamente com o nome de usuário e senha cadastrados para este respectivo MAC. Logo em seguida e exibida a tela de boas vindas, avisos ou bloqueio.
Como foi feito?
O arquivo login.html, que fica dentro da pasta "hotspot" do Mikrotik foi alterado para que a página seja redirecionada imediatamente para outro arquivo, chamado "prelogin.php" que está no servidor do MK-Auth, informando para essa página qual o MAC Address do usuário que está acessando no momento. Isso foi necessário pois o servidor web do mikrotik não interpreta páginas em PHP.
Esta página "prelogin.php", já com posse do MAC do usuário, acessa o banco de dados do MK-Auth e procura este MAC. Se encontrar, faz o login automático no Mikrotik já com o login e senha cadastrados no MK-Auth. Se não encontrar o MAC, exibe a página normal de login.
Quais os benefícios?
- Acaba com o login e senha para hotspot. Não é mais necessário que o usuário saiba o login e senha dele. O login será feito sempre automaticamente.
- O cliente não precisa mais digitar seu login e senha, o que na verdade, depois de um tempo, se torna sacal para o cliente.
- Clientes não podem mais se conectar com outros nomes de usuário.
- É perfeito para uso com rádios e CPE's em conjunção com redes protegidas por WPA2. O usuário não tem como alterar o MAC do rádio, pois não sabe a senha do rádio. Se o usuário resetar o rádio, não consegue mais se conectar ao Wi-Fi, pois não sabe a senha da rede. Portanto, o nível de proteção aumenta consideravelmente.
Depois vou postar aqui os 2 arquivos usados para realizar esta mudança.
Abraços,
Jonas Lima
-
Re: Autenticação Hotspot automática via MAC Address
e se alguem clonar o MAC ???
-
Re: Autenticação Hotspot automática via MAC Address
Citação:
Postado originalmente por
alexsuarezferreira
e se alguem clonar o MAC ???
Isso é um pesadelo!
-
Re: Autenticação Hotspot automática via MAC Address
Você descobrirá em breve, pois seu cliente irá reclamar. rsrsrs
-
Re: Autenticação Hotspot automática via MAC Address
descobrirá e voce terá dor de cabeça do mesmo jeito... sou contra essa pratica e prefiro fazer a autenticação por PPPoE dentro do rádio do cliente sem passar a senha pra ele, ai para alguem de fora acessar tem que clonar mac e ainda descobrir o login e senha do PPPoE, e isso eu nunca via acontecer.
-
Re: Autenticação Hotspot automática via MAC Address
rbginfo, se alguem clonar o MAC, esse cliente já irá parar de navegar ou ter sua navegação prejudicada. Já numa rede WPA2, se torna "impossível" o usuario conectar mesmo clonando o MAC.
-
Re: Autenticação Hotspot automática via MAC Address
show de bola a solução.....não possível criar um java que faça isso pra rodar direto no mk?
-
Re: Autenticação Hotspot automática via MAC Address
Eu nunca usei, mas se marcar na criação do hotspot o login só por mac não faz o mesmo efeito?
-
Re: Autenticação Hotspot automática via MAC Address
Citação:
show de bola a solução.....não possível criar um java que faça isso pra rodar direto no mk?
Gustavinho, javascript não acessa MySQL e criar isso em Java não seria muito prático e eficiente. Nem todos os computadores possuem Java.
Citação:
Eu nunca usei, mas se marcar na criação do hotspot o login só por mac não faz o mesmo efeito?
1929, não. O login por MAC do Mikrotik possui uma senha única para todos os usuários e quando o usuário se conecta, na lista de usuários ativos do Mikrotik o que aparece é o MAC do usuário, e não o seu nome.
-
Re: Autenticação Hotspot automática via MAC Address
Que pena.....depois se puder postar os arquivos ai, agradecemos.
Abs
-
Re: Autenticação Hotspot automática via MAC Address
Bom... vamos lá para os arquivos:
http://www.multiupload.nl/JKZEB4AQ4N
Segue agora o passo-a-passo:
1) O arquivo login.html deve ser editado e onde você encontrar o ip 172.31.255.2, altere para o ip do seu mk-auth.
2) O arquivo prelogin.php deve ser editado e altere onde encontrar o ip 5.0.0.1 para o ip do hotspot do seu Mikrotik. As edições podem ser feitas com o bloco de notas.
3) Em seguida, coloque o arquivo login.html na sua pasta hotspot no mikrotik, substituindo o arquivo anterior.
4) Agora se conecte ao Mk-Auth via winscp (o Mk-auth não aceita conexões FTP) e navegue até a pasta /var/www/ e crie uma pasta chamada "login" (sem as aspas).
5) Coloque o arquivo prelogin.php dentro desta pasta "login".
6) Vá no Winbox, acesse IP -> Hotspot -> Walled Garden -> clique no sinal de + e configure da seguinte forma:
Action: allow
Dst. Host: (ip do Mk-Auth)
Dst. Port: 80
7) Pronto!
Para testar, adicione o MAC Address da sua máquina em um usuário qualquer do MK-Auth. Exclua os cookies da sua máquina e se desconecte do hotspot. Tente agora navegar e verá que você foi automaticamente conectado com o usuário que você escolheu.
Qualquer dúvida, estamos aí.
Abraços,
Jonas Lima
-
Re: Autenticação Hotspot automática via MAC Address
Eita estrelinha para vc jlima2001, uma solução bacana e sem fins lucrativos, parabéns mesmo.
-
Re: Autenticação Hotspot automática via MAC Address
Estou fazendo a implementação do MK-AUTH aqui na rede e estava justamente pensando em como não utilizar essa tela de login dele, com certeza esse método vai me ajudar..
Parabéns pela solução.....
-
Re: Autenticação Hotspot automática via MAC Address
Lima não consegui baixar os arquivos.
-
Re: Autenticação Hotspot automática via MAC Address
Paulo, não tive problemas aqui pra efetuar o download. De qualquer forma, me passe seu email que lhe envio os arquivos.
-
1 Anexo(s)
Re: Autenticação Hotspot automática via MAC Address
Citação:
Postado originalmente por
jlima2001
Paulo, não tive problemas aqui pra efetuar o download. De qualquer forma, me passe seu email que lhe envio os arquivos.
suporte (at) naveganaweb (ponto) com
abraços e no aguardo
Anexo 38558
-
Re: Autenticação Hotspot automática via MAC Address
Olá, estou passando por um problema complicado e pra completar, meu user aqui no Under não pode iniciar novos tópicos(não faço idéia do porque). De qualquer forma vou dizer ao você pra ver se consigo uma luz:
Fui contratado pra resolver um problema em uma empresa de Minas Gerais, ela possui um hotspot que faz controle por mac+ip+login. Tudo funciona normalmente. O usuário se conecta, ganha ip baseado no mac já cadastrado, o tráfego é bloqueado até passar pelo login no navegador.
O problema:
Moradores vizinhos da empresa estão clonando os macs, e ganhando os mesmos ips. Não ocorre colisões devido ao fato de ser wi-fi, já que o hotspot pensa que é só mais uma requisição vinda do funcionário. No entanto, fiz testes aqui e ENQUANTO o funcionário está conectado, o hotspot bloqueia tráfego TCP dando um RST flag. Ou seja, quando o invasor tenta navegar, o navegador retorna com um "Conexão reiniciada" e o site não abre. Mas... Observei que "alguns" invasores estão burlando este bloqueio e conseguem usar UDP normalmente. Já tentei entender este bloqueio pra sacar a tática do invasor e bloquear, mas não encontro nada na net e não sei como funciona isso. Sem falar que tenho pouca experiência em MK e hotspot.
Por isso venho aqui pedir a ajuda do Under, esses invasores estão atrapalhando muito o link da empresa e ainda podem trazer maiores complicações judiciais.
Valeu galera!
-
Re: Autenticação Hotspot automática via MAC Address
Cytron, pelo que você disse, o problema é fácil de resolver. Habilite criptografia na sua rede WiFi, preferencialmente WPA2. De nada adianta os vizinhos clonarem MAC se eles não podem se conectar na sua rede.
Abraços,
Jonas Lima
-
Re: Autenticação Hotspot automática via MAC Address
Alem do que o colega jlima2001 falou, somente pppoe depois é claro da wpa2.
-
Re: Autenticação Hotspot automática via MAC Address
Na verdade näo faz diferenca se é PPPoe ou hotspot ou macxip. Tudo säo formas de autenticacäo. O que vai dar mais seguranca é a criptografia.
Tem uma apresentacáo em Power Point do Wardner Maia, sobre isso, onde ele explica bem. Náo tem sistema de autenticacäo que de seguranca.
Na internet está cheio de tutoriais ensinando a quebrar praticamente todas as formas, menos WPA2.
Só criptografia mesmo. E WPA2 AES é a que vai mais tranquilo.
-
Re: Autenticação Hotspot automática via MAC Address
Citação:
Postado originalmente por
1929
Na verdade näo faz diferenca se é PPPoe ou hotspot ou macxip. Tudo säo formas de autenticacäo. O que vai dar mais seguranca é a criptografia.
Tem uma apresentacáo em Power Point do Wardner Maia, sobre isso, onde ele explica bem. Náo tem sistema de autenticacäo que de seguranca.
Na internet está cheio de tutoriais ensinando a quebrar praticamente todas as formas, menos WPA2.
Só criptografia mesmo. E WPA2 AES é a que vai mais tranquilo.
Disse tudo ;)
-
Re: Autenticação Hotspot automática via MAC Address
Citação:
Postado originalmente por
jlima2001
Paulo, não tive problemas aqui pra efetuar o download. De qualquer forma, me passe seu email que lhe envio os arquivos.
Boa noite amigo. Primeiramente parabéns pela atitude de compartilhar, mas os links estão off. poderia re-upar ou me enviar por email. athila @ skynetrs . com . br. Obrigado.
-
Re: Autenticação Hotspot automática via MAC Address
Bom dia a todos. Primeiramente queria pedir desculpas pela demora em prover a solução para esse problema. Como disse a um tempo atrás, estou sobrecarregado de serviço, o que me deixa sem tempo para outras coisas.Antes do passo-a-passo, gostaria de esclarecer um detalhe:
O Mikrotik já possui a autenticação automática por MAC, entretanto quando esse recurso é usado, o que aparece logado na lista de usuários ativos do hotspot no Winbox é o MAC do cliente, e não o seu nome de usuário, o que dificulta muito na hora de um suporte ao cliente. Essa foi a solução mostrada aqui pelo Pedro alguns dias atrás neste post.
A minha solução é diferente. Apesar do login ser feito baseado no MAC do cliente, o que aparece conectado no Winbox é o próprio nome do usuário, facilitando saber quem está conectado ou não.
Bom, vamos agora para o que interessa. Esse passo-a-passo não foi testado por mim, pois já possuo a solução funcionando. Entretanto, me atentei a todos os detalhes possíveis e acho MUITO PROVÁVEL estar funcionando.
Lembrando mais uma coisa: Essa solução só funciona se o seu Mk-Auth está dentro da mesma rede que o seu Mikrotik (o que deve ser a grande maioria). Se o seu Mk-Auth estiver em um IP externo, esqueça essa solução.
Antes de tudo, faça o download desse arquivo: www.tecitaly.com.br/login.zip
Dentro deste arquivo, existem 2 outros arquivos: login.html e prelogin.php. São esses arquivos que iremos usar, portanto, extraia eles para uma pasta qualquer do seu computador.
O passo-a-passo:
1 - Se o IP do seu Mk-Auth for diferente de 172.31.255.2, substitua dentro do arquivo login.html este ip pelo ip do seu Mk-Auth.
2 - Renomeie no seu Mikrotik o arquivo original login.html para login2.html.
3 - Coloque o novo arquivo login.html no seu Mikrotik. Irá ficar então o login.html e o login2.html.
4 - No Winbox, em IP -> HotSpot -> Walled Garden, clique no sinal + para adicionar uma nova entrada. Preencha da seguinte forma:
Action: allow
Dst. Host: 172.31.255.2 (ou o IP do Mk-Auth)
Dst. Port: 80
Clique em OK para adicionar a nova entrada.
5- No Winbox, em IP -> Hotspot -> Server Profiles, clique duas vezes no profile existente e vá na aba Login. Marque as opções HTTP CHAP e HTTP PAP.
6 - Abra o WINSCP e acesse o FTP do Mk-Auth (espero que saiba fazer isso). Navegue até a página /var/wwww e crie uma nova pasta com o nome "login" (sem aspas).
7 - Dentro desta pasta "login", copie para lá o arquivo prelogin.php.
8 - Daí em diante, no MK-Auth basta cadastrar o MAC de cada usuário.
Como o sistema funciona:
Quando um usuário tentar acessar qualquer página e ainda não está logado no Mikrotik, ele é automaticamente redirecionado para a página login.html do Mikrotik. Essa página então redireciona novamente para a página prelogin.php do Mk-Auth.
Nesta página é verificado se aquele MAC que está acessando a página está cadastrado no banco de dados do Mk-Auth. Se estiver, ele obtém o nome de usuário e a senha no banco de dados e faz o login automático daquele cliente. Caso o MAC não exista no banco de dados, ele é redirecionado para a página login2.html do Mikrotik e então a página de login é exibida normalmente.
Fico na torcida para que todos consigam.
Abraços,
Jonas Lima
-
Citação:
Postado originalmente por
jlima2001
Bom dia a todos. Primeiramente queria pedir desculpas pela demora em prover a solução para esse problema. Como disse a um tempo atrás, estou sobrecarregado de serviço, o que me deixa sem tempo para outras coisas.Antes do passo-a-passo, gostaria de esclarecer um detalhe:
O Mikrotik já possui a autenticação automática por MAC, entretanto quando esse recurso é usado, o que aparece logado na lista de usuários ativos do hotspot no Winbox é o MAC do cliente, e não o seu nome de usuário, o que dificulta muito na hora de um suporte ao cliente. Essa foi a solução mostrada aqui pelo Pedro alguns dias atrás neste post.
A minha solução é diferente. Apesar do login ser feito baseado no MAC do cliente, o que aparece conectado no Winbox é o próprio nome do usuário, facilitando saber quem está conectado ou não.
Bom, vamos agora para o que interessa. Esse passo-a-passo não foi testado por mim, pois já possuo a solução funcionando. Entretanto, me atentei a todos os detalhes possíveis e acho MUITO PROVÁVEL estar funcionando.
Lembrando mais uma coisa: Essa solução só funciona se o seu Mk-Auth está dentro da mesma rede que o seu Mikrotik (o que deve ser a grande maioria). Se o seu Mk-Auth estiver em um IP externo, esqueça essa solução.
Antes de tudo, faça o download desse arquivo: www.tecitaly.com.br/login.zip
Dentro deste arquivo, existem 2 outros arquivos: login.html e prelogin.php. São esses arquivos que iremos usar, portanto, extraia eles para uma pasta qualquer do seu computador.
O passo-a-passo:
1 - Se o IP do seu Mk-Auth for diferente de 172.31.255.2, substitua dentro do arquivo login.html este ip pelo ip do seu Mk-Auth.
2 - Renomeie no seu Mikrotik o arquivo original login.html para login2.html.
3 - Coloque o novo arquivo login.html no seu Mikrotik. Irá ficar então o login.html e o login2.html.
4 - No Winbox, em IP -> HotSpot -> Walled Garden, clique no sinal + para adicionar uma nova entrada. Preencha da seguinte forma:
Action: allow
Dst. Host: 172.31.255.2 (ou o IP do Mk-Auth)
Dst. Port: 80
Clique em OK para adicionar a nova entrada.
5- No Winbox, em IP -> Hotspot -> Server Profiles, clique duas vezes no profile existente e vá na aba Login. Marque as opções HTTP CHAP e HTTP PAP.
6 - Abra o WINSCP e acesse o FTP do Mk-Auth (espero que saiba fazer isso). Navegue até a página /var/wwww e crie uma nova pasta com o nome "login" (sem aspas).
7 - Dentro desta pasta "login", copie para lá o arquivo prelogin.php.
8 - Daí em diante, no MK-Auth basta cadastrar o MAC de cada usuário.
Como o sistema funciona:
Quando um usuário tentar acessar qualquer página e ainda não está logado no Mikrotik, ele é automaticamente redirecionado para a página login.html do Mikrotik. Essa página então redireciona novamente para a página prelogin.php do Mk-Auth.
Nesta página é verificado se aquele MAC que está acessando a página está cadastrado no banco de dados do Mk-Auth. Se estiver, ele obtém o nome de usuário e a senha no banco de dados e faz o login automático daquele cliente. Caso o MAC não exista no banco de dados, ele é redirecionado para a página login2.html do Mikrotik e então a página de login é exibida normalmente.
Fico na torcida para que todos consigam.
Abraços,
Jonas Lima
Olá jlima2001.
Implementei a solução aqui no provedor, funcionou quase perfeitamente, so notei um problema ao fazer o teste com clientes adicionais, ele nao autentica os mesmos, poderia verificar para nós.
Grato.
-
Re: Autenticação Hotspot automática via MAC Address
Agosto de 2017, muita coisa mudou e muita coisa não mudou, uso o mk-auth mas precisaria colocar mais de um mac por cadastro de cliente.
Tipo como se eu for deixar em a cpe e roteador em bridge e autenticar por hotspot como antigamente, só que usaria só o mac dos celulares. Neste caso eu precisaria colocar os mac´s de todos os membros da familia no mk-auth (marido, esposa, filhos, sogra etc..)
Alguem sabe qual solução ou indicar algum sistema para fazer este trabalho?