Conexão Wi-Fi
Publicado por Perfil removido (última atualização em 05/04/2013)
[ Hits: 7.512 ]
Um simples script para se conectar à uma rede Wi-Fi. Para executá-lo (chmod +x wifi.sh) é necessário logar como root (su -).
Obs.: para conexões WPA2 ele usa o WPA Supplicant.
#!/bin/sh #Simples script para conexões Wi-Fi # Verifica se o script está sendo executado pelo root. if [ "`id -u`" != "0" ]; then echo 'Este script precisa ser executado como root. Digite "su -" para se logar como root e execute o script novamente. Se você está usando o Ubuntu, defina a senha de root usando o comando "sudo passwd" e em seguida logue-se usando o "su -". Fechando...' read pausa exit fi #Filtra infos do scan armazenando em um arquivo tmp de acordo com a interface echo "Interface:" read int ifconfig $int up iwlist $int scan > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep ESSID cat /tmp/mytmp.tmp | grep Channel: cat /tmp/mytmp.tmp | grep Address: cat /tmp/mytmp.tmp | grep Quality cat /tmp/mytmp.tmp | grep Encryption cat /tmp/mytmp.tmp | grep Mode cat /tmp/mytmp.tmp | grep WPA #Opção para de rede com WPA WPA() { #Reinicia a interface ifconfig $int down ifconfig $int up #Conecta através do wpa_supplicant echo "ESSID:" read essid echo "Senha:" read senha wpa_passphrase $essid $senha > /etc/wpa_supplicant.conf wpa_supplicant -i $int -c /etc/wpa_supplicant.conf -B -D wext sleep 2 #Filtra infos da conexão iwconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep Access ifconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep inet rm -f /tmp/mytmp.tmp #Remove arquivo tmp #Oferece o DHCP e encerra echo "Ativar DHCP? s ou n:" read rdwphcp [ "$rwpdhcp" = "s" ] && dhclient $int || exit } #Opção para rede com WEP WEP() { #Desativa a interface e recolhe infos para o comando ifconfig $int down echo "ESSID:" read essid echo "Canal:" read canal #Pergunta qual tipo de codificação da senha e roda seu respectivo comando echo "Tipo de senha: HEX=1 ou ASCII=2" read tsenha if [ "$tsenha" = "1" ]; then echo "Senha:" read myhsenha iwconfig $int key restricted $myhsenha elif [ "$tsenha" = "2" ]; then echo "Senha:" read myasenha iwconfig $int key restricted s:$myasenha else echo "Opção invalida" sleep 1 exit fi #Comando para a conexão iwconfig $int essid $essid iwconfig $int channel $canal ifconfig $int up sleep 2 #Filtra infos da conexão iwconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep Access ifconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep inet rm -f /tmp/mytmp.tmp #Remove arquivo tmp #Oferece o DHCP e encerra echo "Ativar DHCP? s ou n:" read rwdhcp [ "$rwdhcp" = "s" ] && dhclient $int || exit } #Opção para rede púplica OpenKey() { #Desativa a interface e recolhe infos para o comando ifconfig $int down echo "ESSID:" read essid echo "Canal:" read canal #Comandos para a conexão iwconfig $int essid $essid iwconfig $int channel $canal iwconfig $int key off ifconfig $int up sleep 2 #Filtra infos da conexão iwconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep Access ifconfig $int > /tmp/mytmp.tmp cat /tmp/mytmp.tmp | grep inet rm -f /tmp/mytmp.tmp #Remove arquivo tmp #Oferece o DHCP e encerra echo 'Ativar DHCP? s ou n:' read rdhcp [ "$rdhcp" = "s" ] && dhclient $int || exit } #Pergunta qual opção de conexão à utilizar echo 'Conectar? WPA=1, WEP=2, OpenKey=3 ou Sair=s:' read resposta case $resposta in 1)WPA;; 2)WEP;; 3)OpenKey;; s)rm -f /tmp/mytmp.tmp echo 'Bye sir.' exit;; *)echo 'Ops, você digitou uma opção inválida. Fechando...' exit;; esac
Prova LPI em shell script - com contador de acertos
Baixando arquivos do Megaupload
tag-mp3 - Um script para editar e/ou visualizar algumas tags ID3 de arquivos MP3
Reiniciar um serviço de acordo com o consumo de memória.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (6)