У вас в руках Raspberry pi, система уже установлена. Пора заглянуть внутрь. Управлять малиной удобнее всего через сеть. Совсем немного упорства и вы завладеете ее сетевыми интерфейсами!
Raspberry pi, как и большинство удобных одноплатников, сетевое устройство. Так давай те же пользоваться этим по максимуму. Можно, конечно, подключиться и напрямую, используя клавиатуру и HDMI монитор. Но зачем? Мы же поступили рационально и не стали ставить графическую OS!
Чтож, начнем уже гонять наши биты, байты, мегабайты…
Система должна быть установлена (тут можно посмотреть как), карта памяти вставлена. Понадобится доступ к вашему домашнему роутеру и Ethernet кабель.
Сначала соединяем кабелем малину и любой из свободных LAN портов вашего роутера. Включаем ваш одноплатник. Теперь необходимо зайти в админку роутера и найти Raspberry в подключенных клиентах локальной сети. По умолчанию эзернет интерфейс малины настроен на автоматическое получение адреса. Если вы хотите оставить такую конфигурацию для него, тогда просто зарезервируйте на роутере полученный сейчас адрес, чтобы в дальнейшем raspberry не пришлось искать заново.
Запоминаем IP адрес малины. Если вы под Windows, качаем ssh клиент putty. Нужно же как-то по ssh соединяться.
Дефолтные данные для авторизации:
логин: pi
пароль: raspberry
Заходим.
1 2 3 |
ssh pi@xx.xx.xx.xx где xx.xx.xx.xx - ip вашей малины. |
Первое, что я рекомендую — сменить пароль:)
1 2 3 4 5 6 |
pi@raspberry:~ $ passwd Смена пароля для pi. (текущий) пароль UNIX: Введите новый пароль UNIX: Повторите ввод нового пароля UNIX: Пароль изменен |
Настройка сетевой карты Ethernet
Настроим проводное подключение нашей малины: пропишем в файле конфигурации статический, удобный для нас IP.
Переходим в суперпользователя (здесь и далее все с рутовскими привилегиями).
1 |
pi@raspberry:~ $ sudo -i |
Далее закомментируем строку с DHCP и пропишем все параметры статики:
1 |
root@raspberry:~# vim /etc/network/interfaces |
Содержание файла:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# interfaces(5) file used by ifup(8) and ifdown(8) # Please note that this file is written to be used with dhcpcd # For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf' # Include files from /etc/network/interfaces.d: source-directory /etc/network/interfaces.d auto lo iface lo inet loopback #iface eth0 inet dhcp iface eth0 inet static address 192.168.100.100 #айпишник малины в вашей сети net mask 255.255.255.0 #маска вашей сети broadcast 192.168.100.255 #широковещетельный адрес сети gateway 192.168.100.1 #шлюз или адрес вашего роутера dns-nameservers 192.168.100.1 8.8.8.8 #DNS auto eth0 allow-hotplug wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf |
Сохраняемся и выходим. Забыл сказать, если вы не умеете пользоваться Vim, не печальтесь. Однажды вы научитесь 😉 Vim — очень полезный и крутой редактор!
Также очень советую не ошибаться в синтаксисе написания файла.
Чтобы применить настройки, которые мы записали в файл конфигурации сети, нам необходимо или перегрузиться, или перезапустить сетевой интерфейс, который мы переконфигурировали.
Мы пойдем вторым путем. Тонкость в том, что мы хотим отключить и поднять обратно интерфейс, через который мы подключены. Причем после поднятия адрес сменится на ваш прописанный.
Ок. Это же линукс — тут можно все 🙂
Исполняем сразу 2 команды на отключение и включение интерфейса:
1 |
root@raspberry:~# ifdown eth0 && ifup eth0 |
Если адрес сменился, вы отвалитесь от устройства, но ничего страшного нет. Подключаемся по ssh к новому, прописанному вами, адресу. Удобство данного способа в том, что не нужно перезагружать ваш сервер. Если перезагрузка для вас не критична, можно просто воспользоваться командой sudo reboot.
Готово. Сетевая карточка настроена на статику. Пользуемся.
Настройка wifi
Теперь можем заняться вайфаем. Согласитесь, удобно использовать девайс, не используя кабели.
А если прописать все необходимые настройки WIFI из разных мест (работа, дом и тд), то вообще цены этому нет!
Я рекомендую адресацию через провод временно сделать отличающейся от адресации wifi для избежания путаницы. Если вы были внимательны, то в файле конфигурации сети /etc/network/interfaces увидели аж 3 интерфейса:
lo, eth0 и wlan0.
В малине интерфейс вайфая обычно именуется wlan0.
Все в том же файле у этого интерфейса есть строчка конфигурации «wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf«.
Вот /etc/wpa_supplicant/wpa_supplicant.conf нам и нужно отредактировать, чтобы вписать данные о своей беспроводной сети — SSID и пароль.
1 |
root@raspberry:~# vim /etc/wpa_supplicant/wpa_supplicant.conf |
Допишем в конфиг данные о своей сети. В примере сразу укажем как подключить raspberry pi к двум точкам доступа:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
country=RU ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SSID моей точки доступа" scan_ssid=1 psk="мой_password" } #ниже блок по необходимости. #Таких блоков может быть целый вагон, #если вам нужно подключить много сетей network={ ssid="SSID моей точки доступа на работе" scan_ssid=1 psk="мой_password_от_рабочего_вф" } |
Сохраняемся, выходим. Осталось только поднять интерфейс вайфая. Снова 2 варианта: перезагружаемся или делаем вот так:
1 |
root@raspberry:~# ifup wlan0 |
Проверяем, поднялся ли вайвай:
1 |
root@raspberry:~# ifconfig |
Мы должны увидеть что-то похожее:
1 2 3 4 5 6 7 8 9 |
wlan0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX inet addr:192.168.100.50 Bcast:192.168.100.255 Mask:255.255.255.0 inet6 addr: .... Scope:Global inet6 addr: .... Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:20167 errors:0 dropped:21 overruns:0 frame:0 TX packets:3692 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2539261 (2.4 MiB) TX bytes:677462 (661.5 KiB) |
Отлично! Получен адрес 192.168.100.50. Адресацию проводной сети можно вернуть на место. Про кабель можно забыть.
Все? Ну-у… Можно и так оставить. Но я бы рассмотрел еще 2 возможных варианта:
- Хочу вайвай по статике, чтоб адрес не искать каждый раз.
- Хочу не писать пароль в открытом виде, секъюрно хочу!
Статический вайфай.
Снова заходим в конфигурационный файл сетевых интерфейсов и правим wlan0
1 |
root@raspberry:~ # vim /etc/network/interfaces |
Содержание файла:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# interfaces(5) file used by ifup(8) and ifdown(8) # Please note that this file is written to be used with dhcpcd # For static IP, consult /etc/dhcpcd.conf and 'man dhcpcd.conf' # Include files from /etc/network/interfaces.d: source-directory /etc/network/interfaces.d auto lo iface lo inet loopback #iface eth0 inet dhcp #auto eth0 iface eth0 inet static address 192.168.200.1 netmask 255.255.255.0 auto eth0 #allow-hotplug wlan0 #iface wlan0 inet dhcp # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf auto wlan0 iface wlan0 inet static address 192.168.200.200 netmask 255.255.255.0 gateway 192.168.200.1 wpa-ap-scan 1 wpa-essid мой_SSID wpa-psk пароль_SSID |
Перезапускаем интерфейс:
1 |
root@raspberry:~# ifdown wlan0 && ifup wlan0 |
Вариант со статикой по вайфаю готов. Пользуемся.
Пароидально-секьюрный вариант.
Доступ на чтение и изменение файла конфигураций сети оставляем только для root.
Проверяем:
1 2 3 4 5 |
root@raspberry:~ # ls -an /etc/network/interfaces -rw-r--r-- 1 0 0 617 янв 27 12:13 /etc/network/interfaces root@raspberry:~ # ls -an /etc/wpa_supplicant/wpa_supplicant.conf -rw------- 1 0 0 525 янв 27 15:01 /etc/wpa_supplicant/wpa_supplicant.conf |
Как видите, в первом случае, если мы укажем пароль в открытом виде, прочесть его смогут почти все.
Меняем права:
1 |
root@raspberry:~ # chmod 600 /etc/network/interfaces |
Генерируем 256 битный pre-shared WPA ключ, а заодно и минимально необходимую конфигурацию:
1 2 3 4 5 6 |
root@raspberry:~ # wpa_passphrase "ssid" "ssid_password" network={ ssid="мой-SSID" #psk="пароль в открытом виде" psk=0XXXXX1caeXXXXf12d76XXXXX5e78181add0XXXX675deeefXXXXXcab4 } |
Полученный вывод можно использовать как и в примере с конфигурацией через /etc/wpa_supplicant/wpa_supplicant.conf со множественными точками доступа, так и для последнего варианта с указанием статического IP для конкретного SSID. Только вот закомментированный пароль в открытом виде лучше удалить из всех файлов.
Вот часть конфига /etc/network/interfaces, отвечающая за интерфейс wlan0:
1 2 3 4 5 6 7 8 |
auto wlan0 iface wlan0 inet static address 192.168.200.200 netmask 255.255.255.0 gateway 192.168.200.1 wpa-ap-scan 1 wpa-essid мой_SSID wpa-psk 0XXXXX1caeXXXXf12d76XXXXX5e78181add0XXXX675deeefXXXXXcab4 |
Вот, собственно, и все основные варианты конфигураций для работы сервера как клиента сети. Не забываем перезапустить сеть после всех манипуляций или перезагрузиться.
1 |
root@raspberry:~# ifdown wlan0 && ifup wlan0 |
Итог.
Рассмотрели основные варианты подключения интерфейсов малины в сети. Конечно, еще существует множество других случаев, где настройки будут отличаться, но сегодня статья не об этом.
Описанных выше примеров хватит на львиную долю типовых задач. Какой именно выбрать способ — решать вам, повелители сетевых интерфейсов 😉
Кому понравилось — добавляем в закладки или подписываемся на блог.
Всем добра, силы и упорства.
Добрый день.
Подскажите пожалуйста, как настроить на Raspberry pi 2 model B, работу через proxy-сервер?
Пробовал такие конструкции:
В /etc/environment прописывал следующее:
http_proxy=»http://192.168.40.128:808/»
https_proxy=»https://192.168.40.128:808/»
Где, 192.168.40.128 — собственно сам ip proxy
808 — порт
Так же пробовал прописывать эти строчки в /etc/wgetrc.
Тоже ничего не выходит. На самом прокси-сервере, все необходимое прописано.
sudo -i
cd /etc/apt/apt.conf.d
sudo nano 10proxy
содержание файла без аунтификации:
Acquire::http::Proxy «http://yourproxyaddress:proxyport/»;
С аунтификацией:
Acquire::http::Proxy «http://username:password@yourproxyaddress:proxyport/»;
reboot
проверяете
sudo apt-get update
После sudo apt-get update что-то грузится, видно по терминалу.
Но, Chronium Web Browser (стандартный браузер, который идет в сборке (Raspbian Jessie) так и не заработал.
В общем странно. И не пингуется ip яндекса.
первое. ping — это утилита использующая не веб протоколы (http/https) для начала, а прокси вы указываете как раз для веб.
второе. я говорил про консольный вариант. консольно можно проверить через curl, wget и тд
третье. не проверял, но похоже в вашем браузере как и в любом другом необходимо указать так же проксю
Спасибо, а я почему-то подумал, что chromium должен автоматом подхватывать ip прокси-сервера из файла настроек.
Видимо ошибался)
Прописал в терминале вот что:
chromium-browser —proxy-server=192.168.40.128:808
Enter
Открылся браузер и начал открывать сайты.
А без терминала, браузер так и не открывает сайты))
Наверное должен быть какой-то конфигурационный файл в этом chromium-е, для того чтобы прописать туда все эти настройки.
Еще раз спасибо) Помогли очень.
На своей RPi 3 просто тупо поменял IP-шник и интернет заработал. Причем работает не только серфинг в браузере Chromium, но и все обновления и видео любое с YouTube. Вобщем, функционал полный. Малина подключена через обычный свитч к компу с Win 7, который с интернетом соединен посредством USB-модема МТС. Ни в каких файлах конфигурации ничего не прописывал…