Conexão Wi-Fi

Publicado por Perfil removido (última atualização em 05/04/2013)

[ Hits: 7.605 ]

Download wifi.sh




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.

  



Esconder código-fonte

#!/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

Scripts recomendados

Remover arquivos com mais de "N" dias da Lixeira do Samba

Mudar tema Splashy

Converter em Literal

Baixa arquivos de Podcast

Jogo campo minado em Shell Script


  

Comentários
[1] Comentário enviado por MAPOGOS em 08/04/2013 - 01:41h

Legal eu verifiquei q até configura de modo de segurança e criptografia muito interessante...

[2] Comentário enviado por tiekookeit em 10/04/2013 - 10:42h

Show!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts