Как подключиться к Wi-Fi-сети WPA с помощью командной строки?

Хорошо, так что получается, что переключение окон очень просто.

#!/usr/bin/env python # This code will focus the window with integer id 67108870 # Tips: you can get that with xwininfo -int # wnck is used for window management import wnck # time is needed because wnck requires it import time # Get information about windows, workspaces, etc from the X server wnck.screen_get_default() # Get a reference to the window we want to focus # by providing an integer xid the_win = wnck.window_get(67108870) # activate the window, providing an int timestamp the_win.activate(int(time.time())

Я улучшу этот ответ, когда узнаю.

100
задан 17 May 2012 в 20:48

81 ответ

На самом деле есть способ сделать это с помощью NetworkManager, если у вас установлен пакет checkbox.

sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY

(Кредит: ошибка 923836 , которая появилась в мои поиски по теме.)

2
ответ дан 31 July 2018 в 10:26

У меня возникли проблемы с использованием функции wpa_supplicant, чтобы попасть в беспроводную сеть. Мой идентификатор сети и пароль сгенерировали ошибки, когда я использовал файл wpa_supplicant.conf в командной строке wpa_supplicant, например

sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

Мне удалось обойти его с помощью wpa_cli. Командная последовательность, которую я должен был использовать, поскольку я использую драйвер Windows с Linux ndiswrapper, это:

sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"

У меня была настроена сеть, добавив ее в раздел беспроводной сети в графическом интерфейсе, чтобы я мог щелкнуть значок проводной или беспроводной сети и выбрать поставщика беспроводной связи (который иногда необходим для завершения входа в систему).

1
ответ дан 31 July 2018 в 11:28

Все ответы, предлагающие wpa_supplicant, неверны. Да, он может подключить вас к сети WPA, но это плохое решение в долгосрочной перспективе, потому что будет очень сложно поддерживать и не будет хорошо играть с проводным подключением. Прочитайте этот ответ и упростите свою жизнь, используя Network Manager из командной строки. Я потратил несколько часов, пытаясь настроить wpa_supplicant, а затем попробовал nmcli, и он «просто сработал».

5
ответ дан 31 July 2018 в 11:28

nmcli - это версия командной строки приложения сетевого администратора по умолчанию для Ubuntu.

Некоторые из преимуществ заключаются в том, что он использует конфигурацию, которая у вас уже имеется на графическом интерфейсе, и она не нуждается в корневом доступе.

Вы можете запустить nmcli, чтобы отобразить доступные параметры.

Пример подключения к wifi с именем MYESSID:

    nmcli c up MYESSID   
0
ответ дан 31 July 2018 в 11:28

Вы можете использовать VSWM - Very Simple Wireless Manager. Вы помещаете свои известные точки доступа в простой файл cfg (/etc/vswm.cfg), и когда вы запускаете vswm, он просматривает доступные сети и подключает вашу карту с первой, которая появляется на /etc/vswm.cfg.

VSWM доступен в https://github.com/dmelo/vswm . Вот как выглядит файл конфигурации vswm.cfg:

[global]

dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]

[wlan0-0]

ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp

[wlan0-1]

ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24

Под капотами используются стандартные инструменты командной строки: iwlist, wpa_supplicant, iwconfig, dhclient ... Только он автоматизирует задание.

2
ответ дан 31 July 2018 в 11:28

Эта ссылка показывает все это и отлично работает для меня: http://linux.icydog.net/wpa.php

Я копирую содержимое здесь, поэтому мы имеем это, в случае, если сайт отключен.

Командная строка WPA

Иногда вы будете в командной строке без доступа к сетевым инструментам GUI, но ваша точка доступа защищен WPA. Что вы делаете?

Предполагая, что ваша беспроводная карта действительно работает (то есть iwconfig может ее видеть и взаимодействовать с ней), использование wpa_supplicant на самом деле довольно просто. Установка wpa_supplicant

У большинства дистрибутивов в настоящее время wpa_supplicant установлен по умолчанию. Если у вас есть команды wpa_passphrase и wpa_supplicant, тогда вам хорошо идти. В противном случае вам нужно будет установить пакет, выполнив что-то вроде (для Ubuntu):

$ sudo apt-get install wpasupplicant

Или (для Fedora):

# yum install wpa_supplicant

Или независимо от того, какая команда предназначена для ваш дистрибутив.

Создание конфигурационного файла

Теперь, когда установлен wpa_supplicant, мы создадим его файл конфигурации. После того, как вы знаете кодовую фразу SSID и WPA, все, что вам нужно сделать, это запустить:

$ wpa_passphrase myrouter mypassphrase > wpa.conf

Конечно, замените «myrouter» на SSID вашего маршрутизатора, «mypassphrase» вашей кодовой фразой WPA и «wpa.conf» с любым файлом, в который вы хотите сохранить конфигурацию. Это имя файла не обязательно должно следовать определенному формату или иметь конкретное расширение.

В качестве альтернативы, чтобы избежать ввода ключевой фразы в командной строке (поэтому он не сохраняется в истории оболочки), вы можете указать только SSID в командной строке. wpa_passphrase будет ждать ввода парольной фразы, а затем введите:

$ wpa_passphrase myrouter > wpa.conf
mypassphrase

Вы должны получить файл, выглядящий так:

network={
    ssid="myrouter"
    #psk="mypassphrase"
    psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}

Подключение

Теперь мы будем запускать wpa_supplicant для подключения к беспроводной сети. Во-первых, если ваш маршрутизатор передает свой SSID (все они делают по умолчанию), вы, вероятно, захотите убедиться, что ваша беспроводная карта действительно может его увидеть:

$ iwlist scan

Возможно, вам придется запускать это как root, чтобы заставить обновить.

Затем вам нужно знать три информации:

  1. Какие wpa_supplicant беспроводные драйверы будут использоваться для вашей карты. Запуск wpa_supplicant --help перечисляет различные драйверы, которые он имеет (в разделе «drivers:»). Начиная с 0.5.8, полезными вариантами являются: wext, hostap, madwifi, atmel, ndiswrapper и ipw (ipw только для старых ядер;> = 2.6.13 следует использовать wext). Если вы не видите конкретного соответствия вашей карте, попробуйте wext, так как это своего рода уловка.
  2. Сетевое устройство вашей карты. Обычно это eth1 или wlan0, но если вы не уверены, вы можете запустить iwconfig. Он будет сообщать «нет беспроводных расширений» для беспроводных устройств и отобразит некоторые данные для любых беспроводных устройств.
  3. Путь к файлу конфигурации, созданному на предыдущем шаге.

Теперь, когда у вас есть эти данные, запустите (как root):

# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]

Между опциями и параметрами нет пробелов. Не включайте скобки, поскольку я просто добавил их для ясности. Например, для моего ноутбука это выглядит так:

# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf

Вы также можете запустить его в фоновом режиме с помощью опции -B, чтобы она не занимала вашу консоль.

Теперь вы связаны с сетью.

Получение онлайн

Чтобы на самом деле выйти в интернет, вам нужно каким-то образом получить IP-адрес. Большинство людей просто захотят получить динамический IP-адрес с DHCP-сервера, возможно, встроенного в маршрутизатор. (Я не собираюсь описывать статическую IP-таблицу и таблицу маршрутизации, потому что это зверь сам по себе.)

Чтобы получить аренду DHCP, сначала отпустите все арендные договоры, которые вы все еще удерживаете (от имени root) :

# dhclient -r

Затем попросите новую аренду (конечно, заменив eth1 на имя вашего сетевого устройства, то же самое, что вы использовали в предыдущем разделе):

# dhclient eth1

У вас теперь есть IP, теоретически, по крайней мере. Счастливый серфинг!

67
ответ дан 31 July 2018 в 11:28

Сначала запустите карту, если она не работает:

ifconfig wlan0 up

Задайте параметры в соответствии с вашей сетью

iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
3
ответ дан 31 July 2018 в 11:28

На самом деле есть способ сделать это с помощью NetworkManager, если у вас установлен пакет checkbox.

sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY

(Кредит: ошибка 923836 , которая появилась в мои поиски по теме.)

2
ответ дан 31 July 2018 в 11:28

У меня возникли проблемы с использованием функции wpa_supplicant, чтобы попасть в беспроводную сеть. Мой идентификатор сети и пароль сгенерировали ошибки, когда я использовал файл wpa_supplicant.conf в командной строке wpa_supplicant, например

sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

Мне удалось обойти его с помощью wpa_cli. Командная последовательность, которую я должен был использовать, поскольку я использую драйвер Windows с Linux ndiswrapper, это:

sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"

У меня была настроена сеть, добавив ее в раздел беспроводной сети в графическом интерфейсе, чтобы я мог щелкнуть значок проводной или беспроводной сети и выбрать поставщика беспроводной связи (который иногда необходим для завершения входа в систему).

1
ответ дан 2 August 2018 в 01:01

Все ответы, предлагающие wpa_supplicant, неверны. Да, он может подключить вас к сети WPA, но это плохое решение в долгосрочной перспективе, потому что будет очень сложно поддерживать и не будет хорошо играть с проводным подключением. Прочитайте этот ответ и упростите свою жизнь, используя Network Manager из командной строки. Я потратил несколько часов, пытаясь настроить wpa_supplicant, а затем попробовал nmcli, и он «просто сработал».

5
ответ дан 2 August 2018 в 01:01

nmcli - это версия командной строки приложения сетевого администратора по умолчанию для Ubuntu.

Некоторые из преимуществ заключаются в том, что он использует конфигурацию, которая у вас уже имеется на графическом интерфейсе, и она не нуждается в корневом доступе.

Вы можете запустить nmcli, чтобы отобразить доступные параметры.

Пример подключения к wifi с именем MYESSID:

    nmcli c up MYESSID   
0
ответ дан 2 August 2018 в 01:01

Вы можете использовать VSWM - Very Simple Wireless Manager. Вы помещаете свои известные точки доступа в простой файл cfg (/etc/vswm.cfg), и когда вы запускаете vswm, он просматривает доступные сети и подключает вашу карту с первой, которая появляется на /etc/vswm.cfg.

VSWM доступен в https://github.com/dmelo/vswm . Вот как выглядит файл конфигурации vswm.cfg:

[global]

dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]

[wlan0-0]

ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp

[wlan0-1]

ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24

Под капотами используются стандартные инструменты командной строки: iwlist, wpa_supplicant, iwconfig, dhclient ... Только он автоматизирует задание.

2
ответ дан 2 August 2018 в 01:01

Эта ссылка показывает все это и отлично работает для меня: http://linux.icydog.net/wpa.php

Я копирую содержимое здесь, поэтому мы имеем это, в случае, если сайт отключен.

Командная строка WPA

Иногда вы будете в командной строке без доступа к сетевым инструментам GUI, но ваша точка доступа защищен WPA. Что вы делаете?

Предполагая, что ваша беспроводная карта действительно работает (то есть iwconfig может ее видеть и взаимодействовать с ней), использование wpa_supplicant на самом деле довольно просто. Установка wpa_supplicant

У большинства дистрибутивов в настоящее время wpa_supplicant установлен по умолчанию. Если у вас есть команды wpa_passphrase и wpa_supplicant, тогда вам хорошо идти. В противном случае вам нужно будет установить пакет, выполнив что-то вроде (для Ubuntu):

$ sudo apt-get install wpasupplicant

Или (для Fedora):

# yum install wpa_supplicant

Или независимо от того, какая команда предназначена для ваш дистрибутив.

Создание конфигурационного файла

Теперь, когда установлен wpa_supplicant, мы создадим его файл конфигурации. После того, как вы знаете кодовую фразу SSID и WPA, все, что вам нужно сделать, это запустить:

$ wpa_passphrase myrouter mypassphrase > wpa.conf

Конечно, замените «myrouter» на SSID вашего маршрутизатора, «mypassphrase» вашей кодовой фразой WPA и «wpa.conf» с любым файлом, в который вы хотите сохранить конфигурацию. Это имя файла не обязательно должно следовать определенному формату или иметь конкретное расширение.

В качестве альтернативы, чтобы избежать ввода ключевой фразы в командной строке (поэтому он не сохраняется в истории оболочки), вы можете указать только SSID в командной строке. wpa_passphrase будет ждать ввода парольной фразы, а затем введите:

$ wpa_passphrase myrouter > wpa.conf
mypassphrase

Вы должны получить файл, выглядящий так:

network={
    ssid="myrouter"
    #psk="mypassphrase"
    psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}

Подключение

Теперь мы будем запускать wpa_supplicant для подключения к беспроводной сети. Во-первых, если ваш маршрутизатор передает свой SSID (все они делают по умолчанию), вы, вероятно, захотите убедиться, что ваша беспроводная карта действительно может его увидеть:

$ iwlist scan

Возможно, вам придется запускать это как root, чтобы заставить обновить.

Затем вам нужно знать три информации:

  1. Какие wpa_supplicant беспроводные драйверы будут использоваться для вашей карты. Запуск wpa_supplicant --help перечисляет различные драйверы, которые он имеет (в разделе «drivers:»). Начиная с 0.5.8, полезными вариантами являются: wext, hostap, madwifi, atmel, ndiswrapper и ipw (ipw только для старых ядер;> = 2.6.13 следует использовать wext). Если вы не видите конкретного соответствия вашей карте, попробуйте wext, так как это своего рода уловка.
  2. Сетевое устройство вашей карты. Обычно это eth1 или wlan0, но если вы не уверены, вы можете запустить iwconfig. Он будет сообщать «нет беспроводных расширений» для беспроводных устройств и отобразит некоторые данные для любых беспроводных устройств.
  3. Путь к файлу конфигурации, созданному на предыдущем шаге.

Теперь, когда у вас есть эти данные, запустите (как root):

# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]

Между опциями и параметрами нет пробелов. Не включайте скобки, поскольку я просто добавил их для ясности. Например, для моего ноутбука это выглядит так:

# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf

Вы также можете запустить его в фоновом режиме с помощью опции -B, чтобы она не занимала вашу консоль.

Теперь вы связаны с сетью.

Получение онлайн

Чтобы на самом деле выйти в интернет, вам нужно каким-то образом получить IP-адрес. Большинство людей просто захотят получить динамический IP-адрес с DHCP-сервера, возможно, встроенного в маршрутизатор. (Я не собираюсь описывать статическую IP-таблицу и таблицу маршрутизации, потому что это зверь сам по себе.)

Чтобы получить аренду DHCP, сначала отпустите все арендные договоры, которые вы все еще удерживаете (от имени root) :

# dhclient -r

Затем попросите новую аренду (конечно, заменив eth1 на имя вашего сетевого устройства, то же самое, что вы использовали в предыдущем разделе):

# dhclient eth1

У вас теперь есть IP, теоретически, по крайней мере. Счастливый серфинг!

67
ответ дан 2 August 2018 в 01:01

Сначала запустите карту, если она не работает:

ifconfig wlan0 up

Задайте параметры в соответствии с вашей сетью

iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
3
ответ дан 2 August 2018 в 01:01

На самом деле есть способ сделать это с помощью NetworkManager, если у вас установлен пакет checkbox.

sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY

(Кредит: ошибка 923836 , которая появилась в мои поиски по теме.)

2
ответ дан 2 August 2018 в 01:01

У меня возникли проблемы с использованием функции wpa_supplicant, чтобы попасть в беспроводную сеть. Мой идентификатор сети и пароль сгенерировали ошибки, когда я использовал файл wpa_supplicant.conf в командной строке wpa_supplicant, например

sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

Мне удалось обойти его с помощью wpa_cli. Командная последовательность, которую я должен был использовать, поскольку я использую драйвер Windows с Linux ndiswrapper, это:

sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"

У меня была настроена сеть, добавив ее в раздел беспроводной сети в графическом интерфейсе, чтобы я мог щелкнуть значок проводной или беспроводной сети и выбрать поставщика беспроводной связи (который иногда необходим для завершения входа в систему).

1
ответ дан 4 August 2018 в 16:32

Все ответы, предлагающие wpa_supplicant, неверны. Да, он может подключить вас к сети WPA, но это плохое решение в долгосрочной перспективе, потому что будет очень сложно поддерживать и не будет хорошо играть с проводным подключением. Прочитайте этот ответ и упростите свою жизнь, используя Network Manager из командной строки. Я потратил несколько часов, пытаясь настроить wpa_supplicant, а затем попробовал nmcli, и он «просто сработал».

5
ответ дан 4 August 2018 в 16:32

nmcli - это версия командной строки приложения сетевого администратора по умолчанию для Ubuntu.

Некоторые из преимуществ заключаются в том, что он использует конфигурацию, которая у вас уже имеется на графическом интерфейсе, и она не нуждается в корневом доступе.

Вы можете запустить nmcli, чтобы отобразить доступные параметры.

Пример подключения к wifi с именем MYESSID:

    nmcli c up MYESSID   
0
ответ дан 4 August 2018 в 16:32

Вы можете использовать VSWM - Very Simple Wireless Manager. Вы помещаете свои известные точки доступа в простой файл cfg (/etc/vswm.cfg), и когда вы запускаете vswm, он просматривает доступные сети и подключает вашу карту с первой, которая появляется на /etc/vswm.cfg.

VSWM доступен в https://github.com/dmelo/vswm . Вот как выглядит файл конфигурации vswm.cfg:

[global]

dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]

[wlan0-0]

ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp

[wlan0-1]

ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24

Под капотами используются стандартные инструменты командной строки: iwlist, wpa_supplicant, iwconfig, dhclient ... Только он автоматизирует задание.

2
ответ дан 4 August 2018 в 16:32

Эта ссылка показывает все это и отлично работает для меня: http://linux.icydog.net/wpa.php

Я копирую содержимое здесь, поэтому мы имеем это, в случае, если сайт отключен.

Командная строка WPA

Иногда вы будете в командной строке без доступа к сетевым инструментам GUI, но ваша точка доступа защищен WPA. Что вы делаете?

Предполагая, что ваша беспроводная карта действительно работает (то есть iwconfig может ее видеть и взаимодействовать с ней), использование wpa_supplicant на самом деле довольно просто. Установка wpa_supplicant

У большинства дистрибутивов в настоящее время wpa_supplicant установлен по умолчанию. Если у вас есть команды wpa_passphrase и wpa_supplicant, тогда вам хорошо идти. В противном случае вам нужно будет установить пакет, выполнив что-то вроде (для Ubuntu):

$ sudo apt-get install wpasupplicant

Или (для Fedora):

# yum install wpa_supplicant

Или независимо от того, какая команда предназначена для ваш дистрибутив.

Создание конфигурационного файла

Теперь, когда установлен wpa_supplicant, мы создадим его файл конфигурации. После того, как вы знаете кодовую фразу SSID и WPA, все, что вам нужно сделать, это запустить:

$ wpa_passphrase myrouter mypassphrase > wpa.conf

Конечно, замените «myrouter» на SSID вашего маршрутизатора, «mypassphrase» вашей кодовой фразой WPA и «wpa.conf» с любым файлом, в который вы хотите сохранить конфигурацию. Это имя файла не обязательно должно следовать определенному формату или иметь конкретное расширение.

В качестве альтернативы, чтобы избежать ввода ключевой фразы в командной строке (поэтому он не сохраняется в истории оболочки), вы можете указать только SSID в командной строке. wpa_passphrase будет ждать ввода парольной фразы, а затем введите:

$ wpa_passphrase myrouter > wpa.conf
mypassphrase

Вы должны получить файл, выглядящий так:

network={
    ssid="myrouter"
    #psk="mypassphrase"
    psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}

Подключение

Теперь мы будем запускать wpa_supplicant для подключения к беспроводной сети. Во-первых, если ваш маршрутизатор передает свой SSID (все они делают по умолчанию), вы, вероятно, захотите убедиться, что ваша беспроводная карта действительно может его увидеть:

$ iwlist scan

Возможно, вам придется запускать это как root, чтобы заставить обновить.

Затем вам нужно знать три информации:

  1. Какие wpa_supplicant беспроводные драйверы будут использоваться для вашей карты. Запуск wpa_supplicant --help перечисляет различные драйверы, которые он имеет (в разделе «drivers:»). Начиная с 0.5.8, полезными вариантами являются: wext, hostap, madwifi, atmel, ndiswrapper и ipw (ipw только для старых ядер;> = 2.6.13 следует использовать wext). Если вы не видите конкретного соответствия вашей карте, попробуйте wext, так как это своего рода уловка.
  2. Сетевое устройство вашей карты. Обычно это eth1 или wlan0, но если вы не уверены, вы можете запустить iwconfig. Он будет сообщать «нет беспроводных расширений» для беспроводных устройств и отобразит некоторые данные для любых беспроводных устройств.
  3. Путь к файлу конфигурации, созданному на предыдущем шаге.

Теперь, когда у вас есть эти данные, запустите (как root):

# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]

Между опциями и параметрами нет пробелов. Не включайте скобки, поскольку я просто добавил их для ясности. Например, для моего ноутбука это выглядит так:

# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf

Вы также можете запустить его в фоновом режиме с помощью опции -B, чтобы она не занимала вашу консоль.

Теперь вы связаны с сетью.

Получение онлайн

Чтобы на самом деле выйти в интернет, вам нужно каким-то образом получить IP-адрес. Большинство людей просто захотят получить динамический IP-адрес с DHCP-сервера, возможно, встроенного в маршрутизатор. (Я не собираюсь описывать статическую IP-таблицу и таблицу маршрутизации, потому что это зверь сам по себе.)

Чтобы получить аренду DHCP, сначала отпустите все арендные договоры, которые вы все еще удерживаете (от имени root) :

# dhclient -r

Затем попросите новую аренду (конечно, заменив eth1 на имя вашего сетевого устройства, то же самое, что вы использовали в предыдущем разделе):

# dhclient eth1

У вас теперь есть IP, теоретически, по крайней мере. Счастливый серфинг!

67
ответ дан 4 August 2018 в 16:32

Сначала запустите карту, если она не работает:

ifconfig wlan0 up

Задайте параметры в соответствии с вашей сетью

iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
3
ответ дан 4 August 2018 в 16:32

На самом деле есть способ сделать это с помощью NetworkManager, если у вас установлен пакет checkbox.

sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY

(Кредит: ошибка 923836 , которая появилась в мои поиски по теме.)

2
ответ дан 4 August 2018 в 16:32

Вы можете использовать VSWM - Very Simple Wireless Manager. Вы помещаете свои известные точки доступа в простой файл cfg (/etc/vswm.cfg), и когда вы запускаете vswm, он просматривает доступные сети и подключает вашу карту с первой, которая появляется на /etc/vswm.cfg.

VSWM доступен в https://github.com/dmelo/vswm . Вот как выглядит файл конфигурации vswm.cfg:

[global]

dev = wlan0
dns = ["4.2.2.1","8.8.8.8"]

[wlan0-0]

ssid = Network1
psk = netpassword
protocol = WPA
net = dhcp

[wlan0-1]

ssid = Network2
protocol = WEP
net = static
address = 192.168.0.15/24

Под капотами используются стандартные инструменты командной строки: iwlist, wpa_supplicant, iwconfig, dhclient ... Только он автоматизирует задание.

2
ответ дан 6 August 2018 в 01:11

Все ответы, предлагающие wpa_supplicant, неверны. Да, он может подключить вас к сети WPA, но это плохое решение в долгосрочной перспективе, потому что будет очень сложно поддерживать и не будет хорошо играть с проводным подключением. Прочитайте этот ответ и упростите свою жизнь, используя Network Manager из командной строки. Я потратил несколько часов, пытаясь настроить wpa_supplicant, а затем попробовал nmcli, и он «просто сработал».

5
ответ дан 6 August 2018 в 01:11

У меня возникли проблемы с использованием функции wpa_supplicant, чтобы попасть в беспроводную сеть. Мой идентификатор сети и пароль сгенерировали ошибки, когда я использовал файл wpa_supplicant.conf в командной строке wpa_supplicant, например

sudo wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

Мне удалось обойти его с помощью wpa_cli. Командная последовательность, которую я должен был использовать, поскольку я использую драйвер Windows с Linux ndiswrapper, это:

sudo modprobe ndiswrapper
sudo iwconfig wlan0 essid "<My Network ID>" mode managed
sudo wpa_cli identity "<My Network ID>" password "<My password>"

У меня была настроена сеть, добавив ее в раздел беспроводной сети в графическом интерфейсе, чтобы я мог щелкнуть значок проводной или беспроводной сети и выбрать поставщика беспроводной связи (который иногда необходим для завершения входа в систему).

1
ответ дан 6 August 2018 в 01:11

nmcli - это версия командной строки приложения сетевого администратора по умолчанию для Ubuntu.

Некоторые из преимуществ заключаются в том, что он использует конфигурацию, которая у вас уже имеется на графическом интерфейсе, и она не нуждается в корневом доступе.

Вы можете запустить nmcli, чтобы отобразить доступные параметры.

Пример подключения к wifi с именем MYESSID:

    nmcli c up MYESSID   
0
ответ дан 6 August 2018 в 01:11

Эта ссылка показывает все это и отлично работает для меня: http://linux.icydog.net/wpa.php

Я копирую содержимое здесь, поэтому мы имеем это, в случае, если сайт отключен.

Командная строка WPA

Иногда вы будете в командной строке без доступа к сетевым инструментам GUI, но ваша точка доступа защищен WPA. Что вы делаете?

Предполагая, что ваша беспроводная карта действительно работает (то есть iwconfig может ее видеть и взаимодействовать с ней), использование wpa_supplicant на самом деле довольно просто. Установка wpa_supplicant

У большинства дистрибутивов в настоящее время wpa_supplicant установлен по умолчанию. Если у вас есть команды wpa_passphrase и wpa_supplicant, тогда вам хорошо идти. В противном случае вам нужно будет установить пакет, выполнив что-то вроде (для Ubuntu):

$ sudo apt-get install wpasupplicant

Или (для Fedora):

# yum install wpa_supplicant

Или независимо от того, какая команда предназначена для ваш дистрибутив.

Создание конфигурационного файла

Теперь, когда установлен wpa_supplicant, мы создадим его файл конфигурации. После того, как вы знаете кодовую фразу SSID и WPA, все, что вам нужно сделать, это запустить:

$ wpa_passphrase myrouter mypassphrase > wpa.conf

Конечно, замените «myrouter» на SSID вашего маршрутизатора, «mypassphrase» вашей кодовой фразой WPA и «wpa.conf» с любым файлом, в который вы хотите сохранить конфигурацию. Это имя файла не обязательно должно следовать определенному формату или иметь конкретное расширение.

В качестве альтернативы, чтобы избежать ввода ключевой фразы в командной строке (поэтому он не сохраняется в истории оболочки), вы можете указать только SSID в командной строке. wpa_passphrase будет ждать ввода парольной фразы, а затем введите:

$ wpa_passphrase myrouter > wpa.conf
mypassphrase

Вы должны получить файл, выглядящий так:

network={
    ssid="myrouter"
    #psk="mypassphrase"
    psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}

Подключение

Теперь мы будем запускать wpa_supplicant для подключения к беспроводной сети. Во-первых, если ваш маршрутизатор передает свой SSID (все они делают по умолчанию), вы, вероятно, захотите убедиться, что ваша беспроводная карта действительно может его увидеть:

$ iwlist scan

Возможно, вам придется запускать это как root, чтобы заставить обновить.

Затем вам нужно знать три информации:

  1. Какие wpa_supplicant беспроводные драйверы будут использоваться для вашей карты. Запуск wpa_supplicant --help перечисляет различные драйверы, которые он имеет (в разделе «drivers:»). Начиная с 0.5.8, полезными вариантами являются: wext, hostap, madwifi, atmel, ndiswrapper и ipw (ipw только для старых ядер;> = 2.6.13 следует использовать wext). Если вы не видите конкретного соответствия вашей карте, попробуйте wext, так как это своего рода уловка.
  2. Сетевое устройство вашей карты. Обычно это eth1 или wlan0, но если вы не уверены, вы можете запустить iwconfig. Он будет сообщать «нет беспроводных расширений» для беспроводных устройств и отобразит некоторые данные для любых беспроводных устройств.
  3. Путь к файлу конфигурации, созданному на предыдущем шаге.

Теперь, когда у вас есть эти данные, запустите (как root):

# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]

Между опциями и параметрами нет пробелов. Не включайте скобки, поскольку я просто добавил их для ясности. Например, для моего ноутбука это выглядит так:

# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf

Вы также можете запустить его в фоновом режиме с помощью опции -B, чтобы она не занимала вашу консоль.

Теперь вы связаны с сетью.

Получение онлайн

Чтобы на самом деле выйти в интернет, вам нужно каким-то образом получить IP-адрес. Большинство людей просто захотят получить динамический IP-адрес с DHCP-сервера, возможно, встроенного в маршрутизатор. (Я не собираюсь описывать статическую IP-таблицу и таблицу маршрутизации, потому что это зверь сам по себе.)

Чтобы получить аренду DHCP, сначала отпустите все арендные договоры, которые вы все еще удерживаете (от имени root) :

# dhclient -r

Затем попросите новую аренду (конечно, заменив eth1 на имя вашего сетевого устройства, то же самое, что вы использовали в предыдущем разделе):

# dhclient eth1

У вас теперь есть IP, теоретически, по крайней мере. Счастливый серфинг!

67
ответ дан 6 August 2018 в 01:11

Сначала запустите карту, если она не работает:

ifconfig wlan0 up

Задайте параметры в соответствии с вашей сетью

iwlist wlan0 scan
iwconfig wlan0 essid NETWORK_ID key WIRELESS_KEY
3
ответ дан 6 August 2018 в 01:11

На самом деле есть способ сделать это с помощью NetworkManager, если у вас установлен пакет checkbox.

sudo /usr/share/checkbox/create_connection SSID --security=wpa -key=WPA-KEY

(Кредит: ошибка 923836 , которая появилась в мои поиски по теме.)

2
ответ дан 6 August 2018 в 01:11

Эта ссылка показывает все это и отлично работает для меня: http://linux.icydog.net/wpa.php

Я копирую содержимое здесь, поэтому мы имеем это, в случае, если сайт отключен.

Командная строка WPA

Иногда вы будете в командной строке без доступа к сетевым инструментам GUI, но ваша точка доступа защищен WPA. Что вы делаете?

Предполагая, что ваша беспроводная карта действительно работает (то есть iwconfig может ее видеть и взаимодействовать с ней), использование wpa_supplicant на самом деле довольно просто. Установка wpa_supplicant

У большинства дистрибутивов в настоящее время wpa_supplicant установлен по умолчанию. Если у вас есть команды wpa_passphrase и wpa_supplicant, тогда вам хорошо идти. В противном случае вам нужно будет установить пакет, выполнив что-то вроде (для Ubuntu):

$ sudo apt-get install wpasupplicant

Или (для Fedora):

# yum install wpa_supplicant

Или независимо от того, какая команда предназначена для ваш дистрибутив.

Создание конфигурационного файла

Теперь, когда установлен wpa_supplicant, мы создадим его файл конфигурации. После того, как вы знаете кодовую фразу SSID и WPA, все, что вам нужно сделать, это запустить:

$ wpa_passphrase myrouter mypassphrase > wpa.conf

Конечно, замените «myrouter» на SSID вашего маршрутизатора, «mypassphrase» вашей кодовой фразой WPA и «wpa.conf» с любым файлом, в который вы хотите сохранить конфигурацию. Это имя файла не обязательно должно следовать определенному формату или иметь конкретное расширение.

В качестве альтернативы, чтобы избежать ввода ключевой фразы в командной строке (поэтому он не сохраняется в истории оболочки), вы можете указать только SSID в командной строке. wpa_passphrase будет ждать ввода парольной фразы, а затем введите:

$ wpa_passphrase myrouter > wpa.conf
mypassphrase

Вы должны получить файл, выглядящий так:

network={
    ssid="myrouter"
    #psk="mypassphrase"
    psk=8ada1f8dbea59704ac379538b4d9191f6a72390581b4cd7a72864cea685b1a7f
}

Подключение

Теперь мы будем запускать wpa_supplicant для подключения к беспроводной сети. Во-первых, если ваш маршрутизатор передает свой SSID (все они делают по умолчанию), вы, вероятно, захотите убедиться, что ваша беспроводная карта действительно может его увидеть:

$ iwlist scan

Возможно, вам придется запускать это как root, чтобы заставить обновить.

Затем вам нужно знать три информации:

  1. Какие wpa_supplicant беспроводные драйверы будут использоваться для вашей карты. Запуск wpa_supplicant --help перечисляет различные драйверы, которые он имеет (в разделе «drivers:»). Начиная с 0.5.8, полезными вариантами являются: wext, hostap, madwifi, atmel, ndiswrapper и ipw (ipw только для старых ядер;> = 2.6.13 следует использовать wext). Если вы не видите конкретного соответствия вашей карте, попробуйте wext, так как это своего рода уловка.
  2. Сетевое устройство вашей карты. Обычно это eth1 или wlan0, но если вы не уверены, вы можете запустить iwconfig. Он будет сообщать «нет беспроводных расширений» для беспроводных устройств и отобразит некоторые данные для любых беспроводных устройств.
  3. Путь к файлу конфигурации, созданному на предыдущем шаге.

Теперь, когда у вас есть эти данные, запустите (как root):

# wpa_supplicant -D[driver] -i[device] -c[/path/to/config]

Между опциями и параметрами нет пробелов. Не включайте скобки, поскольку я просто добавил их для ясности. Например, для моего ноутбука это выглядит так:

# wpa_supplicant -Dwext -ieth1 -c/root/wpa.conf

Вы также можете запустить его в фоновом режиме с помощью опции -B, чтобы она не занимала вашу консоль.

Теперь вы связаны с сетью.

Получение онлайн

Чтобы на самом деле выйти в интернет, вам нужно каким-то образом получить IP-адрес. Большинство людей просто захотят получить динамический IP-адрес с DHCP-сервера, возможно, встроенного в маршрутизатор. (Я не собираюсь описывать статическую IP-таблицу и таблицу маршрутизации, потому что это зверь сам по себе.)

Чтобы получить аренду DHCP, сначала отпустите все арендные договоры, которые вы все еще удерживаете (от имени root) :

# dhclient -r

Затем попросите новую аренду (конечно, заменив eth1 на имя вашего сетевого устройства, то же самое, что вы использовали в предыдущем разделе):

# dhclient eth1

У вас теперь есть IP, теоретически, по крайней мере. Счастливый серфинг!

67
ответ дан 7 August 2018 в 18:37

Другие вопросы по тегам:

Похожие вопросы: