Como transformar o Raspberry Pi num Access Point Wireless

43 Comentários

Partilhe facilmente Internet pela casa ou escritório | (Já pertences ao Grupo Raspberry PI  do Pplware no Facebook? Sabe mais aqui)

O pequeno Raspberry Pi foi um dos equipamentos que mais sucesso fez em 2013. Os últimos números apontavam para mais de 2 milhões de equipamentos vendidos…um autêntico caso de sucesso.

No Ppplware são vários os tutoriais que temos disponíveis para o Raspberry Pi e hoje, em parceria com a INMOTION e a pedido de muitos leitores, vamos ensinar como poderão transformar um Raspberry Pi num Access Point Wireless.

pi_rasp

O Raspberry Pi tem sido um fenómeno nos últimos tempos que tem atraído a atenção de imensas pessoas. Um computador tão pequeno e com tantas possibilidades. Desde criar o seu próprio despertador até transformar o Pi num tablet, o Raspeberry Pi é um dispositivo fantástico. No seguimento dos nossos tutoriais para este pequeno equipamento, hoje vamos ensinar a transformar o vosso Raspberry Pi num Access Point Wireless.

Como sabemos o Raspberry Pi traz duas interfaces USB onde podemos, por exemplo, ligar uma dongle USB. Com esta interface, podemos facilmente partilhar a rede que chega por cabo, permitindo assim que outros dispositivos se liguem à rede via wireless.

Para transformar o seu PI num Access Point é necessário realizar as seguintes configurações:

  • (1) Atribuir um endereço estático ao adaptador Wireless
  • (2) Configurar um servidor DHCP
  • (3) Instalar e configurar hostapd (Access Point daemon)
  • (4) Configurar IP routing entre a interface wireless e Ethernet

pi_ap

(1) Atribuir um endereço estático ao adaptador Wireless

Considerando que pretende definir um endereço estático na interface de rede wired (por cabo) basta editar o ficheiro /etc/network/interfaces usando o comando:

sudo nano /etc/network/interfaces

em seguida, considerando que pretendemos atribuir o endereço 192.168.10.1, devemos realizar a seguinte configuração:

iface wlan0 inet static
address 192.168.10.1
netmask 255.255.255.0
(2) Configurar um servidor DHCP

Instalar e configurar um servidor de DHCP no Linux é algo relativamente simples e rápido. Para isso deverá seguir os seguintes passos:

Passo 1 – Instalar o servidor DHCP

sudo apt-get install isc-dhcp-server

Passo 2 – Configuração do serviço

Após a instalação, vamos proceder a configuração do serviço. O ficheiro encontra-se em /etc/dhcp/dhcpd.conf.

O ficheiro de configuração deve ficar do seguinte modo:

#option domain-name "example.org";
#option domain-name-servers ns1.example.org, ns2.example.org;   
# If this DHCP server is the official DHCP server for the local
# network, the authoritative directive should be uncommented.
authoritative;   subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.50 192.168.10.100;
option broadcast-address 192.168.10.255;
option routers 192.168.10.254;
default-lease-time 600;
max-lease-time 7200;
option domain-name "local";
option domain-name-servers 8.8.8.8, 8.8.4.4;
}

Passo 3 – Reiniciar serviço

Depois de realizadas as configurações, basta reiniciar o serviço de DHCP

sudo service isc-dhcp-server restart
(3) Instalar e configurar hostapd (Access Point daemon)

O próximo passo é instalar o hostapd.  Este software é daemon Host Access Point, que fornece criptografia WPA2 robusta e autenticação em pontos de acesso wireless baseados em Linux. Para instalar o hostapd  devem seguir os seguintes passos:

Passo 1 – Instalar o hostapd

sudo apt-get install hostapd

Passo 2 – Editar o ficheiro de configuração e criar rede wireless

sudo nano /etc/hostapd/hostapd.conf
interface=wlan0
driver=rtl871xdrv
ssid=PiPplware
hw_mode=g
channel=11
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=raspberry
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

Tal configuração vai criar uma rede com o ssid PiPplware, com a password raspberry. Esta rede irá funcionar no canal 11.

Vamos agora editar o ficheiro /etc/default/hostapd e indicar onde se encontra o ficheiro de configuração. Para isso basta adicionar a seguinte linha:

DAEMON_CONF="/etc/hostapd/hostapd.conf"
(4) Configurar IP routing entre a interface wireless e Ethernet

Para configurar encaminhamento para os pacotes que chegam a interface wireless e que têm como destino a interface wired, devem proceder a seguinte configuração:

Editar o ficheiro /etc/sysctl.conf e activar o encaminhamento IP. Para isso basta descomentar seguinte linha:

# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1

Para activar de imediato o encaminhamento IP basta que usem o seguinte comando:

sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Para transformar o PI num router,deve executar os seguintes comandos:

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT

Tal configuração deve ser guardada em /etc/iptables.ipv4.nat

sudo sh -c "iptables-save > /etc/iptables.ipv4.nat

Por fim editamos o ficheiro /etc/network/interfaces e incluímos a linha seguinte que será responsável por carregar as regras do iptables cada vez que o PI reiniciar.

pre-up iptables-restore < /etc/iptables.ipv4.nat

E está feito! Depois de todos os passos configurados com sucesso, devem ver uma rede com o nome PiPplware. Lembrem-se que podem aceder a esta rede através do vosso smartphone, tablet, PC, etc. Não se esqueçam de desligar algum serviço de DHCP que esteja a funcionar na vossa rede.

Comentários

43

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de Nelson
    Nelson

    Muito bom, piplware!

  2. Avatar de Mark
    Mark

    Parabens, Muito Muito util!!!
    Bom trabalho!!!

  3. Avatar de Victor Fernandes
    Victor Fernandes

    E que tal agora, adicionarem a opção de fazer um servidor Radius no AP?
    Fica Aa dica

  4. Avatar de Osvander
    Osvander

    Muito complicado….

  5. Avatar de F.S
    F.S

    E para o caso de se usar uma pen 3g/4g???

  6. Avatar de Screamer
    Screamer

    Aproveitando a deixa: e configurar o raspberry como um Wireless Repeater, utilizando um Hub USB com 2 dongles USB?

    1. Avatar de Pedro
      Pedro

      Realmente ia dar muito jeito!

  7. Avatar de Anónimo
    Anónimo

    Já agora podiam tentar montar um sistema de vigilancia com o raspberry pi 😛 Dava um jeitaço ter uma camara a gravar para um hdd 😛

  8. Avatar de Eduardo
    Eduardo

    Isso dava um jeitaço, mas creio que com openelec é impossível…

  9. Avatar de João Rodrigues
    João Rodrigues

    Pergunta de leigo: Qual é a vantagem? Não há aparelhos dedicados no mercado mais baratos que o Raspberry? Que é que o Raspberry adiciona ao que um router dedicado pode fazer?

    Gosto do conceito do Raspberry mas quando substituí máquinas mais evoluídas por uma fracção do preço ou cria algo novo que não existe no mercado e que dá resposta às necessidades concretas de um consumidor qualquer.

    Talvez no futuro infoexclusão passe a ser a incapacidade de programar a nossa própria máquina

    1. Avatar de Tiago
      Tiago

      Se ligares o cérebro percebes que podes comprar um RPI e fazer isto e muito mais coisas ao mesmo tempo… não precisas de comprar 50 RPIs pra fazeres 50 coisas…
      1 RPI faz as 50….
      Cumps

      1. Avatar de F.S
      2. Avatar de Daniel Isidro
        Daniel Isidro

        Disseste tudo!

    2. Avatar de Max
      Max

      Ha muito processos em ramo empresarial que dispensa o uso dos aparelhos dedicados. Ha muitas coisas que pode ser programadas e aplicadas ao uso do Wireless nessa modalidade que em um AP comum dedicado.

  10. Avatar de Pedro Azevedo
    Pedro Azevedo

    Ando a namorar o Raspberry Pi, mas não fui completamente esclarecido se serve para navegar na internet à vontade e ver youtube.

    Só o quero para isso…não é para ver filmes, nem musica nem nada disso, só internet, assistir a streams de canais de tv, penso que com flash e youtube…

    Isto serve, ou qual é solução mais económica que me sugerem?

    Obrigado

    1. Avatar de F.S
      F.S

      Para mim o RPi é mais que suficiente…
      É o que tenho no meu caso!

    2. Avatar de Alexandre Pinto
      Alexandre Pinto

      Pela minha experiência, navegar na Internet é para esquecer. Pior ainda se quiseres aceder a conteúdos flash. Extremamente lento.
      Podes no entanto aceder, a conteúdos multimédia através de programas/SO’s de media-center como xbmc ou openelec e aí consegues uma boa experiência, apesar de eu considerar a navegação pelos menos um pouco lenta tb. Mas é como te digo, é a minha experiência.
      De certeza que há aí malta com conhecimento de outros SO’s que te podem proporcionar uma experiência um pouco melhor.

      1. Avatar de Nelson
        Nelson

        Verdade, não é bom para isso…

    3. Avatar de Pedro Azevedo
      Pedro Azevedo

      Vou acreditar na maioria e partir para outra solução, solução essa que não sei bem qual seja a melhor a baixo custo. Sugestões? Conigo o que quero com Androids Mini-Pcs dentro desta gama de preços até 50 euros ou tenho que abrir os cordões à bolsa para outras soluções mais viáveis?

  11. Avatar de lmx
    lmx

    boas…

    Parabéns pelo artigo, tá muito fixe 😉

    poderias ter incluído uma config para o ntp server no dhcp do raspberry pi

    option ntp-servers 192.168.10.1;

    não conhecia o hostapd, parece ser bem simples…

  12. Avatar de R o B
    R o B

    Muito bem, três comentários enviados pela aplicação Pplware para Android alegadamente pendentes de aprovação nunca mais apareceram. Será bug ou o elogio e que fiz a este artigo não merece publicação?

  13. Avatar de Joao
    Joao

    Aqui está um script: http://webwork.web44.net/AcessPoint.sh que facilita a criação de um Acess Point.
    É preciso executar como root.

    1. Avatar de Joao
      Joao

      Para usar:
      wget “http://webwork.web44.net/AcessPoint.sh” && chmod +x AcessPoint.sh && sudo ./AcessPoint.sh

  14. Avatar de João Gonçalo Vaz Oliveira
    João Gonçalo Vaz Oliveira

    Como fazer algo deste género mas tipo wireless repeater, ou mesmo como hotspot autonomo? Ou seja, manter ambos os sinais de wireless, o de router, e o sinal de wireless do raspberry.
    É possivel? alguém me ajuda?

    1. Avatar de R o B
      R o B

      Podes fazer um repetidor pegando na explicação do post e adicionas uma nova interface wlan para se ligar ao AP que desejas repetir, o servidor dhcp seria neste caso o rpi e não o AP a repetir.

  15. Avatar de André
    André

    Com este sistema posso fazer uma rede wireless em casa (sem internet) para poder mandar imprimir e aceder a um pequeno disco externo para guardar coisas, via AirPlay???
    Ou seja, tenho um adaptador wireless para o PI, que recomendavam no site da Raspberry, depois tenho um hub usb, onde pretendo ligar uma impressora e um disco externo, isto para poder enviar documento via wireless para a impressora ou para o disco…

  16. Avatar de Miguel
    Miguel

    Pedro obrigado pelo o post, já agora podias-me esclarecer uma dúvida que não tenho conseguido resolver. Quero criar uma rede ad-hoc a partir do PI, já tentei vários tutoriais, mas sem sucesso, só preciso de ir até ao passo 4, não vou ter net na etho por isso não me interessa a parte do encaminhamento. O meu antena wifi TP link tl.wn725n.
    Obirgado

  17. Avatar de OSwizard
    OSwizard

    Pequena contrib
    Tal configuração deve ser guardada em /etc/iptables.ipv4.nat
    sudo sh -c “iptables-save > /etc/iptables.ipv4.nat
    Deve ler-se
    Tal configuração deve ser guardada em /etc/iptables.ipv4.nat
    sudo sh -c “iptables-save > /etc/iptables.ipv4.nat”
    Faltam as ultimas aspas.
    De resto perfeito

  18. Avatar de Ruan Rocha
    Ruan Rocha

    Olá, gostaria de saber se é possível fazer um “controle de banda” para que as pessoas que acessassem pelo Rasp fossem limitadas a “X” Mb de down/up. Obrigado!

  19. Avatar de Cláudio
    Cláudio

    Boa tarde,

    Tentei criar um AP, e no final obtenho o seguinte erro:
    Configuration file: /etc/hostapd/hostapd.conf
    Line 2: invalid/unknown driver ‘nl80211’
    1 errors found in configuration file ‘/etc/hostapd/hostapd.conf’

    Já há algum tempo tinha criado um AP e tudo funcionou correctamente, entretanto o cartão SD do Raspberry Pi deixou de funcionar e tive de instalar o sistema noutro cartão e agora não consigo criar o AP… não consigo iniciar o hostapd.

    Será que alguém me pode ajudar?

  20. Avatar de R o B
    R o B

    Cláudio, o nome do driver para o teu dongle configurado no hostapd.conf é inválido, ou talvez tenhas de usar um binário hostapd modificado para suportar o teu adaptador wireless. Identifica o modelo do teu dongle wireless e pergunta ao Google por ele usando as palavras chave “raspberry pi hostapd” talvez não sejas o primeiro a tentar usar esse adaptador.

  21. Avatar de carlos
    carlos

    serve para fazer repetir de sinal WIFI?

  22. Avatar de Alvaro
    Alvaro

    O problema esta em conseguir fazer um Raspberry no Brasil..

  23. Avatar de Pedro L, Santos
    Pedro L, Santos

    [DUVIDA]
    É possível criar uma espécie de VLAN para convidados, separando assim essa rede da minha?
    Para o efeito será que basta configurar a IP Tables para fazer forward? Se sim, como?

    Assim, posso manter o servidor DHCP do Router e o do RPI activos ao mesmo tempo desde que usem SSID’s diferentes? Ou não?..

    Obrigado.

  24. Avatar de Reis
    Reis

    Então e fazer o contrário?

    Eu tenho um sinal do andar de baixo mt fraquinho, gostaria que o Raspberry Pi recebesse o sinal por um dongle wifi e depois “desse” internet para uma router velhinho que tenho, ligado por ethernet ao raspberry.

    É possível fazer isto?

    Cumprimentos

    1. Avatar de Emanuel
      Emanuel

      sim é possivel, procura no google que deves encontrar algum artigo acerca disso

      mas basicamente o tutorial é o mesmo só que tens de substituir no codigo o eth0, pelo wlan0 ou wlan1 conforme seja o que escolheste para se ligar ao teu sinal no andar debaixo.

  25. Avatar de João Freitas
    João Freitas

    Tenho um autómato da siemens b07, este tem uma entrada de cabo de rede, pretendo aceder ao autómato através do pc com o programa da siemens no interior de casa, encontrando-se o autómato no exterior, para isso pretendo usar um raspberry pi para que o autómato comunique com o router no interior da casa, no raspberry já tenho um adaptador usb wireless e o autómato será ligado ao raspeberry pi com cabo de rede. Não sei como configurar este sistema de comunicação, procuro quem me possa ajudar.

  26. Avatar de Nilson
    Nilson

    Olá, tem como fazer com raspberry, gerar uma senha temporária de acesso a internet e depois bloqueá-la? tenho um comércio e disponibilizar todos os clientes que comprarem um produto meu uma senha temporária durante duas horas e depois bloqueá-la? Isso é possível? Obrigado.

  27. Avatar de Juliana Álice
    Juliana Álice

    como sei se esta funcionando?

  28. Avatar de Rui Rocha
    Rui Rocha

    Boas tarde.
    Estou com uma necessidade de converter um raspberry pi 3 num AP, mas tenho a necessidade de criar varias redes wireles.
    É possivel criar varias redes wireless a sair do mesmo rapberry?

  29. Avatar de Nelson
    Nelson

    Olá Prezados !!! Tive um problema e gostaria de compartilhar a solução com vocês. No Raspberry PI 3 Model B, o AP não sobe quando reinicia o Linux (versões mais atuais). Para o AP “subir” no startup do sistema, editem o arquivo que está em /etc/rc.local adicionado a seguinte linha:

    sudo /usr/sbin/hostapd /etc/hostapd/hostapd.conf

    1. Avatar de jon
      jon

      boas
      tentei editar esse ficheiro mas não me deixa…
      penso que está com read only…