Mudanças entre as edições de "Fumaça Data Springs/Anexo técnico"
(→Instalação do portal de controle de acesso) |
(→Instalação do portal de controle de acesso) |
||
| (14 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
| Linha 21: | Linha 21: | ||
*campinho -> [http://] | *campinho -> [http://] | ||
| + | |||
| + | 10.7.128.23 igrejinha nano beam p/ torre | ||
| + | 10.7.128.22 torre nano beam p / igrejinha ssid: bridge_morrinho | ||
| + | 10.7.128.20 torre rocket p resende | ||
| + | 10.7.128.21 torre petcenter | ||
| + | 10.7.128.29 tania | ||
| + | 10.7.128.24 igrejinha -> benedita | ||
| + | 10.7.128.25 benedita -> igrejinha | ||
* 2a00:1508:a57:8900::ad:a3f1 salao | * 2a00:1508:a57:8900::ad:a3f1 salao | ||
| Linha 41: | Linha 49: | ||
* Esse sistema de validação e portal cativo não funciona quando não há acesso internet, ou quando o acesso cai. Para isso, tem uma gambiarra descrita no fim da página | * Esse sistema de validação e portal cativo não funciona quando não há acesso internet, ou quando o acesso cai. Para isso, tem uma gambiarra descrita no fim da página | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | * Para versão DaybootRely da LibreMesh (1706) | ||
| + | ** Para essa versão é necessário ter acesso ssh. Faça o login, e da linha de comando dê: | ||
| + | |||
| + | <pre> | ||
| + | opkg update | ||
| + | </pre> | ||
| + | |||
| + | <pre> | ||
| + | opkg install http://nuvem.tk/files/nodogsplash_0.9.2-1_mips_24kc.ipk | ||
| + | </pre> | ||
| + | |||
| + | <pre> | ||
| + | rm /etc/config/nodogsplash | ||
| + | </pre> | ||
| + | |||
* Para versão Chaos Calmer da LibreMesh (1607) | * Para versão Chaos Calmer da LibreMesh (1607) | ||
| Linha 143: | Linha 170: | ||
EnablePreAuth yes | EnablePreAuth yes | ||
| − | + | </pre> | |
| − | |||
** Edite o arquivo /etc/nodogsplash/htdocs/splash-vale.html para refletir as necessidades e contexto da sua comunidade e salve como splash.html (substituindo o splash.html que está no mesmo diretório). Manter o iframe, assim como form e os campos dentro dele. | ** Edite o arquivo /etc/nodogsplash/htdocs/splash-vale.html para refletir as necessidades e contexto da sua comunidade e salve como splash.html (substituindo o splash.html que está no mesmo diretório). Manter o iframe, assim como form e os campos dentro dele. | ||
| Linha 151: | Linha 177: | ||
* Traduza ou customize as mensagens de erro que estão no arquivo /www/cgi-bin/vale | * Traduza ou customize as mensagens de erro que estão no arquivo /www/cgi-bin/vale | ||
| − | * Adicione seus códigos no arquivo /etc/nodogsplash/vale/db.csv (use um gerador aleatório como [http://www.randomcodegenerator.com | + | * Adicione seus códigos no arquivo /etc/nodogsplash/vale/db.csv (use um gerador aleatório como [http://www.randomcodegenerator.com www.randomcodegenerator.com]). A primeira coluna não é utilizada. Cada linha tem que terminar com as duas vírgulas, sem espaços. |
| + | |||
| + | obs: vale.sh modificado para fazer um voucher por dispositivo e não mandar visitar a página do portal todo dia: [https://raw.githubusercontent.com/libremesh/lime-packages/26f03f77c3db1dddb5fd6c34e8b7f551584af5d2/packages/vale/files/usr/bin/vale.sh https://raw.githubusercontent.com/libremesh/lime-packages/26f03f77c3db1dddb5fd6c34e8b7f551584af5d2/packages/vale/files/usr/bin/vale.sh] | ||
| + | |||
| + | === Caso não se queira usar o sistema de voucher, só a página de splash === | ||
| + | |||
| + | Comente as seguintes linhas no nodogsplash.conf: | ||
| + | |||
| + | <pre> | ||
| + | #BinVoucher "vale.sh" | ||
| + | |||
| + | #ForceVoucher yes | ||
| + | |||
| + | #EnablePreAuth yes | ||
| + | </pre> | ||
| + | |||
| + | O link para autenticação na página de splash deve ter o seguinte código: | ||
| + | |||
| + | <pre> | ||
| + | <a href="$authtarget"> | ||
| + | Texto do link | ||
| + | </a> | ||
| + | </pre> | ||
| + | |||
| + | === Para direcionar o usuário a uma página específica, ao invés da página solicitada === | ||
| + | |||
| + | Inclua a seguinte linha no nodogsplash.conf | ||
| + | |||
| + | <pre> | ||
| + | #change to the place where you want to redirect the users after login | ||
| + | RedirectURL http://www.nuvem.tk/wiki | ||
| + | </pre> | ||
=== Gambiarra para redirecionar o tráfego para um servidor interno quando cai a internet === | === Gambiarra para redirecionar o tráfego para um servidor interno quando cai a internet === | ||
Esse script confere se há acesso à internet. Quando não há, ele altera o dnsmasq para direcionar todos os acessos para o servidor local. Evidente que se houverem outros serviços locais (diferentes servidores etc), essa gambiarra pode atrapalhar esses serviços. | Esse script confere se há acesso à internet. Quando não há, ele altera o dnsmasq para direcionar todos os acessos para o servidor local. Evidente que se houverem outros serviços locais (diferentes servidores etc), essa gambiarra pode atrapalhar esses serviços. | ||
| + | |||
| + | O último perfil criado para fumaçaonline já tem esse arquivo e o crontab editados, portanto se você basear o seu firmware no chef em fumaçaonline, ele vai incluir tudo. Ou você pode baixar o próprio firmware para testar: | ||
| + | |||
| + | [https://chef.altermundi.net/fwprofile/fumacaonline-1607/ https://chef.altermundi.net/fwprofile/fumacaonline-1607/] | ||
* Copiar o código abaixo para um arquivo chamado offline-redirect.sh, modificando o endereço 10.7.0.10 para o endereço ip do servidor local. | * Copiar o código abaixo para um arquivo chamado offline-redirect.sh, modificando o endereço 10.7.0.10 para o endereço ip do servidor local. | ||
| Linha 163: | Linha 224: | ||
| − | if ! | + | if ! ip route | grep -q -e default # if there is no route out, then... |
then | then | ||
# offline; check if redirect is already there | # offline; check if redirect is already there | ||
| Linha 195: | Linha 256: | ||
* * * * * /usr/bin/offline-redirect.sh | * * * * * /usr/bin/offline-redirect.sh | ||
</pre> | </pre> | ||
| + | |||
| + | |||
| + | === Como conectar no roteador por cabo de internet sem saber o ip === | ||
| + | |||
| + | ==== usando nmap ==== | ||
| + | |||
| + | <pre>nmap -sn 192.168.0.0/24</pre> | ||
| + | |||
| + | para procurar de 192.168.0.1 a 192.168.0.254 | ||
| + | |||
| + | <pre>nmap -sn 10.0.0.0/16</pre> | ||
| + | |||
| + | para procurar de 10.0.0.1 a 10.0.254.254 (demora...) | ||
| + | |||
| + | ==== usando ipv6 ==== | ||
| + | |||
| + | <pre>ping6 -c4 -I eth0 ff02::1</pre> | ||
| + | |||
| + | Deduza o endereço pelo endereço mac do roteador, e faça login por ssh | ||
| + | |||
| + | <pre>ssh usuario@endereçoipv6%interface</pre> | ||
| + | |||
| + | Por exemplo | ||
| + | |||
| + | <pre> ssh ubnt@fe80::20d:b9ff:fe05:25b4:%wlan0</pre> | ||
| + | |||
| + | Uma vez no terminal do roteador, use | ||
| + | |||
| + | <pre> ip addr</pre> | ||
| + | |||
| + | Para descobrir o endereço ipv4. | ||
Edição atual tal como às 19h42min de 8 de março de 2018
Índice
- 1 IPs
- 2 Instalação do portal de controle de acesso
- 2.1 Caso não se queira usar o sistema de voucher, só a página de splash
- 2.2 Para direcionar o usuário a uma página específica, ao invés da página solicitada
- 2.3 Gambiarra para redirecionar o tráfego para um servidor interno quando cai a internet
- 2.4 Como conectar no roteador por cabo de internet sem saber o ip
IPs
IPs para Fumaça e Porto Real: 10.7.0.0/16/17 (10.7.0.0 a 10.7.127.255)
- Acima de 10.7.128.0 estão reservadas para ips fixos
- IP reservada para o roteador mais próximo: 10.7.0.1
- BSC -> 10.7.0.5 - 00:30:18:a2:88:95
- BTS master -> 10.7.0.6 - 00:d0:cc:08:18:24
- BTS slave -> 10.7.0.7 - 00:d0:cc:08:08:82
- servidor -> 10.7.128.10
- este wiki http://wiki.fumacaonline.org.br
- gallery (fotos) http://gallery.fumacaonline.org.br
- nebulosa -> 10.7.161.204
- morrinho -> 10.7.163.199
- igrejinha -> 10.7.161.183
- torre -> 10.7.182.85
- salao -> 10.7.163.241
- moacir -> 10.7.182.220
- moiados -> 10.7.164.123
- campinho -> [http://]
10.7.128.23 igrejinha nano beam p/ torre
10.7.128.22 torre nano beam p / igrejinha ssid: bridge_morrinho
10.7.128.20 torre rocket p resende
10.7.128.21 torre petcenter
10.7.128.29 tania
10.7.128.24 igrejinha -> benedita
10.7.128.25 benedita -> igrejinha
- 2a00:1508:a57:8900::ad:a3f1 salao
- 2a00:1508:a57:8900::ad:a1b7 igrejinha
- 2a00:1508:a57:8900::ad:a47b moiados
- 2a00:1508:a57:8900::ad:a3c7 morrinho
- 2a00:1508:a57:8900::ad:a1cc nebulosa
- 2a00:1508:a57:8900::75:b655 torre
- 2a00:1508:a57:8900::b8:66ee campinho
- 2a00:1508:a57:8900::75:b6dc moacir
Para abrir um browser através do SSH (como se estivesse no servidor local)
- ssh 2a00:1508:a57:8900::ad:a1b7 -D8080
- chromium-browser --proxy-server=socks://localhost:8080
Instalação do portal de controle de acesso
- Essas instruções são para o roteador que está conectado à internet, fornecendo para o resto da rede. Não sei o que acontece no caso em que houver mais de uma saída para internet.
- Esse sistema de validação e portal cativo não funciona quando não há acesso internet, ou quando o acesso cai. Para isso, tem uma gambiarra descrita no fim da página
- Para versão DaybootRely da LibreMesh (1706)
- Para essa versão é necessário ter acesso ssh. Faça o login, e da linha de comando dê:
opkg update
opkg install http://nuvem.tk/files/nodogsplash_0.9.2-1_mips_24kc.ipk
rm /etc/config/nodogsplash
- Para versão Chaos Calmer da LibreMesh (1607)
- Para essa versão é necessário ter acesso ssh. Faça o login, e da linha de comando dê:
opkg update
opkg install http://chef.altermundi.net/downloads/r44952/ar71xx/packages/routing/nodogsplash_0.9_beta9.9.9-2-20150718_043129_ar71xx.ipk
opkg install http://chef.altermundi.net/downloads/r44952/ar71xx/packages/lime_packages/vale_2015-09-09-1441772353_ar71xx.ipk
- Para versão Barrier Breaker da LibreMesh (1509)
- Vá para o menu system -> software do libremesh
- Clique em atualizar lista de pacotes
- Instalar o pacote nodogsplash e o pacote vale
- Instruções em comum:
- Substitua o arquivo /etc/nodogsplash/nodogsplash.conf pelo listado abaixo (fazendo as devidas modificações nos IP e página de redirecionamento). O IP a ser usado é o do menu network -> interfaces, interface LAN (IPV4) (sem o /16). O range são os dois primeiros números, seguidos de .0.0/16. (ex se o ip é 10.7.255.50, o range é 10.7.0.0/16.
GatewayInterface br-lan
GatewayInterfaceExtra bmx+
GatewayInterfaceExtra2 anygw
FirewallRuleSet authenticated-users {
FirewallRule allow to 0.0.0.0/0
}
FirewallRuleSet users-to-router {
# Nodogsplash automatically allows tcp to GatewayPort,
# at GatewayAddress, to serve the splash page.
# However you may want to open up other ports, e.g.
# 53 for DNS and 67 for DHCP if the router itself is
# providing these services.
FirewallRule allow udp port 53
FirewallRule allow tcp port 53
FirewallRule allow udp port 67
# You may want to allow ssh, http, and https to the router
# for administration from the GatewayInterface. If not,
# comment these out.
FirewallRule allow tcp port 22
FirewallRule allow tcp port 80
FirewallRule allow tcp port 443
}
# end FirewallRuleSet users-to-router
FirewallRuleSet preauthenticated-users {
# For preauthenticated users to resolve IP addresses in their initial
# request not using the router itself as a DNS server,
# you probably want to allow port 53 udp and tcp for DNS.
FirewallRule allow tcp port 53
FirewallRule allow udp port 53
# For splash page content not hosted on the router, you
# will want to allow port 80 tcp to the remote host here.
# Doing so circumvents the usual capture and redirect of
# any port 80 request to this remote host.
# Note that the remote host's numerical IP address must be known
# and used here.
#change the IP for the address of the gateway router
FirewallRule allow tcp port 80 to 10.7.122.55
}
# end FirewallRuleSet preauthenticated-users
EmptyRuleSetPolicy preauthenticated-users passthrough
EmptyRuleSetPolicy users-to-router passthrough
#change the IP for the address of the gateway router
GatewayName 10.7.122.55:80
#GatewayPort 80
MaxClients 500
ClientIdleTimeout 720
ClientForceTimeout 14400
#change the range for the ip range of your mesh network
GatewayIPRange 10.7.0.0/16
BinVoucher "vale.sh"
ForceVoucher yes
EnablePreAuth yes
- Edite o arquivo /etc/nodogsplash/htdocs/splash-vale.html para refletir as necessidades e contexto da sua comunidade e salve como splash.html (substituindo o splash.html que está no mesmo diretório). Manter o iframe, assim como form e os campos dentro dele.
- Vá no menu system -> startup e mude o nodogsplash para enabled
- Reinicie o roteador
- Traduza ou customize as mensagens de erro que estão no arquivo /www/cgi-bin/vale
- Adicione seus códigos no arquivo /etc/nodogsplash/vale/db.csv (use um gerador aleatório como www.randomcodegenerator.com). A primeira coluna não é utilizada. Cada linha tem que terminar com as duas vírgulas, sem espaços.
obs: vale.sh modificado para fazer um voucher por dispositivo e não mandar visitar a página do portal todo dia: https://raw.githubusercontent.com/libremesh/lime-packages/26f03f77c3db1dddb5fd6c34e8b7f551584af5d2/packages/vale/files/usr/bin/vale.sh
Caso não se queira usar o sistema de voucher, só a página de splash
Comente as seguintes linhas no nodogsplash.conf:
#BinVoucher "vale.sh" #ForceVoucher yes #EnablePreAuth yes
O link para autenticação na página de splash deve ter o seguinte código:
<a href="$authtarget">
Texto do link
</a>
Para direcionar o usuário a uma página específica, ao invés da página solicitada
Inclua a seguinte linha no nodogsplash.conf
#change to the place where you want to redirect the users after login RedirectURL http://www.nuvem.tk/wiki
Gambiarra para redirecionar o tráfego para um servidor interno quando cai a internet
Esse script confere se há acesso à internet. Quando não há, ele altera o dnsmasq para direcionar todos os acessos para o servidor local. Evidente que se houverem outros serviços locais (diferentes servidores etc), essa gambiarra pode atrapalhar esses serviços.
O último perfil criado para fumaçaonline já tem esse arquivo e o crontab editados, portanto se você basear o seu firmware no chef em fumaçaonline, ele vai incluir tudo. Ou você pode baixar o próprio firmware para testar:
https://chef.altermundi.net/fwprofile/fumacaonline-1607/
- Copiar o código abaixo para um arquivo chamado offline-redirect.sh, modificando o endereço 10.7.0.10 para o endereço ip do servidor local.
#!/bin/sh
if ! ip route | grep -q -e default # if there is no route out, then...
then
# offline; check if redirect is already there
if ! grep -q address=/#/10.7.0.10 /etc/dnsmasq.d/lime-proto-anygw-10-ipv4.conf
then
echo "address=/#/10.7.0.10">> /etc/dnsmasq.d/lime-proto-anygw-10-ipv4.conf
echo "added line"
/etc/init.d/dnsmasq restart
fi
else
#if online, delete that line in case it is there
if sed -i '\|address=/#/10.7.0.10|d' /etc/dnsmasq.d/lime-proto-anygw-10-ipv4.conf
then
/etc/init.d/dnsmasq restart
fi
fi
- Copiar esse arquivo para o diretório /usr/bin
- Modificar o crontab para que o script seja executado a cada minuto. Entre com o comando
contrab -e
e adicione a linha
* * * * * /usr/bin/offline-redirect.sh
Como conectar no roteador por cabo de internet sem saber o ip
usando nmap
nmap -sn 192.168.0.0/24
para procurar de 192.168.0.1 a 192.168.0.254
nmap -sn 10.0.0.0/16
para procurar de 10.0.0.1 a 10.0.254.254 (demora...)
usando ipv6
ping6 -c4 -I eth0 ff02::1
Deduza o endereço pelo endereço mac do roteador, e faça login por ssh
ssh usuario@endereçoipv6%interface
Por exemplo
ssh ubnt@fe80::20d:b9ff:fe05:25b4:%wlan0
Uma vez no terminal do roteador, use
ip addr
Para descobrir o endereço ipv4.