Zwifi - Conectar em rede Wi-Fi via terminal
Publicado por Fernando T. Da Silva (última atualização em 11/01/2016)
[ Hits: 5.337 ]
Homepage: http://meumundotux.blogspot.com.br/
Simples script em zenity para conectar em rede WI-FI com protocolo WPA/WPA2 usando o wpa_supplicant com suporte
a perfil de cada rede conectada ao utilizar um notebook, podendo ser utilizado em qualquer window manager sem precisar de ferramentas gráficas como Wicd, NetworkManager e outros similares.
Para instalar faça:
$ sudo tar -xzvf zwifi-v3-perfil.tgz -C /
Nota: após configuração da rede ou o acesso a mesma aguarde alguns segundos a exibição da janela de retorno com o resultado, se for exibido o seu IP local da conexão realizada, a mesma foi feita com sucesso.
Mais informações no arquivo: /usr/doc/wifi/zwifi-leia.txt
Código fonte do arquivo principal
# zwifi versão 3 dezembro de 2015 por nandosilva.
# simples script em zenity pra conectar a várias redes wireless com um notebook, onde você terá salvo o perfil
# de cada uma, pra posterior conexão sem precisar configurar de novo ao usar windows managens minimalista sem precisar do
# networkmanager, wicd e outros configuradores de rede pra isto.
# Necessário usar o sudo ou gksu para este script na frente do nome do mesmo no seu atalho do menu de programas.
# O pacote wpa_supplicant e zenity devem está instalado no seu sistema.
#
while true; do
choice="$(zenity --width=400 --height=310 --list --column "Acesso wifi" --title="Wireless" \
"Procurar redes" \
"Configurar rede" \
"Acessar uma rede configurada" \
"Desconectar" \
"Sobre" \
"Sair")"
case "${choice}" in
"Procurar redes" )
sudo /sbin/ifconfig wlan0 up
sudo /sbin/iwlist wlan0 scan >> /tmp/local
zenity --title "Redes Wifi" --text-info --filename=/tmp/local --width=1000 --height=850
rm /tmp/local
;;
"Configurar rede" )
zenity --info --title "Perfil" --text "Criar perfil"
perfil=$(zenity --title="Perfil" --entry --text="Digite um nome curto unico para o perfil sem espaços \n ou pontos. Exemplo: myredelacasa")
mkdir /etc/wifi
touch /etc/wifi/"$perfil"
ssid=$(zenity --title="Zwifi" --width=400 --height=120 --entry --text="Digite o ssid:")
senha=$(zenity --title="Zwifi" --entry --hide-text --text="Digite a senha, mínimo de 8 caracteres: ")
/usr/sbin/wpa_passphrase "$ssid" $senha > /etc/wifi/"$perfil"
sed '3d' /etc/wifi/"$perfil" > /etc/wifi/tmp ; mv /etc/wifi/tmp /etc/wifi/"$perfil"
/usr/sbin/wpa_supplicant -i wlan0 -c /etc/wifi/"$perfil" -B -d -D wext
/sbin/dhcpcd wlan0
ifconfig wlan0 >> /tmp/local
ping -c 2 www.google.com >> /tmp/local
zenity --title "Zwifi" --text-info --filename=/tmp/local --width=900 --height=500
rm /tmp/local
;;
"Acessar uma rede configurada" )
input=`zenity --file-selection --filename /etc/wifi/ --title "Selecione um arquivo de Perfil"`
if [ $? = 1 ];
then zenity --error --title "Perfil" --text "Acesso cancelado" & exit
fi
/usr/sbin/wpa_supplicant -i wlan0 -c "$input" -B -d -D wext
/sbin/dhcpcd wlan0
ifconfig wlan0 >> /tmp/local
zenity --title "Zwifi" --text-info --filename=/tmp/local --width=800 --height=400
rm /tmp/local
;;
"Desconectar" )
zenity --title="Aviso" --info --text="Para desconectar da rede wifi atual e acessar outra rede, na janela de terminal a seguir execute o comando wifioff, após feche a janela de terminal para retornar ao zwifi."
xterm -fn 9x18 -title "wifi terminal"
;;
"Sobre" )
zenity --info --text "Zwifi\n\n Versão 3 - janeiro de 2016 \n Autor: nandosilva \n \nAcessar redes wireles com suporte a perfil utilizando o wpa_supplicant. \n\nLicença: GPLv3.\n\nRequer: wpa_supplicant, zenity, gksu e xterm."
;;
*)
break
;;
esac
done
Balanceamento de Carga e Alta Disponibilidade usando IPTABLES
Iptables - script para firewall utilizando iptables
Simples dialog script para escolha de gerenciador de janelas
Instalador de novas versões do Java no Debian
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Gentoo binário em 2026: UEFI, LUKS, Btrfs e Systemd
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
O que houve com slackware ??? (12)
Alterar conteúdo de dica [RESOLVIDO] (3)
Vou destruir sua infância:) (5)









