Conexão Wi-Fi
Publicado por Perfil removido (última atualização em 05/04/2013)
[ Hits: 7.995 ]
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
Shell Script básico para gerenciar usuários e bancos no MySQL ou MariaDB
Script para desmontar partição/unidade
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
VMWare Player não conecta na rede nem consigo intercambiar arquivos (1)
Ativação de som 5.1 e nvidia (1)









