Deși nu sunt ferm convins că e o idee tocmai bună din cauza riscurilor cu care vine la pachet o astfel de implementare, m-am hotărât să migrez toate serviciile cloud pe care le folosesc actualmente în regim self-hosted folosind un Raspberry Pi 4B cu 8GB RAM.
Planul este să înlocuiesc Dropbox, Google Drive, Photos și Docs cu Nextcloud, iDrive cu Syncthing, Feedly cu FreshRSS, CyberGHost cu WireGuard, printre altele, iar cu banii economisiți astfel, sau cel puțin cu o parte din ei să contribui la dezvoltarea acestora.
Mai mult, chiar dacă pe Raspberry-ul actual, un Pi 3 Model B+ am utilizat doar sistemul de operare oficial în cei doi ani în care l-am folosit intens cu Hassio și Home Assistant, de data aceasta voi opta pentru versiunea de 64 de biți a DietPi, în teorie una optimizată pentru serviciile de care am nevoie.
Cât despre hardware, de această dată am ales sursa de alimentare oficială în ciuda faptului că nu dispune de un buton de pornire/oprire, de o carcasă compactă care venea cu necesarul pentru a o pune în funcționare.
Pentru sistemul de operare am ales un card Kingston de 64GB Class 10 UHS-1, iar pentru stocare un HDD Toshiba de 1TB. Deși un card MicroSD de 32GB ar fi fost suficient, am observat că cu cât capacitatea acestora este mai mică, cu atât se defectează mai repede.
Configurare DietPi și instalare aplicații
Pentru instalarea sistemului de operare DietPi am folosit aplicația oficială. DietPi vine cu serverul SSH activat implicit, așadar nu trebuie făcut nimic special în acest sens.
La prima conectare prin SSH asistentul de configurare ne recomandă înlocuirea parolei implicite (dietpi) utilizată la instalarea software-ului.
Recomandarea se repetă și pentru conturile de utilizatori implicite.
Urmează un al pas important: păstrarea sau dezactivarea serial console. După cum propriul asistent îndeamnă, cei care nu știu despre ce este vorba pot renunța la această caracteristică.
Aplicate modificările, urmează configurarea parametrilor de funcționare și alegerea aplicațiilor de care fiecare are nevoie. DietPi, spre diferență de sistemul de operare oficial, oferă un catalog de aplicații optimizate special pentru a fi rulate în Raspberry Pi.
Acestea sunt listate în meniul Software optimised:
Dacă ești genul comod, care preferă să nu-și bată capul pentru a învăța de la A la Z aplicațiile pe care le va folosi, acesta este locul din care îți recomand să instalezi software-ul de care ai nevoie, fiind optimizat de experți pentru a funcționa corect și în siguranță pe hardware-ul avut.
Navigarea în listă se face cu ajutorul tastelor de navigare, iar bifa se aplică prin apăsarea tastei spațiu. Fiind împărțită pe categorii, localizarea îl listă a aplicației dorite se realizează rapid.
Dintre cele afișate, eu am ales:
- Nextcloud – alternativă la Dropbox, Google Drive, OneDrive.
- Home Assistant – pentru integrarea dispozitivelor de tip smart home.
- FreshRSS – cititor de fluxuri RSS
- Docker – pentru virtualizarea aplicațiilor containere
- Portainer – manager pentru containere Docker
- PiHole – blocant de reclame și scripturi la nivel de rețea
- PiVPN – asistent de configurare rapida a unui server VPN
- Unbound – DNS caching pentru cei preocupați de datele personale
- Syncthing – Pentru sincronizare fișiere / backup
- Samba Server – pentru partajarea de fișiere cu sisteme Windows
- NFS Server – pentru partajarea de fișiere cu sisteme Linux
- Fail2ban – pentru a bloca atacurile de tip brute-force.
Mă rog, ordinea în care apar în listă este alta, dar importantă este instalarea fiecăreia dintre acestea în cazul în care doriți obținerea unui rezultat similar.
După alegerea aplicațiilor, cu ajutorul tastei Tab selectăm OK, apoi Back pentru a reveni la meniul principal.
Un alt pas important la configurarea DietPi este ajustarea parametrilor de rețea. Pentru a identifica cu ușurință dispozitivul în rețea, dar și pentru a permite funcționarea corectă a aplicațiilor care depind de aceasta, este necesară configurarea unei adrese IP ce va fi utilizată exclusiv de către Raspberry Pi.
Înainte de a continua, vă sfătuiesc să vă asigurați că Raspberry Pi are acces la Internet utilizând parametri actuali. Pentru asta, în meniul următor alegeți opțiunea Test, apăsați tasta Enter și așteptați rezultatul testului.
Dacă se dorește păstrarea adresei IP ce a fost alocată automat de către router, trebuie selectat adaptorul de rețea utilizat și apăsată tasta Enter. În noua fereastră, va trebui selectată opțiunea Copy:
Salvarea modificărilor realizate se face prin selectarea opțiunii Apply:
Adresa IP configurată astfel va fi întrebuințată pentru a accesa Raspberry Pi prin SSH, dar și pentru interacționa cu aplicațiile instalate.
O dată aplicate setările de rețea, trebuie revenit, cu Exit, la fereastra principală a asistentului de configurare a DietPi pentru a iniția procesul de instalare a aplicațiilor cu ajutorul opțiunii Install.
Va fi afișată lista tuturor aplicațiilor ce vor fi instalate. Dacă lipsește vreuna dintre cele necesare, se poate reveni la meniul anterior cu ajutorul butonului Cancel. Cu OK se confirmă instalarea acestora.
Instalarea va porni și va avea o durată de aproximativ 2h pe Raspberry Pi 4 B, iar pe durata acesteia vi se va cere să interveniți. Eu am răspuns după cum se vede:
Țineți cont de faptul că instalarea Home Assistant durează cel mai mult, iar pentru realizarea corectă a acesteia va trebui să fiți atenți la procesu cu același nume pentru a-l reporni (detalii aici).