0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Musuk Pages

Wifi роутер на Raspberry Pi

Роутер должен не только раздавать интернет не только из Ethernet-порта, но и из одного WiFi-адаптера на другой. Это бывает очень полезно в путешествиях. Например, в гостинице легко оказаться в номере, куда местная точка доступа плохо добивает. А мощный WiFi-адаптер поймает даже слабый сигнал и раздаст его на все имеющиеся планшеты и телефоны. Это также может помочь сэкономить деньги там, где плата за интернет берётся с каждого устройства отдельно.

Получение информации о WiFi-сети

Для сканирования WiFi-сетей воспользуйтесь командой

. Она должна показать список доступных WiFi-точек, а также информацию о них. Нам нужно следующее:

  1. ESSID:»testing». Это название WiFi-сети.
  2. IE: IEEE 802.11i/WPA2 Version 1. Это метод аутентификации, используемый для этой сети. В данном случае это WPA2 — более новый и безопасный стандарт, пришедший на замену WPA1. Данная инструкция подходит для WPA1 и WPA2, но может не работать с WPA Enterprise. Для шестнадцатеричных паролей к WEP смотрите последний пример отсюда. Кроме того, вам понадобится пароль к этой WiFi-сети. У большинства домашних роутеров он напечатан на стикере, который, как правило, приклеен к их задней стороне. В данном случае ESSID (ssid) для сети — это testing, а пароль (psk) — это testingPassword.

Что мне нужно?

Для этого урока вам понадобятся следующие предметы:

  • 1 Raspberry Pi с установленным Raspbian (этот метод должен работать в других дистрибутивах, но мы используем Raspbian)
  • 1 подключение Ethernet к устройству Pi (необходимо для удаленной активации функции Wi-Fi)
  • 1 Wi-Fi Dongle (мы используем эту модель на всех наших устройствах Pi с большим успехом)

Если вы не используете эту модель ключа Wi-Fi, мы настоятельно рекомендуем изучить модель, которую вы собираетесь приобрести, чтобы убедиться, что она хорошо поддерживается. Для этого очень полезен раздел USB Wi-Fi-адаптер в RPi wiki.

В дополнение к вышеперечисленным пунктам вам необходимо уделить время, чтобы проверить конфигурацию узла Wi-Fi, к которому вы собираетесь подключить устройство Raspberry Pi: вам нужно будет указать SSID, пароль и тип шифрования/метод (например, узел использует WPA с шифрованием с общим ключом TKIP).

Установка прошивки на sd карту

Для дальнейших действий нам потребуются следующие программы:

Скачать прошивку openwrt самой новой версии для raspberry pi можно на официальном сайте openwrt: https://openwrt.org/toh/raspberry_pi_foundation/raspberry_pi

Разархивируем содержимое архива в любую удобную папку, используем для этого winrar или 7zip

Форматируем sd карту программой SD Memory Card Formatter в файловую систему fat32.

Программой Etcher выбираем наш .img образ из распакованного архива и записываем на флешку.

Теперь мы имеем флешку с прошивкой, вставляем ее в raspberry и переходим к этапу настройки нашего новоиспеченного роутера.

Определение IP адреса

Все настройки сети и удаленного доступа желательно выполнить до начала работы с проектом, пока у вас еще есть возможность подключить монитор. Первое, что нам понадобится для удаленного подключения по сети — это определить IP адрес Raspberry Pi. Именно по этому адресу вы сможете обращаться к своему микрокомпьютеру.

Откройте терминал на Raspberry Pi и введите команду:

В ответ вы увидте следующее сообщение

192.168.1.137 — это и есть ip адрес вашего Raspberry Pi. Дальше все подключения мы будем выполнять через него.

Подключение к Wi-Fi Raspberry Pi

1. Графический интерфейс

Проще всего подключиться к сети Wi-Fi через графический интерфейс. Для этого просто щёлкните по значку сети в верхнем правом углу экрана и выберите нужную сеть, затем введите для неё пароль:

Читать еще:  Как сделать выпадающий список или меню в Excel

Готово. Теперь подключение к Wi-Fi Raspberry Pi настроено.

2. raspi-config

Подключится к Wi-Fi через терминал ненамного сложнее. Здесь нам понадобится утилита raspi-config. Запустите её из главного меню и выберите Network Options:

Затем выберите Wi-Fi:

Дальше вам нужно ввести SSID вашей сети:

А потом пароль к ней:

Настройка завершена. Если проводного подключения нет, то устройство должно подключится к этой сети. Если вы не знаете, какой SSID (имя) у вашей Wi-Fi сети, смотрите следующий пункт.

3. Добавление Wi-Fi сети вручную

Сначала нужно посмотреть доступные Wi-Fi сети. Для этого используйте команду:

sudo iwlist wlan0 scan

Вам нужен параметр ESSID. Чтобы не хранить пароль к сети в открытом виде, воспользуемся утилитой wpa_passphrase для его шифрования:

Полученную конфигурацию сети нужно добавить в файл /etc/wpa_supplicant/wpa_supplicant.conf:

sudo vi /etc/wpa_supplicant/wpa_supplicant.conf

network= <
ssid=»UKrtelecom_367120″
#psk=»12345678″
psk=450c6c130a6308081a2c7cbc0af3653627b08c44478be55b0980e4bdf34ee74f
>

Далее попросить систему перечитать конфигурацию сетевых интерфейсов с помощью команды:

wpa_cli -i wlan0 reconfigure

Убедится, что всё прошло успешно, вы можете, выполнив:

Если после слов inet addr содержится IP-адрес, значит вы подключены к этой сети. Если же нет, проверьте правильность ввода ESSID и пароля. Также можно попытаться получить IP-адрес командой:

sudo dhclient wlan0

Если вы хотите пользоваться 5ГГц Wi-Fi, то кроме всего этого вам нужно указать вашу страну в wpa_supplicant.conf:

sudo vi /etc/wpa_supplicant.conf

Настройки Raspberry Pi Wi-Fi завершена. Теперь устройство будет автоматически подключаться к выбранной сети после загрузки.

Записки программиста

Беспроводные роутеры имеют несколько неприятных особенностей. Во-первых, они небезопасны, если только не разобраться с установкой OpenWrt. Во-вторых, со временем они перестают выпускаться, а значит, если ваш роутер сломается, вам придется разбираться с установкой OpenWrt на совершенно другой роутер. В-третьих, как правило, они довольно ограничены в ресурсах, а значит возложить на роутер какие-то дополнительные функции может быть проблематично. Между тем, абсолютно любой компьютер под управлением Linux может быть настроен в качестве полноценного Wi-Fi роутера, что решает проблемы безопасности, повторяемости и производительности. Для примера, рассмотрим создание беспроводного роутера на базе одноплатного компьютера Raspberry Pi.

Подготовительные работы

Я использовал уже не новую Raspberry Pi 2 Model B под управлением Raspbian Linux 9 (Stretch). В последних версиях этого дистрибутива SSH по умолчанию выключен. Чтобы его включить, вам понадобится USB-клавиатура и монитор с HDMI. Логинимся под пользователем pi с паролем raspberry, меняем пароль, включаем SSH:

Из сетевых интерфейсов данный одноплатник имеет только один Ethernet-разъем. Чтобы у устройства появился второй разъем, я использовал сетевую карту от компании Olimex на базе чипа AX88772B. Вы можете помнить это устройство по заметке Снифинг Ethernet-трафика с платой Throwing Star. Чтобы малина также умела и Wi-Fi, был использован донгл Panda Wireless PAU07 (a.k.a Panda N600) на базе чипа Ralink RT5572. Вообще, это довольно неплохой и популярный чип. На eBay вы найдете много других устройств на его базе. Примите во внимание, что не всякий донгл работает с Linux, а из тех, что работают, не всякий поддерживает работу в качестве точки доступа. Поэтому перед покупкой устройства будет не лишним загуглить, подходит ли оно для задачи.

Внешний вид роутера у меня получился следующим:

С точки зрения ОС картина такая:

  • eth0 — встроенный Ethernet, здесь у нас будет WAN;
  • eth1 — сетевая карта на базе AX88772B будет использована для LAN;
  • wlan0 — донгл Panda Wireless PAU07, здесь будет WLAN;

Само собой разумеется, все описанные далее шаги будут работать для любого компьютера под управлением Linux с подходящими сетевыми интерфейсами, не только Raspberry Pi. Это вполне может быть какой-то старый стационарный компьютер, нетбук, или другой одноплатник. Интересно, что существуют даже специальные одноплатники с Wi-Fi и двумя или более Ethernet-портами. Одним из таких одноплатников является Orange Pi R1. На AliExpress или eBay устройство можно купить где-то за 20$ с доставкой. Пользователь vova_ivanov из чата Hardware & Radio даже подсказал, что используемый в нем Realtek RTL8189 без проблем работает в роли точки доступа под Linux. А также предупредил, что Orange Pi R1 не умеет PoE и убивается им. В том же чате Xarlan подсказал, что больше подобных одноплатников можно найти на сайте board-db.org. В частности, довольно интересно выглядят Banana Pi BPI-R1, Banana Pi BPI-R2 и Banana Pi BPI-R64. Впрочем, эти устройства относятся уже к другому ценовому диапазону, а BPI-R64 на момент написания этих строк еще нигде не продавался.

Читать еще:  Тариф Хайвей на Билайн — как подключить и отключить опцию

Первоначальная настройка NAT

Открываем /etc/network/interfaces и пишем туда следующее:

auto lo
iface lo inet loopback

# Вариант А, без смены MAC:
# iface eth0 inet dhcp

# Вариант Б, со сменой MAC:
iface eth0 inet dhcp
hwaddress ether 11:22:33:44:55:66

auto eth1
iface eth1 inet static
address 10.128.10.1
network 10.128.10.0
netmask 255.255.255.0
broadcast 10.128.10.255

auto wlan0
iface wlan0 inet static
address 10.128.11.1
network 10.128.11.0
netmask 255.255.255.0
broadcast 10.128.11.255

Вариант со сменой MAC нужен исключительно в случае, если ваш интернет-провайдер ограничивает доступ по MAC-адресам, как это зачем-то делает мой. Если ваш ISP не страдает такой фигней, смело используйте вариант А.

Поскольку мы подправили /etc/network/interfaces, демон dhcpcd теперь будет отказываться стартовать. Для порядку отключим его, чтобы система при загрузке не ругалась ошибками:

Следующим шагом ставим dnsmasq, который будет играть роль DHCP-сервера и кэширующего DNS-сервера. Если нужно, в нем также есть функция TFTP-сервера. Такой сервер, к примеру, бывает нужен для установки OpenWrt на некоторые роутеры.

# Можно явно указать апстрим DNS-сервера
# Это может быть особенно полезно, если вы
# хотите заворачивать весь трафик в VPN
server=8.8.8.8
server=8.8.4.4

# Listen only given interfaces
interface=lo
interface=eth1
interface=wlan0
bind-interfaces

# DNS cache size
cache-size=15000

# IP ranges
dhcp-range=eth1,10.128.10.50,10.128.10.250
dhcp-range=wlan0,10.128.11.50,10.128.11.250

# Default gateways
dhcp-option=eth1,3,10.128.10.1
dhcp-option=wlan0,3,10.128.11.1

# DNS servers
dhcp-option=eth1,6,10.128.10.1
dhcp-option=wlan0,6,10.128.11.1

Проверяем работу DNS-сервера:

DHCP и DNS настроены, осталось настроить NAT. Делается это при помощи iptables:

# enable IP-forwarding
sudo sh -c ‘echo 1 > /proc/sys/net/ipv4/ip_forward’

# for LAN
sudo iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o eth1 -m conntrack
—ctstate ESTABLISHED,RELATED -j ACCEPT

# for WLAN
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -m conntrack
—ctstate ESTABLISHED,RELATED -j ACCEPT

# allow traffic between LAN and WLAN
sudo iptables -A FORWARD -i wlan0 -o eth1 -j ACCEPT
sudo iptables -A FORWARD -i eth1 -o wlan0 -j ACCEPT

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

Подключаем ноутбук ко второму Ethernet-порту малины. Проверяем, что нам выдали IP-адрес, и что имеется доступ в интернет. Если все работает, сохраняем сделанные изменения, чтобы они не потерялись после перезагрузки.

Fun fact! Нравится статья? Поддержи автора, чтобы он мог писать больше полезных статей!

Настройте Bluetooth на Raspberry Pi 3

Чтобы настроить Bluetooth, вам нужно начать с команд обновления и обновления, как описано выше. Далее установите пакет Bluetooth:

Если вы предпочитаете, вы можете установить bluez, который устанавливает bluetooth-pi вместе с другими инструментами.

На этом этапе все установлено для активации Bluetooth из командной строки

Чтобы начать настройку Bluetooth вашего Pi, запустите

Множество вариантов доступны с этим. Типа помогите увидеть их.

Чтобы Bluetooth работал, он должен быть включен, обнаружен и способен обнаруживать устройства.

Для этого мы используем три команды:

На этом экране вы можете увидеть, что Raspberry Pi обнаружил мой телефон с Ubuntu. Соединение можно установить, введя connect, а затем MAC-адрес. Вам не нужно подключаться, хотя — вы можете использовать Bluetooth-сканирование в качестве обнаружения присутствия для систем умного дома DIY

Подключиться к Bluetooth в графическом интерфейсе

Если вы предпочитаете настраивать Bluetooth-соединения Raspberry Pi в X, вы можете, если blueman программное обеспечение установлено.

Вам нужно перезапустить Pi:

Обратите внимание, как теперь мы можем быть более словесными с Пи; ранее эта команда была бы sudo shutdown -r (которая все еще работает).

После перезагрузки Pi и загрузки среды рабочего стола X откройте Меню> Настройки> Диспетчер Bluetooth. Будут перечислены ближайшие обнаруживаемые устройства, поэтому щелкните правой кнопкой мыши и выберите соединять начать процесс сопряжения / доверия.

Читать еще:  Статический IP на Raspberry PI

Bluetooth включен и работает!

Как пользоваться SSH в Raspberry Pi

В данной статье вы узнаете, как включать SSH в Raspberry Pi и наладить соединение с устройством на Raspberry Pi.

Из всего, что вы можете сделать с Raspberry Pi, самое популярное — использование его в качестве сервера в домашней сети. Небольшие размеры и низкое энергопотребление делают его идеальным устройством для работы с серверами, не требующим высокой мощности.

В таком случае вы должны уметь выполнять команды на Raspberry Pi без необходимости подключать дисплей, клавиатуру, мышь и каждый раз перемещаться к месту нахождения Raspberry Pi.

Этого можно достичь, войдя в Raspberry Pi через SSH (Secure Shell) с любого другого компьютера, ноутбука или даже телефона. Позвольте мне показать вам как.

Как настроить SSH в Raspberry Pi

Я предполагаю, что вы используете Raspbian на своем Pi и успешно подключились к сети через Ethernet или WiFi. Важно, чтобы ваш Raspberry Pi был подключен к сети, иначе вы не сможете подключиться к нему через SSH (извините за очевидное).

Шаг 1: Включить SSH на Raspberry Pi

SSH по умолчанию отключен в Raspberry Pi, поэтому вам придется включить его при включении Pi после новой установки Raspbian.

Сначала перейдите в окно конфигурации Raspberry Pi, перемещаясь по меню.

Меню Raspberry Pi, Конфигурация Raspberry Pi

Теперь перейдите во вкладку интерфейсы, включите SSH и перезапустите Pi.

Включить SSH на Raspberry Pi

Вы также можете включить SSH через терминал. Просто введите

и перейдите в Дополнительные параметры, чтобы включить SSH.

Шаг 2. Найти IP-адрес Raspberry Pi

В большинстве случаев вашему Raspberry Pi будет присвоен локальный IP-адрес, который выглядит как 192.168.xx или 10.xxx . Вы можете использовать различные команды Linux, чтобы найти IP-адрес.

Я использую старую добрую команду ifconfig.

Конфигурация сети Raspberry Pi

Эта команда показывает весь список активных сетевых адаптеров и их конфигурацию. Первая запись (eth0) показывает IP-адрес как 192.168.2.105, который действительно таким и является. Я использовал Ethernet для подключения моего Raspberry Pi к сети, поэтому он находится под eth0. Если вы используете WiFi, проверьте запись под названием «wlan0«.

Вы также можете узнать IP-адрес другими способами, например, проверить список сетевых устройств, подключенных к вашему роутеру/модему.

Шаг 3. SSH в ваш Raspberry Pi

Теперь, когда вы включили SSH и выяснили свой IP-адрес, можно подключаться по SSH к Raspberry Pi с любого другого компьютера. Вам также понадобится имя пользователя и пароль для Raspberry Pi.

Имя пользователя и пароль по умолчанию:

  • Имя пользователя: pi
  • Пароль: raspberry

Если вы изменяли пароль, используйте его вместо вышеуказанного. В идеале вы должны изменить пароль по умолчанию. Не так давно вредоносное ПО заражало тысячи устройств Raspberry Pi, которые использовали имя пользователя и пароль по умолчанию.

Откройте терминал (в Mac и Linux) на компьютере, с которого вы хотите подключиться по SSH к вашему Pi, и введите команду ниже. В Windows вы можете использовать SSH-клиент, например, Putty. Здесь используйте IP-адрес, который вы узнали на предыдущем шаге.

Примечание: Убедитесь, что компьютер, который используется для подключения по SSH и ваш Raspberry Pi подключены к одной сети.

SSH через терминал

При первом подключении вы увидите предупреждение, введите yes и нажмите Enter.

Введите пароль (по умолчанию «raspberry»)

Теперь введите пароль и нажмите Enter.

Успешный вход через SSH

При успешном входе в систему вам будет представлен терминал вашего Raspberry Pi. Теперь вы можете выполнять любые команды на вашем Raspberry Pi через этот терминал удаленно (в пределах текущей сети) без физического доступа к вашему Raspberry Pi.

Кроме того, вы также можете настроить SSH-ключи, чтобы вам не приходилось вводить пароль каждый раз, когда вы входите через SSH, но это совсем другая тема.

Я надеюсь, что вы смогли использовать SSH в Raspberry Pi после изучения этого урока. Дайте мне знать, как вы планируете использовать свой Raspberry Pi в комментариях ниже!

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector