Alguns tutoriais que encontrei estão desatualizados, mas a resposta a seguir contém uma coleção de anotações que usei para configurar conexões sem fio em casa, escola (empresa) e Ad-Hoc no meu Raspberry Pi 3.
Raspberry Pi 3 (núcleo 4.14.30-v7 +)
Este post é uma coleção de notas e tutoriais que usei para configurar conexões sem fio com o Raspberry Pi.
Entre em contato se tiver algum problema.
Atualmente, o Raspbian procura na partição de inicialização alguns arquivos para permitir uma configuração sem cabeça ou conectar um Raspberry Pi a uma rede e estabelecer uma conexão ssh a partir de uma máquina externa sem monitor, tela ou mouse.
Depois de carregar Raspbian OS em um cartão micro SD, Ubuntu command
:
unzip -p 2018-03-13-raspbian-stretch-lite.zip | sudo dd of=/dev/sdX bs=4M conv=fsync status=progress
Adicione dois arquivos à partição de inicialização antes de mover o cartão SD para o Pi.
Exemplo "wpa_supplicant.conf" para conexão doméstica:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US
network={
ssid="NETWORK_NAME"
psk="password"
}
Agora, qual é o endereço IP do Pi? Procure o endereço MAC, todos os RPi 3 têm o mesmo início em seu endereço MAC. (Não funcionará na rede da empresa, pergunte ao administrador sobre privilégios)
Ubuntu command
:
sudo nmap -sn 192.168.1.0/24 | grep -B 2 B8:27:EB
Desabilitado automaticamente durante a inicialização.
Ativar com
sudo raspi-config
Depois selecione Interfacing Options
→ SSH
→Enable
sudo raspi-config
Selecione Network Options
→ Wi-fi
e siga as instruções na tela.
Edite wpa_suplicant.conf
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Adicione o seguinte:
network={
ssid="NETWORK_NAME"
psk="password"
}
Salve o arquivo
É assim que eu me conecto ao meu wifi da universidade
Primeiro, crie o hash da senha e salve no arquivo (mantenha as aspas simples em torno da sua senha):
echo -n 'YOUR_REAL_PASSWORD' | iconv -t utf16le | openssl md4 > hash.txt
Em seguida, edite wpa_supplicant.conf
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Adicione o seguinte:
network={
ssid="NETWORK_NAME"
proto=RSN
key_mgmt=WPA-EAP
group=CCMP TKIP
identity="YOUR_USERNAME"
password=hash:5ac87xxxxxxxxxxxxxxxxxxetc
phase1="peaplabel=0"
phase2="auth=MSCHAPV2"
}
Para adicionar o hash da senha:
ctrl
+ r
e insira o arquivo hash.txt
Limpe seu histórico do bash
history -c
Remover hash.txt
rm hash.txt
Adicione sinalizadores de prioridade a cada rede no wpa_supplicant.conf
prioridade padrão = 0 (a maior prioridade vai primeiro)
Meu wpa_supplicant.conf priorizado:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=US
network={
priority=1
ssid="NETWORK_A"
psk="password"
}
network={
priority=2
ssid="NETWORK_B"
proto=RSN
key_mgmt=WPA-EAP
group=CCMP TKIP
identity="YOUR_USERNAME"
password=hash:5ac87xxxxxxxxxxxxxxxxxxetc
phase1="peaplabel=0"
phase2="auth=MSCHAPV2"
}
Existem muitas outras opções de configuração, execute man wpa_supplicant.conf
para obter informações.
Você deseja conectar-se sem fio ao pi, mas não há redes sem fio disponíveis. Crie seu próprio!
O Raspberry Pi pode ser configurado para transmitir uma rede sem fio. Esta rede permite conectar o pi, mas não se conectará à internet.
Em cada Rpi
Copie o arquivo atual para backup
cp /etc/network/interfaces /etc/network/interfaces.old
Abrir arquivo para editar
sudo nano /etc/network/interfaces
A única linha que deve ser diferente no arquivo a seguir é que address
todo o resto deve ser idêntico. E você pode alterar o nome da sua rede ou adicionar uma senha
Anexe o seguinte na Rpi A:
auto wlan0
iface wlan0 inet static
address 192.168.1.1
netmask 255.255.255.0
wireless-channel 1
wireless-essid MYNETWORK
wireless-mode ad-hoc
Anexe o seguinte Rpi B:
auto wlan0
iface wlan0 inet static
address 192.168.1.2 `
netmask 255.255.255.0
wireless-channel 1
wireless-essid MYNETWORK
wireless-mode ad-hoc
Salve o arquivo e saia do editor
Levante a interface:
sudo ifup wlan0
Procure redes ad-hoc:
iwlist wlan0 scan
Você pode adicionar mais dispositivos à rede, basta atribuir ao dispositivo um novo endereço IP estático diferente.
A frequência / canal operacional padrão (2,412 GHz: canal 1) é frequentemente congestionada. Tente usar um canal diferente em caso de dificuldades.
Mude wireless-channel
para um número diferente
Use sudo iwlist wlan0 scan
para encontrar outros canais.
src: https://wiki.debian.org/WiFi/AdHoc
Mais complicado, mas se conectará a redes conhecidas e criará ad-hoc se nenhuma for encontrada.
Siga este tutorial (sem ponte Ethernet, usei isso com êxito) http://www.raspberryconnect.com/network/item/331-raspberry-pi-auto-wifi-hotspot-switch-no-internet-routing
hostname -I
Execute isso no Pi, então eu me conectei ao segundo endereço IP listado via ssh pi @ [ipaddr] da minha máquina host do Ubuntu.
Com ponte ethernet (eu não testei isso, mas com os mesmos ajustes de ↑) http://www.raspberryconnect.com/network/item/330-raspberry-pi-auto-wifi-hotspot-switch-internet
A conexão ssh falha da máquina host para o Pi? execute com saída detalhada:
ssh -vvvv [email protected]
Se os últimos comandos antes do fechamento forem:
debug1: SSH2_MSG_KEXINIT sent
Connection closed by raspberrypi.local port 22
Tente regenerar as chaves do host que podem estar ausentes ou corrompidas (faça isso no Pi):
sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server
https://www.raspberrypi.org/forums/viewtopic.php?t=168310
man wpa_supplicant.conf
https://www.raspberrypi.org/forums/viewtopic.php?t=111100
https://www.doc.ic.ac.uk/~ajd/Robotics/RoboticsResources/wifi_setup.txt
nmap
, por exemplo,sudo nmap -sn 192.168.10.0/24 | grep -B 2 B8:27:EB
para vizinhos.bridging
. Esteja ciente de que você não pode conectar o wifi real na camada 2 do OSI com um raspi por causa dos limites de hardware / driver.Use este programa fácil que encontrei no Github: Rasp-Connect - Script python fácil para conectar Raspbian a uma rede Wifi usando Python.
É um script Python fácil que o configura e define, basta selecionar o tipo de criptografia e inserir o SSID e a senha. Funciona muito bem e também suporta a execução da ferramenta sobre SSH.
fonte