![Czerwone pudełko: 3 kroki (ze zdjęciami) Czerwone pudełko: 3 kroki (ze zdjęciami)](https://i.howwhatproduce.com/images/003/image-8096-25-j.webp)
Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:03
![Czerwone pudełko Czerwone pudełko](https://i.howwhatproduce.com/images/003/image-8096-26-j.webp)
Stwórz własny niezawodny serwer w chmurze
Krok 1: Sprzęt
![Sprzęt komputerowy Sprzęt komputerowy](https://i.howwhatproduce.com/images/003/image-8096-27-j.webp)
- Użyj metalowego pudełka i pomaluj go na swój ulubiony kolor. (Użyłem starego kontrolera pamięci masowej)
- Płyta Hobbycolor odporna na temperaturę co najmniej 75 C
- Malina pi 3
- Karta Micro SD (użyłem 16 GB, ale możesz użyć dowolnego rozmiaru >= 4 GB)
- Koncentrator USB z zewnętrznym gniazdem zasilania
- Adaptery USB do sata
- Napędy dyskowe
- Kabel sieciowy + gniazdko sieciowe
- Przewody + gniazdo wejściowe zasilania
- Śruby odzyskane z portu szeregowego lub VGA starego komputera
- Porty USB odzyskane ze starego komputera
Raspberry pi mocowane jest do płytki hobbycolor za pomocą śrub z portu vga.
Dyski mocowane są z tyłu zwykłymi śrubami.
Krok 2: Okablowanie
![Okablowanie Okablowanie](https://i.howwhatproduce.com/images/003/image-8096-28-j.webp)
Gniazdo wejściowe zasilania łączy się z obydwoma odzyskanymi portami USB
Pierwsze usb (za wszystkimi przewodami z przodu po lewej stronie) służy jako źródło zasilania, używane są tylko czerwone i czarne przewody i są podłączone do gniazda wejściowego zasilania. Pierwszy kabel USB w tym porcie dostarcza zasilanie dla pi, drugi kabel USB dostarcza zasilanie do koncentratora USB.
Drugie usb (to z tyłu - przydatne do podłączania dodatkowych urządzeń) ma czerwony i czarny podłączony bezpośrednio do wejścia zasilania, natomiast biały i zielony każdego portu jest podłączony do kabla usb odzyskanego ze starej myszy (białe bezpośrednio podłączony do pi)
Kabel LAN łączy zewnętrzne gniazdo sieciowe z portem LAN raspberry pi
Dyski podłącza się przez USB do adapterów sata do zewnętrznego, zasilanego koncentratora USB (dyski o większej pojemności wymagają większej mocy i nie chcemy, aby pi było niestabilne), który jest podłączony w jednym z portów pi
Krok 3: Oprogramowanie
![Oprogramowanie Oprogramowanie](https://i.howwhatproduce.com/images/003/image-8096-29-j.webp)
Zainstaluj system operacyjny
Użyj Centos 7 do ramienia dla większego bezpieczeństwa. (https://mirror.centos.org/altarch/7/isos/armhfp/); testowane: CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz, tutorial tutaj:
Umieść obraz na karcie micro sd z komputera z systemem Linux (dla systemu Windows sprawdź:
xzcat CentOS-Userland-7-armv7hl-Minimal-1611-RaspberryPi3.img.xz | sudo dd of=$/ścieżka/do/sd/status karty=postęp bs=4M
hasło roota: centos
użyj nmtui do skonfigurowania sieci i ustawienia statycznego adresu IP
Skonfiguruj dyski
Utwórz jedną partycję na każdym dysku (lepiej być trochę mniejszy niż cały dysk - powiedzmy 1 GB mniejszy - różne dyski o tej samej pojemności - np. wd vs toshiba - mają różne rozmiary:)). W ten sposób będziesz bezpieczny, jeśli będziesz musiał wymienić jeden z dysków
Utwórz system plików btrfs raid 1 na swoich dyskach
mkfs.btrfs -d raid1 -m raid1 /dev/sda1 /dev/sdb1
Etykieta systemu plików btrfs /dev/sda1 rpi3
Zamontuj system plików za pomocą autofs (zapobiega brakowi uruchomienia pi, jeśli coś pójdzie nie tak z dyskami)
mniam zainstaluj -y autofs
dołącz przepływ do /etc/auto.master:
/- /etc/auto.ext-usb --timeout=300
Utwórz /etc/auto.ext-usb z zawartością:
/srv -fstype=auto, compress=lzo, noatime:/dev/disk/by-label/rpi3
usługa autofs restart
ls /srv, df -h, potwierdź, że jest zamontowany
Zainstaluj własną chmurę
Wymagania wstępne (apache, php, mariadb):
mniam zainstaluj -y httpd; mniam zainstaluj -y mod_ssl; mniam install -y serwer mariadb; mniam zainstaluj -y php*
Zainstaluj owncloud 9, który jest kompatybilny z php54 dostarczanym z centos7, dobry samouczek do tego:
download.owncloud.org/download/repositories…
Po uruchomieniu własnej chmury przenieś katalog danych z domyślnej lokalizacji na nowe dyski (/srv)
usługa httpd stop
edytuj /var/www/html/owncloud/config/config.php i wprowadź tę zmianę:
'datadirectory' => '/srv/owncloud/data', mkdir /srv/własna chmura; mv /var/www/html/owncloud/data /srv/owncloud && chown -R apache:apache /srv/owncloud/data/
usługa httpd start
Możesz zainstalować klienta desktopowego owncloud na linux/windows a dla telefonów używam foldersync
-
Włącz i skonfiguruj SELinux
(wersja robocza to: selinux-policy-3.13.1-166.el7.5.noarch, selinux-policy-targeted-3.13.1-166.el7.5.noarch)
upewnij się, że nie aktualizujesz tej polityki (w /etc/yum.conf append: exclude = selinux-policy*)
restorecon -Rv /
/boot/cmdline.txt powinien zawierać: selinux=1 security=selinux enforcing=1
/etc/sysconfig/selinux powinien zawierać: SELINUX=enforcing i SELINUXTYPE=targeted
restart
Po ponownym uruchomieniu dokonaj następujących ustawień:
mniam 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
jeśli napotkasz jakiekolwiek problemy, włóż kartę SD do innego komputera i zmodyfikuj plik cmdline.txt tak, aby miał: selinux=0
Zabezpiecz swoje pudełko
Zmień hasło roota
Utwórz sobie użytkownika (adduser -s /bin/bash "ja") i ustaw silne hasło (passwd "ja")
skonfiguruj sshd do nasłuchiwania na innym porcie i NIE zezwalaj na logowanie root
W /etc/ssh/sshd_config ustaw Port
(powiedzmy 2222), PermitRootLogin nie
Poinformuj SELinux i firewalld o swoich zamiarach:
zarządzaj portem -a -t ssh_port_t -p tcp 2222
usługa firewalld start && systemctl włącz firewalld.service
firewall-cmd --permanent --dodaj-port 2222/tcp
firewall-cmd --reload
restart usługi sshd
Upublicznij to
Na routerze internetowym przekieruj te porty na statyczne adresy IP ustawione w pierwszym kroku: 80, 443, 2222.
Skonfiguruj DDNS na routerze, aby mieć dostęp do swojego urządzenia z dowolnego miejsca.
Strojenie
Ustaw Apache na 5 proc. przy małej ilości pamięci:
/etc/httpd/conf.modules.d/00-mpm.conf
LoadModule moduły mpm_prefork_module/mod_mpm_prefork.so
StartSerwery 5
MinZapasowe serwery 5
MaxSpareServers 5
Limit serwera 5
MaxKlienci 5
Maksymalna liczba żądań na dziecko 3000
usługa httpd restart
Skonfiguruj crona, aby co tydzień szorował dyski i robił migawkę każdej nocy (w /etc/crontab)
01 02 * * 6 root btrfs scrub start /srv01 01 * * * root /usr/sbin/btrfs snapshot -r /srv /srv/@$(printf "\%s" $(/bin/date +\%d \%b\%Y-\%k-\%M))
sprawdzaj od czasu do czasu głośność za pomocą: btrfs dev stats /srv
Użyj watchdoga, aby automatycznie zresetować, jeśli przestanie odpowiadać (raspberry pi3 ma jeden sprzętowy):
mniam zainstaluj -y watchdog
/etc/watchdog.conf
watchdog-urządzenie = /dev/watchdogwatchdog-timeout = 15
interwał = 1logtick = 1 log-dir = /var/log/watchdog
czas rzeczywisty = takpriorytet = 1
usługa watchdog start && systemctl enable watchdog.service
Zalecana:
Bezużyteczne pudełko: 3 kroki (ze zdjęciami)
![Bezużyteczne pudełko: 3 kroki (ze zdjęciami) Bezużyteczne pudełko: 3 kroki (ze zdjęciami)](https://i.howwhatproduce.com/images/002/image-3331-16-j.webp)
Useless Box: Projekt: Useless Box Data: Marzec 2020 – Kwiecień 2020Zdecydowałem się na ten projekt z dwóch powodów, po pierwsze, aby wstrzymać znacznie bardziej złożony projekt, nad którym obecnie pracuję, a po drugie, jako coś do zrobienia podczas pełna blokada jesteśmy
The Unpluginator - Samoodłączające się bezużyteczne pudełko: 4 kroki (ze zdjęciami)
![The Unpluginator - Samoodłączające się bezużyteczne pudełko: 4 kroki (ze zdjęciami) The Unpluginator - Samoodłączające się bezużyteczne pudełko: 4 kroki (ze zdjęciami)](https://i.howwhatproduce.com/images/001/image-2626-10-j.webp)
The Unpluginator - Self-Unplugging Useless Box: To jest przykład Bezużytecznej Maszyny. Jego jedynym celem jest odłączenie własnego zasilacza. Jest w dużej mierze drukowany w 3D, z niezbędną elektroniką. Cały rysunek i symulacja zostały wykonane na Fusion 360, całe programowanie zostało wykonane w Arduino
Animowane pudełko czekoladek (z Arduino Uno): 3 kroki (ze zdjęciami)
![Animowane pudełko czekoladek (z Arduino Uno): 3 kroki (ze zdjęciami) Animowane pudełko czekoladek (z Arduino Uno): 3 kroki (ze zdjęciami)](https://i.howwhatproduce.com/images/001/image-874-71-j.webp)
Animowane pudełko czekoladek (z Arduino Uno): Kiedyś zobaczyłem w sklepie piękne pudełko czekoladek. I przyszło mi do głowy, aby zrobić niesamowity prezent z tego pudełka - animowane pudełko z czekoladą. Czego potrzebujemy: przezroczyste plastikowe pudełko na czekoladki Bateria 9 V Adapter do kabla baterii uSD 1 GB Arduino U
Zamykane pudełko upominkowe: 4 kroki (ze zdjęciami)
![Zamykane pudełko upominkowe: 4 kroki (ze zdjęciami) Zamykane pudełko upominkowe: 4 kroki (ze zdjęciami)](https://i.howwhatproduce.com/images/001/image-2021-64-j.webp)
Zamykane pudełko upominkowe: Pudełko upominkowe, w którym możesz wpisać inicjały tego, do kogo i od kogo jest za pomocą pokrętła potencjometru
Daj Laserbeak świecące czerwone oczy: 8 kroków
![Daj Laserbeak świecące czerwone oczy: 8 kroków Daj Laserbeak świecące czerwone oczy: 8 kroków](https://i.howwhatproduce.com/images/003/image-7127-36-j.webp)
Daj Laserbeak świecące czerwone oczy: Uwielbiam zabawki Transformers, to znaczy weź zabawkę Booster x10 (AKA Laserbeak). Bardzo ruchomy, ma 14 punktów artykulacji i po prostu fajnie wygląda! Byłoby jeszcze fajniej, gdyby miał świecące czerwone oczy i żadnych maminsynkowych „piór”. Jeśli doceniasz