Respostas:
Você pode usar a iwlistferramenta para imprimir todos os detalhes dos pontos de acesso próximos. Supondo que seu dispositivo sem fio seja chamado wlan0:
sudo iwlist wlan0 scan
A saída do iwlist mostrará cada 'célula' (ou ponto de acesso) que encontrar, incluindo os seguintes detalhes sobre o tipo de criptografia:
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (2) : CCMP TKIP
Authentication Suites (1) : PSK
Isso indica que uma rede perto de mim está usando WPA2, usando uma chave pré-compartilhada (PSK).
NetworkManagertem um ótimo back-end da linha de comando chamado nmcli. A pequena desvantagem é que alguns comandos no 15.04 diferem da versão 14.04 donmcli .
Ubuntu 14.04
nmcli -f NAME con statuspermite listar nomes das conexões atuais. Por exemplo,
$ nmcli -f NAME,DEVICES con status
NAME DEVICES
Serg-Wifi wlan0
Agora, para listar detalhes específicos sobre uma conexão, podemos fazer nmcli con list id "WifiName". Para ser mais específico, estamos procurando a linha que diz key-mgmt.
$ nmcli con list id "SergWifi" | awk '/key-mgmt/ {print $2}'
wpa-psk
Assim, sabemos que esse wifi usa proteção WPA.
Outra dica é a seguinte linha:
802-11-wireless.security: 802-11-wireless-security
Agora, como colocamos isso no mesmo script? Se você tiver apenas uma conexão estabelecida,
nmcli con list id "$(nmcli -t -f NAME con status)" | awk '/key-mgmt/||/802-11-wireless\.security/ {print $2}'
Aqui, apenas manipulamos nmclicom o sinalizador -t para nos fornecer apenas o nome do ponto de acesso wifi sem o cabeçalho bonito, e usá-lo entre parênteses de substituição de parâmetro $( . . .)e fornecê-lo como uma entrada nmcli con list idpara listar dados sobre esse ponto de acesso. Finalmente,awk apenas filtra a linha necessária.
Se você tiver uma conexão wifi estabelecida, mas também conectada à Ethernet, nmcli -f NAME con statusproduzirá várias linhas. Sugiro filtrar o wifi dessa lista, com nmcli -f NAME,DEVICES con status | awk '/wlan0/ {print $1}'. O restante do processamento seria o mesmo que acima.
Ubuntu 15.04
Os comandos acima são traduzidos no 15.04 da seguinte maneira:
nmcli -t -f NAME,DEVICE con status | awk -F':' '/wlan0/{print }' para obter o nome da conexão estabelecida em wlan0nmcli con show "ConnectionName" para listar detalhes sobre sua conexão estabelecida.Nota lateral: no Ubuntu 14.04 existe uma nm-toollista de informações sobre suas conexões atuais em um formato prontamente organizado, no entanto, não está presente no 15.04, portanto, sugiro que você estude e jogue com ele sozinho