Оглавление:
Видео: Красная коробка: 3 шага (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Создайте свой собственный надежный облачный сервер
Шаг 1. Аппаратное обеспечение
- Возьмите металлическую коробку и раскрасьте ее в свой любимый цвет. (Я использовал старый контроллер памяти)
- Пластина Hobbycolor, выдерживающая как минимум 75 C
- Малина пи 3
- Карта Micro SD (я использовал 16 ГБ, но вы можете использовать любой размер> = 4 ГБ)
- USB-концентратор с разъемом для внешнего питания
- Переходники с usb на sata
- Дисковый привод
- Сетевой кабель + сетевая розетка
- Провода + входной разъем питания
- Болты восстановлены из последовательного порта старого компьютера или порта vga
- USB-порты восстановлены со старого компьютера
Raspberry pi крепится к пластине hobbycolor болтами от порта vga.
Диски крепятся штатными болтами сзади.
Шаг 2: Подключение
Разъем питания подключается к обоим восстановленным портам USB
Первый usb (за всеми проводами спереди слева) используется в качестве источника питания, только красный и черный провода используются и подключаются к разъему ввода питания. Первый USB-кабель в этом порту обеспечивает питание для Pi, второй USB-кабель обеспечивает питание USB-концентратора.
Второй usb (тот, что сзади - полезен для подключения дополнительных устройств) имеет красный и черный, подключенные непосредственно к входу питания, в то время как белый и зеленый каждого порта подключены к USB-кабелю, восстановленному от какой-то старой мыши (белые напрямую подключен к пи)
Кабель LAN соединяет настенную розетку внешней сети с портом LAN raspberry pi
Диски подключаются через usb к адаптерам sata к USB-концентратору с внешним питанием (диски большей емкости требуют большей мощности, и мы не хотим, чтобы пи был нестабильным), который подключается к одному из портов pi
Шаг 3: Программное обеспечение
Установите операционную систему
Для большей безопасности используйте Centos 7 для защиты. (https://mirror.centos.org/altarch/7/isos/armhfp/); протестировано: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, руководство здесь:
Поместите изображение на карту micro sd с вашего компьютера Linux (для проверки Windows:
xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd of = $ / path / to / sd / card status = progress bs = 4M
пароль root: centos
используйте nmtui для настройки сети и установки статического IP-адреса
Настройте диски
Создайте по одному разделу на каждом диске (лучше быть немного меньше всего диска - скажем, на 1 ГБ меньше - разные диски одинаковой емкости - например: wd vs toshiba - имеют разные размеры:)). Таким образом, вы будете в безопасности, если вам потребуется заменить один из дисков.
Создайте на своих дисках файловую систему btrfs raid 1
mkfs.btrfs -d raid1 -m raid1 / dev / sda1 / dev / sdb1
метка файловой системы btrfs / dev / sda1 rpi3
Смонтируйте файловую систему с помощью autofs (предотвращает загрузку pi, если с дисками что-то пойдет не так)
yum install -y autofs
добавьте перетекание в /etc/auto.master:
/ - /etc/auto.ext-usb --timeout = 300
Создайте /etc/auto.ext-usb с содержимым:
/ srv -fstype = auto, compress = lzo, noatime: / dev / disk / by-label / rpi3
перезапуск службы autofs
ls / srv, df -h, подтвердите, что он смонтирован
Установить owncloud
Предварительные требования (apache, php, mariadb):
yum install -y httpd; yum install -y mod_ssl; yum install -y mariadb-server; yum install -y php *
Установите owncloud 9, который совместим с php54, который поставляется с centos7, хорошим руководством для этого:
download.owncloud.org/download/repositories…
После запуска owncloud переместите каталог данных из расположения по умолчанию на новые диски (/ srv).
служба httpd stop
отредактируйте /var/www/html/owncloud/config/config.php и внесите это изменение:
'datadirectory' => '/ srv / owncloud / data', mkdir / srv / owncloud; mv / var / www / html / owncloud / data / srv / owncloud && chown -R apache: apache / srv / owncloud / data /
служба httpd start
Вы можете установить настольный клиент owncloud на linux / windows, а для телефонов я использую folderync
-
Включение и настройка SELinux
(рабочая версия: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-target-3.13.1-166.el7.5.noarch)
убедитесь, что вы не обновляете эту политику (в /etc/yum.conf append: exclude = selinux-policy *)
restorecon -Rv /
/boot/cmdline.txt должен содержать: selinux = 1 security = selinux enforcing = 1.
/ etc / sysconfig / selinux должен содержать: SELINUX = enforcing и SELINUXTYPE = target.
перезагружать
После перезагрузки выполните следующие настройки:
yum install -y policycoreutils-python
semange fcontext -a -t httpd_sys_rw_content_t /srv/owncloud(/.*)?
setsebool -P httpd_builtin_scripting = 1; setsebool -P httpd_can_network_connect = 1; setsebool -P httpd_enable_cgi = 1; setsebool -P httpd_graceful_shutdown = 1
если у вас возникнут какие-либо проблемы, вставьте SD-карту в другой компьютер и измените cmdline.txt, чтобы иметь: selinux = 0
Защитите свою коробку
Изменить пароль root
Создайте себе пользователя (adduser -s / bin / bash "me") и установите надежный пароль (passwd "me")
настроить sshd для прослушивания другого порта и НЕ разрешать вход в систему с правами root
В / etc / ssh / sshd_config установите порт
(допустим 2222), PermitRootLogin нет
Сообщите SELinux и firewalld о своих намерениях:
порт semanage -a -t ssh_port_t -p tcp 2222
service firewalld start && systemctl enable firewalld.service
брандмауэр-cmd --permanent --add-порт 2222 / tcp
брандмауэр-cmd --reload
перезапуск службы sshd
Сделайте это общедоступным
На вашем интернет-маршрутизаторе перенаправьте эти порты на ваш статический IP-адрес, установленный на первом шаге: 80, 443, 2222.
Настройте DDNS на вашем маршрутизаторе, чтобы вы могли получить доступ к своему устройству из любого места.
Тонкая настройка
Установите apache на 5 процедур, так как памяти мало:
/etc/httpd/conf.modules.d/00-mpm.conf
LoadModule модули mpm_prefork_module / mod_mpm_prefork.so
StartServers 5
MinSpareServers 5
MaxSpareServers 5
ServerLimit 5
MaxClients 5
MaxRequestsPerChild 3000
перезапуск службы
Настройте cron для еженедельной очистки дисков и создания снимков каждую ночь (в / etc / crontab)
01 02 * * 6 root btrfs scrub start / srv01 01 * * * root / usr / sbin / btrfs subvolume snapshot -r / srv / srv / @ $ (printf "\% s" $ (/ bin / date + \% d \% b \% Y - \% k - \% M))
время от времени проверяйте объем с помощью: btrfs dev stats / srv
Используйте сторожевой таймер для автоматического сброса, если он перестает отвечать (у Raspberry Pi3 есть аппаратный):
yum install -y сторожевой таймер
/etc/watchdog.conf
сторожевое устройство = / dev / watchdogwatchdog-timeout = 15
interval = 1logtick = 1 log-dir = / var / log / watchdog
realtime = yespriority = 1
запуск сторожевого таймера службы && systemctl enable watchdog.service
Рекомендуемые:
Бесполезная коробка: 3 шага (с изображениями)
Useless Box: Project: Useless Box Дата: март 2020 г. - апрель 2020 г. полная изоляция, мы
Коробка для камеры с контролируемой температурой DIY с модулем Peltier TEC: 4 шага (с изображениями)
Коробка для камеры с контролируемой температурой и модулем TEC Пельтье: Я собрал камеру с регулируемой температурой для тестирования небольших электронных плат. В этом уроке я поделился своим проектом, включая исходные файлы и ссылку на файлы Gerbers для создания печатной платы. Я использовал только дешевые общедоступные материалы
Unpluginator - бесполезная коробка с автоматическим отключением: 4 шага (с изображениями)
Unpluginator - Самоотключающаяся бесполезная коробка: это пример бесполезной машины. Его единственная цель - отключить собственный источник питания. Он в основном напечатан на 3D-принтере с необходимой электроникой. Все рисование и моделирование выполнялись на Fusion 360, все программирование выполнялось на Arduino
Анимированная коробка шоколада (с Arduino Uno): 3 шага (с изображениями)
Анимированная коробка шоколада (с Arduino Uno): Однажды я увидела красивую коробку шоколада в магазине. И мне пришла в голову мысль сделать из этой коробки классный подарок - анимированную коробку с шоколадом. Что нам понадобится: Прозрачная пластиковая коробочка для шоколада Аккумулятор 9В Адаптер кабеля аккумулятора uSD 1GB Arduino U
Запираемая подарочная коробка: 4 шага (с изображениями)
Запираемая подарочная коробка: подарочная коробка, в которой вы можете ввести, выбрав инициалы того, кому это и кто это, с помощью шкалы потенциометра