Як я можу налаштувати безголовий сервер на автоматичне підключення до бездротової мережі?


18

Я налаштовую безголовий сервер, але у мене немає доступу до Ethernet, куди я хочу його розмістити, тому мені потрібно, щоб він автоматично підключався до моєї мережі WiFi, коли він завантажується (у нього є бездротова карта). Я можу підключитися до Ethernet-з'єднання, щоб налаштувати його, але мені потрібно, щоб він автоматично підключався до моєї точки доступу.

Як я можу це налаштувати?

Відповіді:


19

Провівши багато досліджень, я почав це працювати. Оскільки у мене є бездротова карта Intel, мені не довелося встановлювати зайвих драйверів, але, можливо, доведеться це робити, залежно від карти, яку ви маєте.

Спочатку потрібно розібратися, який інтерфейс використовує ваша бездротова карта. Для цього ми використовуємо iwconfigкоманду:

iwconfig  

У моєму випадку моя бездротова карта - це wlan0інтерфейс, тому я буду використовувати це. Тепер нам потрібно сканувати бездротові мережі:

iwlist wlan0 s  

Це повинно дати багато результатів, показуючи деталі різних бездротових мереж у вашому районі. Зазвичай простіше фільтрувати за допомогою ESSID. grepдопомагає нам тут:

iwlist wlan0 s | grep ESSID  

Тут відображатимуться назви всіх бездротових мереж у вашому регіоні. Тепер прийшов час підключитися до вашої мережі.

Незахищені мережі WEP

Якщо ваша мережа незахищена або захищена старішою WEP (час для оновлення безпеки або маршрутизатора!), Підключення відносно просте. Якщо ваша мережа незахищена, вам слід мати змогу підключитися до цього:

iwconfig wlan0 essid NAME_OF_NETWORK  

Якщо ваша мережа захищена WEP, просто додайте keyаргумент, а потім ваш пароль:

iwconfig wlan0 essid NAME_OF_NETWORK key PASSWORD  

Можливо, вам доведеться бігти

dhclient  

Щоб ваш маршрутизатор призначив вам IP-адресу.

WPA / WPA2

WPA / WPA2 трохи складніше. Вам потрібно буде скористатися wpa_supplicant. Спочатку створіть конфігураційний файл у /etc:

sudo wpa_passphrase NETWORK_NAME NETWORK_PASSWORD > /etc/wpa_supplicant.conf  

Тепер нам потрібно підключити:

sudo wpa_supplicant -B -iINTERFACE_NAME -cPATH_TO_CONFIG -DDRIVER  

Наприклад:

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

-Bпрацює wpa_supplicantу фоновому режимі. wextВодій повинен працювати в більшості випадків. Щоб побачити інші драйвери:

wpa_supplicant  

Для отримання додаткової інформації про підключення див. Як підключити та відключитись до мережі вручну в терміналі?

Підключіться під час запуску

Тепер нам потрібно відредагувати /etc/network/interfaces. Відкрийте його в своєму улюбленому редакторі ( vim, nanoі т.д.); вам потрібно буде скористатися sudo.

Видаліть усе, крім:

auto lo
iface lo inet loopback

(пристрій зворотного зв'язку). Тепер додайте:

auto wlan0  
iface wlan0 inet dhcp  

pre-up <COMMAND> 

Де wlan0знаходиться ваш бездротовий інтерфейс і <COMMAND>є командою, яку ви використовуєте для підключення до своєї мережі (див. Вище). Наприклад, якщо ваша мережа незахищена, ви додасте:

pre-up iwconfig wlan0 essid some_network_name  

Якщо ваша мережа захищена WPA / 2, ви додасте щось подібне:

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

Якщо ви використовуєте, wpa_supplicantви також повинні додати:

post-down sudo killall -q wpa_supplicant  

Збережіть файл, перезапустіть, відключіть мережеву мережу та спробуйте запустити:

sudo apt-get update

Якщо команда успішно завершує вітання! Ви в Інтернеті! Якщо команда не завершилася успішно, додайте коментар нижче.

Приклади та пояснення

Якщо ваша мережа незахищена або захищена WEP, зараз ви /etc/network/interfacesповинні виглядати подібним чином:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up iwconfig wlan0 essid some_network_name 
# note: if WEP secured you would also have a 'key' argument with your password

Якщо ваша мережа захищена WPA / 2, ви /etc/network/interfacesповинні виглядати приблизно так:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/network/wpa_supplicant.conf -Dwext  

post-down sudo killall -q wpa_supplicant  

Тепер пояснення.

  • auto wlan0: Запускається wlan0інтерфейс автоматично.

  • iface wlan0 inet dhcp: Отримує нам IP-адресу через DHCP

  • pre-up: Вказує команди (и) для переходу до з'єднання.

  • post-down: Вказує команди (и), які потрібно використовувати для очищення після себе (якщо необхідно).

Джерела:


9

Я пропоную статичну IP-адресу, щоб ви могли легко запустити ssh та ftp на сервер. Також ви можете значно спростити свій файл:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet static
address 192.168.1.125  
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 192.168.1.1
wpa-ssid <your_network>
wpa-psk <your_key>

Будьте впевнені, що адреса знаходиться за межами діапазону, який використовується маршрутизатором для DHCP, і, звичайно, замініть свої відповідні дані тут.


1
Було б здорово, якби ви могли додати трохи більше пояснень для нової людини, тому їм не доведеться читати мою відповідь, перш ніж вони зрозуміють вашу.
Сет

Чи відповість ваша відповідь ТІЛЬКИ на дані файли інтерфейсів? Я маю на увазі, чи не потрібно, щоб wpa_supplicant працював у фоновому режимі і т. Д. І т. Д. І всі інші речі, як запропоновано у прийнятому відповіді Сет?
OverTheEdge

@OverTheEdge Це так. Спробуйте, а якщо ні, почніть нове запитання, і ми допоможемо.
chili555
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.