Installare e configurare Nextcloud su Raspberry Pi

NextcloudPoco più di un mese fa, un terremoto ha sconvolto il mondo open source con l’annuncio dell’abbandono di Frank Karlitschek dal progetto del quale era cofondatore, ownCloud, per creare un fork chiamato Nextcloud.

Non mi dilungherò né sul motivo di questa scelta né sul perché affidarsi a soluzioni indipendenti per il salvataggio dei propri file – ne ho già ampiamente parlato – ma, considerando che avevo in programma di reinstallare da zero il mio fido Raspberry Pi (beh, uno dei due), ho colto l’occasione per illustrarvi alcune delle vie più semplici ed immediate per installare il vostro cloud personale.

Indice

  1. Cosa vi serve
  2. Installare DietPi e prima configurazione
  3. Configurare il DNS
  4. Creare ed installare il certificato
  5. Configurare il router
  6. Configurare Nextcloud
  7. Sincronizzare il vostro cloud

Cosa vi serve

  • Raspberry Pi (o uno dei dispositivi supportati da DietPi, controllate sul sito).
  • Una SD (o microSD, dipende dal vostro Pi) almeno 16GB classe 10.
  • Conoscenza base dell’utilizzo del terminale.
  • Un router che permetta il port mapping (controllate sul manuale utente).
  • Pazienza.

Installare DietPi e prima configurazione

In questa guida utilizzeremo una versione ridotta all’osso di Raspbian, DietPi.

DietPi ha dalla sua l’estrema facilità di configurazione e manutenzione e la leggerezza; si presta particolarmente ad un utilizzo su un server in quanto non presenta nessuna interfaccia grafica di default.

  1. Scaricate l’immagine da qui e scompattatela.
  2. Inserite la scheda SD nel vostro PC.
  3. Se avete Windows, utilizzate Win32DiskImager per copiare il file sulla SD. Se avete Linux, vi basterà il comando:
    # dd if=PERCORSOFILE/FILE.img of=/dev/sdX
    Dove X è la lettera associata alla scheda SD. Nota: dovrete utilizzare sdX non sdX1, sdX2, ecc.

(Opzionale) Configurare il Wifi

  • Sulla SD, trovate ed aprite il file dietpi.txt
  • Impostate Wifi_Enabled=1
  • Impostate l’ssid Wifi_SSID=SSIDWifi e la password Wifi_KEY=PasswordWifi della vostra rete WiFi.

  1. A questo punto, inserite la SD nel Pi, collegatelo a monitor e tastiera e accendetelo. Il processo di installazione di DietPi è semplicissimo, vi basterà seguire le istruzioni a schermo.
  2. Nella finestra Software Optimized selezionate Nextcloud e CertBot.
  3. Tornate indietro e in Webserver Preference selezionate Apache2.
  4. Selezionate DietPi-Config > Network Options: Adapters quindi Ethernet o WiFi (a seconda del collegamento scelto).
  5. In Change Mode selezionate STATIC e sotto IP address inserite l’indirizzo che volete il vostro Pi abbia, ad esempio 192.168.1.99. Solitamente il Gateway è 192.168.1.1 ma questa impostazione può cambiare nella vostra rete.
  6. Tornate indietro e selezionate Go per avviare il processo di installazione. Una volta concluso, il vostro Pi si riavvierà.

Al successivo accesso vi consiglio di cambiare password utilizzando il comando:

# passwd

Ora potete anche spegnere il Pi, spostarlo dove più vi aggrada e continuare ad utilizzarlo via SSH dal vostro PC principale, tramite Putty su Windows o il comando ssh root@192.168.1.98 dal vostro terminale Linux.


(Opzionale) Autologin

Dal momento che il vostro Pi fungerà da server headless, è importante che esso possa effettuare automaticamente il login in caso di riavvio spontaneo (ad esempio in caso di calo di corrente).

  • Digitate:
    # nano /etc/systemd/system/getty.target.wants/getty@tty1.service
  • Modificate la linea "ExecStart=" in questo modo:
    ExecStart=-/sbin/agetty -a root %I $TERM
  • Salvate con CTRL+X e uscite.

Nota: questo tipo di configurazione è adatta esclusivamente ad un utilizzo domestico e SE e SOLO SE siete sicuri che nessuno abbia accesso fisico al vostro Pi.


Configurare il DNS

Collegarsi al vostro cloud tramite l’indirizzo IP del vostro modem è scomodo e sconveniente, in quanto esso cambia periodicamente; potrete ovviare a ciò utilizzando un servizio di DNS dinamico.

Freedns

  1. Registratevi su http://freedns.afraid.org/
  2. Accedete all’account appena creato. Dal menu a sinistra selezionate Dynamic DNS. Nella parte in basso, create un nuovo record. In questa guida userò mypi.homenet.org come esempio.
  3. Cliccate su Direct URL
    freedns
  4. Nella barra degli indirizzi avrete un url di questo tipo: http://freedns.afraid.org/dynamic/update.php?[codice alfanumerico]
  5. Annotate il codice alfanumerico.

Inadyn

  1. Sul Pi, installate inadyn tramite il comando:
    # apt-get install inadyn
  2. Salvate la configurazione di default
    # mv /etc/inadyn.conf /etc/inadyn.conf.bk
  3. Createne una nuova
    # touch /etc/inadyn.conf
  4. Quindi modificatela:
    # nano /etc/inadyn.conf
  5. Inserite:
    --username nomeutentefreedns
    --password passwordfreedns
    --update_period 3600
    --forced_update_period 14400
    --alias mypi.homenet.org,codicealfanumericofreedns
    --background
    --dyndns_system default@freedns.afraid.org
    --syslog
  6. Salvate e chiudete.
  7. Impostate inadyn per l’avvio all’accensione del sistema:
    # crontab -e
  8. Inserite:
    @reboot /usr/sbin/inadyn
  9. Salvate e chiudete.

Creare ed installare il certificato

  1. Create un certificato SSL con il comando:
    # dietpi-letsencrypt
  2. Nella schermata che si aprirà inserite:
    In Domain: mypi.homenet.org
    In Email: la vostra email
    In Redirect: Enabled
    In Auto Renew: Enabled
    In Key Size: 2048
  3. Quindi applicate le modifiche.

Configurare il router

Accedete al vostro router (di solito l’indirizzo è 192.168.1.1 ma per sicurezza guardate sul retro/in fondo al modem) e cercate un’opzione chiamata Port mapping (o simili), quindi aprite le porte 80 e 443 verso l’indirizzo IP del Raspberry Pi.

Configurazione router

Ora il vostro server dovrebbe essere raggiungibile all’indirizzo mypi.homenet.org

Configurare Nextcloud

  1. Sul browser web digitate:
    192.168.1.99/nextcloud
  2. Accedete al vostro Nextcloud utilizzando le seguenti credenziali:
    In User: admin
    In Password: dietpi
  3. Cambiate la password predefinita tramite la voce Personal del menu in alto a destra. Da lì potete anche aggiungere una foto profilo o personalizzare altre opzioni.

Impostare la lingua italiana

Potete selezionate la lingua italiana tramite la voce Admin del menu in alto a destra.

Contatti e Calendario

Potrebbe essere necessario attivare manualmente le app Contatti e Calendario tramite la voce Applications del menu in alto a sinistra.

Sincronizzare il vostro cloud

Per la sincronizzazione con il vostro PC fate riferimento a questa guida; per configurare contatti a calendario sul vostro dispositivo Sailfish OS fate riferimento a questa guida. In entrambi i casi, sostituite owncloud con nextcloud dove necessario.

Nota: Nextcloud 10 si basa ampiamente sul codice di ownCloud e pertanto non ci sono grosse differenze. Dopo il rilascio di nuove versioni, vi consiglio di consultare questa pagina nel caso ci fossero procedure diverse.

Flattr this!

Potrebbero interessarti anche...

5 Risposte

  1. Foto del profilo di Marco Marco ha detto:

    Mi hai fatto tornare la volgia di provarci dopo che con Owncloud non sono mai riuscito a farlo funzionare bene 🙂 .

  2. Mike ha detto:

    ci sono riuscito finalmente, funziona alla grande l’unica cosa che non ho capito è come aggiorna nextcloud su raspberry.

    • Foto del profilo di Fra Fra ha detto:

      Fino alla 10.1.2 (mi sembra, vado a memoria) l’aggiornamento si fa tramite git, poi dovrebbero essere supportati gli aggiornamenti tramite interfaccia web.

  3. Diego ha detto:

    Ottimo! Il mio dubio è sul tuo “se e solo se”… Quindi se voglio usare nextcloud da remoto significa che è rischioso? Non ho ben capito questa cosa!

    • Foto del profilo di Fra Fra ha detto:

      Se ti riferisci all’autologin, il se e solo se significa che ovviamente se qualcuno dovesse impadronirsi fisicamente del tuo Pi, senza password all’avvio gli sarebbe più facile navigare sul tuo server.

      Se comunque sei insicuro sulla configurazione di Nextcloud, Jolla Community Italia offre un’installazione pronta all’uso 🙂

Lascia un commento