Сегодня мы будем использовать мощь нового Raspberry Pi 3 В+ для создания файлового сервера и блокировщика рекламы в одном компактном устройстве!
Чтобы отметить релиз нового Raspberry Pi 3 В+, мы будем использовать его для создания нашего собственного сервера Samba, чтобы хранить файлы и медиа для доступа через нашу домашнюю сеть. Затем тот же Pi мы используем для блокировки рекламы и улучшения навигации.
РЕКОМЕНДУЕМ:
Сборка образа Raspbian
Файловый сервер Samba
Давайте обеспечим себе последнюю версию Raspbian. Скачайте ее с сайта Raspberry Pi и с помощью выбранного вами инструмента запишите образ на пустую карту microSD. По завершении извлеките карту и поместите ее в свой Pi, затем подключите клавиатуру, мышь, экран, Ethernet и, наконец, питание. Ваш Pi загрузится, и поскольку это первая загрузка, расширит файловую систему, чтобы полностью использовать место на вашей SD-карте.
Вскоре вы увидите рабочий стол Raspbian, так что давайте обновим наш Pi. Откройте терминал; иконка находится в верхней левой части экрана. В терминале построчно введите написанное ниже и нажмите Enter в конце каждой строки:
1 2 |
$ sudo apt update $ sudo apt upgrade -y |
Чтобы мы всегда могли найти свой Pi в сети, исправим его IP-адрес. Кликните правой кнопкой на иконке сети и выберите Wireless and Wired Network Settings [Настройки проводной и беспроводной сети]. В диалоговом окне Network Preferences [Сетевые настройки] настройте интерфейс eth0. Отметьте Automatically configure empty options [Автоматическая настройка пустых опций] и смените адрес IPv4 в соответствии с вашей сетью. Например, наша сеть использует 192.168.0.ххх, так что мы выбрали IP-адрес как 192.168.1.100. Нажмите Apply [Принять], а затем Close [Закрыть]. После чего перезагрузите Pi, чтобы убедиться, что IP-адрес изменился; для этого откройте терминал и введите
1 |
$ hostname -I |
Давайте оставим терминал открытым и установим пакет Samba. Введите следующее и нажмите Enter:
1 |
S sudo apt install samba samba-common-bin |
Когда всё установится, вставьте USB-устройство для хранения, которое мы будем использовать в качестве общей памяти. Raspbian автоматически смонтирует диск для нас, но нам необходимо знать, где он будет смонтирован. В терминале введите команду:
1 2 |
$ mount I grep /dev/sd |
Теперь (если вставлен только один USB-носитель) мы должны увидеть устройство с названием /dev/sda1. Это наш USB-носитель, так что запишите у себя устройство и где оно смонтировано — обычно в /media/pi/. Запомните полный путь к диску.
Итак, у нас есть устройство — наш USB-диск, и на нем есть директория, к которой мы хотим сделать общий доступ через Samba. Давайте сообщим Samba, где найти диск. В терминале введите следующее, чтобы отредактировать файл smb.conf:
1 |
$ sudo nano /etc/samba/smb.conf |
Когда файл загрузится, перейдите в нижнюю часть файла и воссоздайте следующие строки;
1 2 3 4 5 6 7 8 9 10 |
[share] Comment = Pi shared folder Path = /media/pi/<NAME OF DRIVE> Browseable = yes Writeable = Yes only guest = no create mask = 0777 directory mask = 0777 Publics yes Guest ok = yes |
Чтобы сохранить файл и выйти из редактора, нажмите Ctrl+0. затем Enter, а затем Ctrl+X. Теперь давайте убедимся, что пользователь по умолчанию, pi, добавлен в качестве пользователя Samba. В терминале введите:
1 |
$ sudo smbpasswd -a pi |
Далее, чтобы убедиться, что наша настройка Samba верна и готова к использованию, надо велеть Samba перезагрузиться, так что введите в терминале
1 |
$ sudo /etc/init.d/samba restart |
По завершении установки перейдем к нашему компьютеру Windows или Linux и проверим, что мы можем найти и использовать сервер Samba.
В Ubuntu можно использовать файловый менеджер (Nautilus) для подключения через ярлык Network. Имя нашего сервера RASPBERRYPI должно быть видно. Нажмите “share” и, когда будет предложено, введите имя пользователя “pi” и пароль “raspberry” для доступа к серверу. Данный процесс выглядит похожим образом для устройств Windows 10, поскольку ярлык Network также можно найти в приложении File Manager [Файловый менеджер]. Пользователи Android также могут скачать приложение Samba из магазина приложений и получить доступ к файлам, прямо как десктоп-коллеги.
Итак, теперь у нас есть центральный пункт, где мы можем сохранять наши файлы и делиться ими через сеть — удобно для большого объема медиа, потребляемого людными домами!
Настройка Pi Hole
Все мы не любим рекламу на web-страницах, но установка блокировщика рекламы на каждое устройство весьма затратна по времени. Не создать ли одно устройство, которое отфильтрует всё это для нас? Pi-Hole — как раз такое устройство. Работая на нашем Raspberry Pi, Pi-Hole заменяет наш стандартный DNS-сервер (обычно — нашего ISP, если мы не поменяем это) на свой собственный, который отфильтровывает рекламу. И, кстати, его легко установить, так что давайте приступим.
Откройте Terminal и введите следующую команду, чтобы скачать и запустить скрипт установки:
1 |
$ curl -sSL https://install.pi-hole.net I bash |
Обратите внимание, что установка этим методом при использовании с неизвестными источниками несет определенный риск. В случае сомнений скачайте исходный код и проверьте его перед использованием.
Установка Pi-Hole — автоматизированный процесс, с минимальным количеством ввода. Но периодически он будет задавать вам вопросы. В один из таких моментов вас попросят задать статический IP-адрес — этого не нужно, потому что у нас уже есть статический IP-адрес, созданный для сервера Samba (если вы не настроили сервер Samba, можете задать статический IP-адрес с помощью Pi-Hole, но запишите себе этот IP-адрес).
Нас также спросят, кто является нашим вышележащим DNS-провайдером. Можно выбрать из списка: популярные варианты — Google или OpenDNS. Следуйте оставшимся этапам установки, и когда вас попросят установить web-админ, выберите On. Спустя несколько минут установка завершится, и понадобится выключить наш Pi и удалить все соединения, кроме Ethernet и кабеля питания.
Включите Pi и подождите, пока он загрузится — это занимает секунд 30. На вашем компьютере Linux / Windows перейдите в настройки сети. В Ubuntu можно нажать правой кнопкой по иконке Network [Сеть] и выбрать Edit Connections [Редактировать соединения], нажать на интерфейс, который вы хотите отредактировать (Ethernet или Wi-Fi) и затем нажать на кнопку Edit [Редактировать]. В IPv4 Settings измените DNS-сервер. чтобы он соответствовал IP-адресу Raspberry Pi. Нажмите Save [Сохранить]. Close [Закрыть], а потом нажмите на иконку Network и на Disconnect [Отключиться] для интерфейса, который вы только что настроили. Затем переподключитесь, чтобы заставить интерфейс подключиться с помощью Pi-Hole DNS сервера.
Готово! Отныне в нашей сети есть прозрачный блокировщик рекламы. Он работает со всеми устройствами, включая Android, где можно указать статический IP-адрес и DNS-сервер посредством долгого нажатия на имя Wi-Fi АР. выбора Modify Network [Изменить сеть]. Advanced Options [Продвинутые опции], и ввода желаемого статического IP-адреса и DNS-сервера (наше устройство Pi-Hole).
Если вы любитель статистики, то у Pi-Hole она есть! Открыв в браузере IP-адрес сервера, а затем /admin, вы увидите интерфейс типа «приборной доски», где хранятся все записи о заблокированных запросах вашего устройства. Войдя с помощью пароля. предоставленного во время установки, вы увидите еще больше подробностей.
Итак, вот оно — два сервиса, использующих мощь новой расширенной работы в сети Raspberry Pi 3 В+, чтобы освободить наши сессии браузера от рекламы, а наши файлы — в сохранности в удобном месте.
РЕКОМЕНДУЕМ:
Linux-сервер на Omega 2
Альтернативные методы
Samba прост в настройке и работает с разными операционными системами. Samba также может использоваться для выдачи распределенного доступа к принтерам по сети, через сервис CUPS, который очень легко установить.
NFS также предлагает преимущества пользователям Linux. Главным из них является то, что директория Home пользователя может обслуживаться по сети через NFS — удобно для тонких клиентских устройств: а устройства хранения информации, например, оптические диски, могут быть доступны, как если бы пользователь сидел за этим удаленным компьютером. Установка NFS проста, и имеется руководство — на HelpUbuntu — по работе в Raspbian.
Если все эти разговоры о файловом сервере пробудили в вас интерес, советуем использовать Diet Pi. Он поставляется с автоматическим скриптом установки для различных файловых серверов. Pi-Hole и других серверов для домашней автоматизации, каталогизации медиа и торрентов. Всё это способен обеспечить скромный Raspberry Pi — согласитесь, весьма впечатляет.