Differences

This shows you the differences between two versions of the page.

Link to this comparison view

montat_un_hotspot [2012/06/06 12:15] (current)
Line 1: Line 1:
 +====== DIY HotSpot Wifi ======
 +
 + Si necessites ajuda o tens algún comentari sobre aquest document pots visitar [[http://​oriol.joor.net/​blog/?​item=montar-un-hotspot-gateway-amb-mikrotik-i-linksys-wrt54gl|DIY HotSpot Wifi blog post]].
 +
 + ​[[hotspot_wifi|English version]]
 +
 +===== Topologia de Xarxa =====
 +
 +{{ http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​topologia-xarxa-thumb.png }}
 +
 +[[http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​topologia-xarxa.png|+ Zoom]]
 +
 +===== Elements =====
 +
 +  * Linksys WRT54G usat com a AP en mode bridge.
 +  * Mikrotik Routerboard 150 com a Hotspot gateway.
 +  * Router ADSL
 +
 +===== Linksys WRT54G com a AP en mode bridge =====
 +
 +Desactivar la interfície d'​Internet (WAN) i no fer servir aquest port. Només s'ha de configurar la interfície LAN amb una IP que serà només de gestió. En el nostre cas, posarem una IP del mateix rang dels clients, i protegirem l'​accés a l'​administració del router amb un nom d'​usuari i paraula de pas.
 +
 +Cal desactivar també el DHCP de l'​apartat LAN i per acabar posarem el nostre SSID i canal més òptim.
 +
 +{{ http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​conf01.png }}
 +\\
 +{{ http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​conf02.png }}
 +
 +===== Mikrotik RouterBoard 150 =====
 +
 +El RouterBoard 150 és un aparell que incorpora el RouterOS i pot ser configurat com a Hotspot Gateway. No té interfície wireless, només té 5 ports ethernet: 1 dels ports és amb suport POE i els altres 4 són ports ethernet estàndard. En el nostre escenari fem servir el primer port com a WAN i els altres 4 ports com a bridge on hi connectarem els AP bridges, si es necessiten més ports, es pot connectar un switch en qualsevol d’aquests 4 ports.
 +
 +En resum, en el primer port i connectem el router ADSL , i en qualsevol dels altres ports l'AP bridge.
 +
 +Fent el bridge entre les interfícies de la 2 a la 5:
 +
 +
 +<code bash>
 +/ interface bridge ​
 +add name="​bridge1"​ mtu=1500 arp=enabled stp=no priority=32768 ageing-time=5m \
 +    forward-delay=15s garbage-collection-interval=5s hello-time=2s \
 +    max-message-age=20s comment=""​ disabled=no ​
 +/ interface bridge port 
 +add interface=ether2 bridge=bridge1 priority=128 path-cost=10 comment=""​ \
 +    disabled=no ​
 +add interface=ether3 bridge=bridge1 priority=128 path-cost=10 comment=""​ \
 +    disabled=no ​
 +add interface=ether4 bridge=bridge1 priority=128 path-cost=10 comment=""​ \
 +    disabled=no ​
 +add interface=ether5 bridge=bridge1 priority=128 path-cost=10 comment=""​ \
 +    disabled=no ​
 +</​code>​
 +
 +Posant les IPs a les interfícies '​ethernet0'​ i '​bridge1':​
 +
 +<code bash>
 +/ ip address ​
 +add address=1.1.1.2/​24 network=1.1.1.0 broadcast=1.1.1.255 \
 +    interface=ether1 comment="​Internet"​ disabled=no ​
 +add address=10.5.50.1/​24 network=10.5.50.0 broadcast=10.5.50.255 \
 +    interface=bridge1 comment="​Interface LAN i WLAN" disabled=no ​
 +</​code>​
 +
 +Configurant les rutes estàtiques per defecte, DNS i NAT: 
 +
 +<code bash>
 +/ ip route 
 +add dst-address=0.0.0.0/​0 gateway=1.1.1.1 scope=255 target-scope=10 \
 +    comment=""​ disabled=no ​
 +/ ip dns 
 +set primary-dns=208.67.222.222 secondary-dns=208.67.220.220 \
 +    allow-remote-requests=no cache-size=2048KiB cache-max-ttl=1w ​
 +/ ip firewall nat 
 +add chain=srcnat src-address=10.5.50.0/​24 action=masquerade \
 +    comment="​masquerade hotspot network"​ disabled=no ​
 +</​code>​
 +
 +Creant un IP pool i activant DHCP server: ​
 +
 +<code bash>
 +/ ip pool 
 +add name="​hs-pool-6"​ ranges=10.5.50.65-10.5.50.190 ​
 +/ ip dhcp-server ​
 +add name="​dhcp1"​ interface=bridge1 lease-time=1h address-pool=hs-pool-6 \
 +    bootp-support=static authoritative=after-2sec-delay disabled=no ​
 +/ ip dhcp-server config ​
 +set store-leases-disk=5m ​
 +/ ip dhcp-server network ​
 +add address=10.5.50.0/​24 gateway=10.5.50.1 comment="​hotspot network" ​
 +</​code>​
 +
 +Creant el HotSpot en l'​interficie del '​bridge1',​ i fixem el servei FTP en el port per defecte (21/tcp). Gràcies a l'ftp podem pujar les nostres pàgines HTML personalitzades pel portal captiu del HotSpot.
 +
 +<code bash>
 +/ ip hotspot ​
 +add name="​hotspot1"​ interface=bridge1 address-pool=hs-pool-6 profile=hsprof1 \
 +    idle-timeout=5m keepalive-timeout=none addresses-per-mac=2 disabled=no ​
 +/ ip hotspot service-port ​
 +set ftp ports=21 disabled=no ​
 +</​code>​
 +
 +Ara tindrem que crear un perfil pel servei de HotSpot: ​
 +
 +
 +<code bash>
 +/ ip hotspot profile ​
 +add name="​hsprof1"​ hotspot-address=10.5.50.1 dns-name=""​ \
 +    html-directory=hotspot rate-limit=""​ http-proxy=0.0.0.0:​0 \
 +    smtp-server=0.0.0.0 login-by=http-chap split-user-domain=no use-radius=yes \
 +    radius-accounting=yes radius-interim-update=received \
 +    nas-port-type=wireless-802.11 radius-default-domain=""​ \
 +    radius-location-id=""​ radius-location-name="" ​
 +/ ip hotspot user profile ​
 +set default name="​default"​ idle-timeout=none keepalive-timeout=2m \
 +    status-autorefresh=1m shared-users=1 transparent-proxy=yes \
 +    open-status-page=always advertise=no ​
 +</​code>​
 +
 +Una bona idea és fer servir l'user manager service per administrar els usuaris i clients del HotSpot. L'​avantatge principal és que tens una interficie web per administrar-ho. Pots accedir a l’interfície web del user manager per la IP de la WAN. La configuració mínima és afegir els clients (que utlitzen la xarxa) i  el router on hi ha la base de dades d'​usuaris,​ és important afegir l’adreça IP WAN aquí, perqué les adreces del '​bridge1'​ estan protegides pel HotSpot propiament i no permeten connectar-se a ell mateix.
 +
 +<code bash>
 +/ tool user-manager customer ​
 +add login="​mysubscriber"​ password="​mypassword"​ time-zone=+00:​00 \
 +    permissions=owner parent=mysubscriber comment=""​ disabled=no ​
 +/ tool user-manager router ​
 +add subscriber=mysubscriber name="​router1"​ ip-address=1.1.1.2 \
 +    shared-secret="​mysubscriber2pass"​ log=auth-ok,​auth-fail,​acct-fail comment=""​ \
 +    disabled=no ​
 +</​code>​
 +
 +Pots afegir un usuari de proves (test) per provar el hotspot sense que tingui accés web al "user manager": ​
 +
 +<code bash>
 +/ tool user-manager user 
 +add subscriber=mysubscriber name="​myuser"​ password="​mypassword"​ comment=""​ disabled=no ​
 +</​code>​
 +
 +Finalment uns ajustaments del Radius, ja que necessitem connectar el sistema de control del HotSpot al servei d'user manager: ​
 +
 +<code bash>
 +/ radius ​
 +add service=hotspot called-id=""​ domain=""​ address=1.1.1.2 \
 +    secret="​mysubscriber2pass"​ authentication-port=1812 accounting-port=1813 \
 +    timeout=300ms accounting-backup=no realm=""​ comment=""​ disabled=no ​
 +</​code>​
 +
 +
 +===== Usant el HotSpot =====
 +
 +Ara quan connectem el portàtil amb la targeta wireless a la xarxa '​myssid'​ amb el client DHCP activat, el portàtil rep la IP del pool de IPs del servidor DHCP. Llavors l’usuari obre el navegador i entra una URL qualsevol, aquesta petició és capturada pel HotSpot i el navegador ensenya la pàgina de login:
 +
 +{{ http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​hotspot-url-auth.png }}
 +
 +El visitant entre les seves dades d'​autentificació,​ nom i paraula de pas i després el navegador el redirigeix cap a la URL original demanada en el primer moment per l'​usuari,​ al mateix temps una finestreta '​pop-up'​ s'​obrirà aportant informació del HotSpot.
 +
 +Quan l'​usuari acaba la sessió pot apretar el botó de '​log-off'​ del '​pop-up'​ o senzillament tancar el navegador i d’aquesta manera es desconnectat per '​timeout'​.
 +
 +===== Gestionant els usuaris del HotSpot =====
 +
 +{{ http://​oriol.joor.net/​blog/​wiki/​media/​hotspot/​userman-llistausuaris.png }}
 +
 +==== Des d'​Internet ====
 +
 +Només has de posar la URL: http://​1.1.1.2/​userman i  ja pots configurar els clients per que puguin accedir, com mostra l'​exemple:​
 +\\
 +user: myuser\\
 +pass: mypassword\\
 +
 +==== Des de la WLAN o LAN ====
 +
 +Si connectes un PC o un portàtil al Mikrotik, o si et connectes per la xarxa wifi, el procediment és el mateix, però serà necessari passar per el procés d’autentificació del HotSpot ja que s’ha d’accedir a la IP WAN que esta per darrera el HotSpot.