Introdução
Este guia descreve os passos de configuração para habilitar um portal cativo externo na plataforma Mikrotik.
O guia a seguir foi criado utilizando uma rede Mikrotik com os seguintes componentes:
- Router: Mikrotik RouterBoard 450G
- Firmware: 3.22
- RouterOS: v6.23
Requisitos
Você precisa ter um Mikrotik RouterBoard com acesso à Internet já configurado.
Você pode redefinir o seu RouterBoard e conectar o cabo com acesso à Internet à porta do gateway Ethernet (ether1-gateway).
Por padrão, o RouterBoard é configurado com aquisição automática de endereço, então ele obterá o IP e o Gateway da sua conexão de cabo de Internet e também configurará um Cliente DHCP.
Este guia foi criado usando a interface de configuração WebFig, mas você pode aplicar as mesmas configurações usando o Winbox.
Interfaces
Por padrão, o RouterBoard 450G vem com 5 portas e as seguintes interfaces:
- ether1-gateway
- ether2-master-local
- ether3-slave-local
- ether4-slave-local
- ether5-slave-local
Neste guia, vamos criar uma nova interface (bridge-hotspot) e associar uma das interfaces slaves ao bridge.
Ethernet
Vá para Interfaces e edite uma das interfaces (por exemplo, ether4-slave-local). Altere as seguintes opções:
- Name: ether4
- Master Port: none
Bridge
Vá para bridge e clique em "Add New". Defina as configurações da seguinte forma:
- Name: bridge-hotspot
Bridge Port
Agora você precisa associar a interface Ethernet à ponte.
Vá para Bridge > Ports e clique em "Add New". Defina as configurações da seguinte forma:
- Interface: ether4
- Bridge: bridge-hotspot
Radius
Vá para Radius e clique em "Add New". Defina as configurações da seguinte forma:
- Enabled: checked
- Service: Hotspot
- Address: O RADIUS server IP de acordo com a sua região.
- Secret: O secret Radius feito pelo cliente.
- Authentication Port: 1812
- Accounting Port: 1813
- Timeout: 2000 ms
Repita o procedimento para o servidor RADIUS secundário.
Hotspot
Vá para IP > Hotspot.
A Mikrotik oferece um assistente (Hotspot setup) para criar quase todos os recursos relacionados ao Hotspot.
Hotspot Setup
Clique em "Hotspot Setup".
Escolha o "bridge-hotspot" como "Hotspot Interface":
Defina "Local Address of Network" como 10.5.50.1/24:
Mantenha o valor padrão (10.5.50.2-10.5.50.254) para "Address Pool of Network":
Defina "Select Certificate" as "none":
Defina o "IP Address of SMTP Server" como "0.0.0.0":
Defina o DNS servers:
- 10.5.50.1
- 8.8.8.8 (optional)
- 8.8.4.4 (optional)
Defina o "DNS Name" como "social-id-hotspot-dns":
E crie o Hotspot user padrão:
Você pode remover este usuário posteriormente.
Agora que você criou os recursos do Hotspot, será necessário alterar algumas configurações nas etapas seguintes.
User Profile
Vá para IP > Hotspot > User Profiles. Edite a entrada padrão e altere as seguintes opções:
- Session Timeout: 00:30:00
- Idle Timeout: clear this entry
- Shared Users: clear this entry
Server Profile
Vá para IP > Hotspot > Server Profiles. Altere o hsprof1 entry e altere as seguintes opções:
- Login By: marque a opção "HTTP PAP"
- Use RADIUS: checked
- MAC Format: XX:XX:XX:XX:XX:XX (default option)
- Accounting: checked (default option)
Hotspot Server
Vá para IP > Hotspot > Servers. Altere o hs-bridge-hotspot e faça as opções a seguir:
- Idle Timeout: Defina o tempo limite que deseja. (e.g.: 00:05:00)
- Addresses Per MAC: 1
Walled Garden
Permita URLs da plataforma CoffeeBean e URLs de redes sociais configurando o Walled Garden.
Vá para IP > Hotspot > Walled Garden. Para cada domínio de Social Login que você precisa usar, crie uma entrada no Walled Garden. (Você pode achar os links e ips em Walled Garden for the Social Login).
Por exemplo, para adicionar *.socialidnow.com, clique em "Add New" e defina as opções a seguir:
- Dst. Host: *.socialidnow.com
Ao final, você terá algo parecido com isso:
Files
Quando você cria um hotspot no Mikrotik, ele automaticamente adiciona todos os arquivos e diretórios, criando um portal "internal" hospedado no Mikrotik. Dessa forma, quando um cliente se conecta à rede, é redirecionado para esse portal.
Se voce perdeu os arquivos, você pode recriar eles ao entrar em IP > Hotspot > Hotspot Server, clique para editar seu servidor e em seguida clique no botão "Reset HTML". O formato dos arquivos é semelhante a isso::
O portal Wi-Fi CoffeeBean é um portal externo, na nuvem. Portanto, é necessário redirecionar a página interna de login para aquela hospedada pela CoffeeBean.
Você precisa substituir o seu arquivo hotspot/login.html por:
<html> <head> <title>Login</title> <meta http-equiv="refresh" content="0; url=http://wifi.socialidnow.com/portals/<portal-name>/auth?client_mac=$(mac)&client_ip=$(ip)&login_url=$(link-login-only)" /> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="expires" content="-1"> </head> <body> </body> </html>
Onde <portal-name> deve ser substituído pelo nome do seu portal.
To replace this file you can use a FTP client to connect to Mikrotik appliance.
Venue Customization
A Mikrotik não fornece um parâmetro para identificar qual ponto de acesso está sendo usado, então não há maneira de detectar automaticamente o local atual. Se você precisa das informações do local para fazer qualquer personalização ou para relatórios, talvez queira usar um fluxo personalizado para detectá-las.
A maneira mais simples de alcançar isso é mapear uma variável do Mikrotik (e.g. the "server-name") para o nome do local e atualizar o modelo do portal conforme descrito na pagina Captive Portal Customizations - Venues .
Você também precisará atualizar o código hotspot/login.html conforme mostrado abaixo para adicionar a variável do Mikrotik que contém o nome do local::
<html> <head> <title>Login</title> <meta http-equiv="refresh" content="0; url=http://wifi.socialidnow.com/portals/<portal-name>/auth?client_mac=$(mac)&client_ip=$(ip)&login_url=$(link-login-only)&venue_name=$(server-name)" /> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="expires" content="-1"> </head> <body> </body> </html>
Wireless Gateway
A Mikrotik oferece produtos nas categorias de Roteadores Sem Fio e Roteadores Ethernet, ambos executando o RouterOS.
Se você tiver um dispositivo wireless, pode simplesmente configurar a interface wireless para a bridge, e sua rede wireless estará pronta para gerenciar a autenticação do usuário pelo servidor Hotspot.
Se você tiver um Roteador Ethernet, pode usá-lo como um gateway para gerenciar os serviços de Hotspot. Conecte um ponto de acesso (AP) de qualquer fabricante à Hotspot interface configurada, dessa forma, todos os clientes conectados ao AP serão obrigados a se autenticar por meio do Servidor Hotspot Mikrotik.
Para criar este guia, configuramos um ponto de acesso Cisco Aironet, com autenticação aberta, e o conectamos à porta ether4 do Mikrotik, que é uma slave para a bridge do hotspot.
Security
Não se esqueça de seguir algumas diretrizes simples de segurança:
- Defina uma senha forte para qualquer usuário administrativo.
- Revise as regras do firewall (IP > Firewall).