Как определить режим безопасности точки доступа Wi-Fi? (WEP/WPA/WPA2)
Как я могу узнать, какой тип безопасности использует беспроводная точка доступа (essid)? wep/wpa/wpa2 (желательно с использованием инструментов командной строки)
3 ответа
Вы можете использовать iwlist
инструмент для распечатки всех деталей точек доступа поблизости. Предполагая, что ваше беспроводное устройство называется wlan0
:
sudo iwlist wlan0 scan
Выходные данные из iwlist будут отображать каждую найденную ячейку (или точку доступа), включая следующие сведения о типе шифрования:
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (2) : CCMP TKIP
Authentication Suites (1) : PSK
Это указывает на то, что сеть рядом со мной использует WPA2, используя предварительный общий ключ (PSK).
nmcli - клиент командной строки для NetworkManager. Его можно использовать для просмотра типов безопасности ближайших точек беспроводного доступа.
$> nmcli device wifi list
Результат будет отображаться следующим образом:
NetworkManager
имеет отличный бэкэнд командной строки под названием nmcli
, Небольшой недостаток в том, что некоторые команды в 15.04 отличаются от версии 14.04 nmcli
,
Ubuntu 14.04
nmcli -f NAME con status
позволяет перечислять имена текущих соединений. Например,
$ nmcli -f NAME,DEVICES con status
NAME DEVICES
Serg-Wifi wlan0
Теперь, чтобы перечислить конкретные детали о соединении, мы можем сделать nmcli con list id "WifiName"
, Чтобы быть более конкретным, мы ищем строку, которая говорит key-mgmt
,
$ nmcli con list id "SergWifi" | awk '/key-mgmt/ {print $2}'
wpa-psk
Таким образом, мы знаем, что этот Wi-Fi использует защиту WPA.
Еще одна подсказка - следующая строка:
802-11-wireless.security: 802-11-wireless-security
Теперь, как мы можем поместить это в тот же сценарий? Если у вас установлено только одно соединение,
nmcli con list id "$(nmcli -t -f NAME con status)" | awk '/key-mgmt/||/802-11-wireless\.security/ {print $2}'
Здесь мы просто манипулируем nmcli
с флагом -t, чтобы дать нам только имя точки доступа Wi-Fi без красивого заголовка, и использовать его в скобках замены параметров$( . . .)
и дать его в качестве входа для nmcli con list id
перечислить данные об этой точке доступа. В заключение, awk
просто отфильтровывает нужную строку.
Если у вас установлено соединение Wi-Fi, но также подключен Ethernet, nmcli -f NAME con status
выведет несколько строк. Я предлагаю отфильтровать Wi-Fi из этого списка, с nmcli -f NAME,DEVICES con status | awk '/wlan0/ {print $1}'
, Остальная часть обработки будет такой же, как указано выше.
Ubuntu 15.04
Вышеприведенные команды переводятся в 15.04 следующим образом:
nmcli -t -f NAME,DEVICE con status | awk -F':' '/wlan0/{print }'
получить имя установленного соединения наwlan0
nmcli con show "ConnectionName"
перечислить подробности о вашем установленном соединении.
Примечание: в Ubuntu 14.04 есть nm-tool
которая перечисляет информацию о ваших текущих соединениях в легко организованном формате, однако ее нет в 15.04, поэтому я предлагаю вам изучить и поиграть с ней самостоятельно