Как подключиться к новому WiFi, введя пароль с помощью CMD?
Для своего школьного проекта я решил создать программу WiFi_manager с помощью cmd.
Я знаю, чтобы отобразить все сети WiFi (в cmd):
netsh wlan show networks
Теперь предположим, что я хочу подключиться к сети Wi-Fi, к которой раньше никогда не подключался. И что WiFi еще не добавлен в профили.
Но я знаю пароль от WiFi.
1) Какой будет командная строка для этого.
Учитывая информацию о сети WiFi ниже:
SSID 3 : Ismail
Network type : Infrastructure
Authentication : WPA-Personal
Encryption : CCMP
and password is "Thanks_bro".
Если это невозможно, можно ли это сделать с помощью C++?
Итак, вы уже знаете
netsh wlan
Если вы введете его, вы получите список возможных команд. Один из них
add
.Если вы введете
netsh wlan add
, вы получите еще один список возможных подкоманд. Один из нихprofile
.Если вы введете
netsh wlan add profile
, вы получите подробное объяснение всех его возможных параметров. Одним из необходимых параметров является файл XML, содержащий информацию о профиле.Итак, как получить такой файл XML? Вернитесь к
netsh wlan
и изучите ключевые слова. Естьexport
.Если вы введете
netsh wlan export
, вы получите еще один список возможных подкоманд. Одинprofile
. Он создает XML в вашем локальном каталоге, содержащий необходимую информацию для вашего текущего соединения WiFi.Если вы хотите получить пароль в виде открытого текста, вам также придется добавить параметр
key=clear
. Сделайте так, чтобы вся команда сталаВот пример, который уже содержит необходимые заполнители
Просто замените ключевые слова
{SSID}
(встречается два раза) и{password}
на нужные значения и импортируйте этот файл, вызвавспасибо, братан, понял, может быть, еще один день, чтобы изучить ВСЮ ЦЕПЬ команд netsh. Но поскольку я спешу закончить свой проект, у меня есть еще проблемы, которые нужно решать и учиться! на данный момент не могли бы шаги для меня, пожалуйста! Спасибо — person Jim Kim.; 15.12.2016
Все шаги в моем ответе. Просто попробуйте их и изучите результаты. — person Jim Kim.; 15.12.2016
Братан, это покажет только пароль WiFi, который подключался раньше! Мне нужна команда, которая позволит мне подключиться к новому Wi-Fi, введя пароль и введя его в cmd. Надеюсь, вы получили мой вопрос. — person Jim Kim.; 16.12.2016
Напишите файл шаблона (из файла дампа), содержащий заполнитель (например,
{password}
). Затем напишите сценарий powershell, который запрашивает нужные параметры (см. ответ) и замените текст в файле шаблона (см. этот ответ). Затем используйте вызовnetsh wlan add profile
, чтобы добавить его к системе. — person Jim Kim.; 16.12.2016У меня уже БЫЛА эта идея. Не удалось, две проблемы: 1) В xml файле система хранит пароль wifi в зашифрованном виде. поэтому я должен преобразовать свой пароль в эту форму и сохранить его как xml, который невозможно преобразовать. 2) Защитник Windows отлавливает мои файлы как вредоносные. — person Jim Kim.; 16.12.2016
Если вы вызовете команду экспорта с помощью
key=clear
, вы получите пример файла, который содержит пароль в виде открытого текста. Узелprotected
— этоfalse
, а узелkeyMaterial
содержит ключ в виде открытого текста. — person Jim Kim.; 19.12.2016Спасибо, Бро! Я хожу !! Также посетите: superuser.com/questions/1157485/ . И попробуй помочь. — person Jim Kim.; 19.12.2016
Как ввести имя пользователя и пароль для корпоративного WiFi? — person Jim Kim.; 05.12.2019
@JPX: Что объявляет WiFi корпоративным? И в чем отличие с точки зрения клиента? Либо задайте новый вопрос и опишите свои отличия, либо настройте WiFi через Windows как обычно и экспортируйте профиль, как описано выше. — person Jim Kim.; 05.12.2019
@Oliver Enterprise WiFi использует WPA2-Enterprise, а не WPA2-PSK. Протокол WPA2-Enterprise PEAP-MSCHAPv2 требует имя пользователя и пароль. Thill обеспечит безопасный доступ для нескольких пользователей (в отличие от WPA2-PSK, поскольку пароль WPA2-PSK должен быть известен всем пользователям). Сервер RADIUS будет обрабатывать аутентификацию, основанную на 802.1X. Имя пользователя и пароль не включены в XML-файл профиля. Вот почему ваше решение не работает. — person Jim Kim.; 05.12.2019
ИМХО, если вы настраиваете предприятие, вы должны иметь возможность развертывать объекты групповой политики для своих пользователей и их компьютеров. AFAIK можно настроить, например. с Intune, как эти машины должны подключаться и настраивать все необходимое для подключения к вашему WiFi, но я этого не знаю и, возможно, стоит нового вопроса (но, возможно, из-за сбоя сервера или суперпользователя). — person Jim Kim.; 06.12.2019
@Oliver Я создал новый вопрос об этом. В Intune нельзя установить имя пользователя и пароль. serverfault.com/questions/994281/ — person Jim Kim.; 06.12.2019
Простой
netsh wlan ?
в командной строке показывает, что есть командаnetsh wlan connect
. Однако похоже, что для этой команды требуется уже существующий «профиль»; вам нужно будет создать это, используяnetsh wlan add
.Детали оставлены в качестве упражнения для читателя. (В конце концов, это домашнее задание.)
Существует также образец клиента WLAN на C/C++, использующий Windows API, включенный в Windows SDK. Я нашел это, выполнив поиск wlanclient msdn, страница здесь.
на Mac вы можете использовать эту строку bash в терминале для входа в сеть Wi-Fi:
Примечание.
port — ваш порт Wi-Fi (на моем Mac это порт en0)
название сети – это название сети, например Starbucks.
пароль — это просто пароль для сети.
если пароль уже сохранен в вашей связке ключей, вам не нужен этот параметр
это должно работать и на других системах
cmd доступен только для ОС Windows — person Jim Kim.; 21.08.2018