Nextcloud è un’alternativa a Google Drive o Dropbox completamente privato e non controllato, open source e gratuito.
Si installa su un nostro computer dove possiamo salvare i nostri dati personali, sincronizzare i documenti e le foto con i nostri dispositivi, gestire la posta i contatti, il calendario, effetture call e chat private ed inoltre è possibile installare applicazioni dallo store di Nextcloud come:
- Collabora Online è una potente suite per ufficio online basata su LibreOffice con editing collaborativo, che supporta tutti i principali documenti, fogli di calcolo e formati di file di presentazione e funziona insieme a tutti i browser moderni.
- Two Factor Totp autenticazione a due fattori utilizzando una password monouso (TOTP)
Diverse sono le modalità d’installazione, quella adottata in questo tutorial è su Ubuntu server 22.04 tramite pacchetto Snap mantenuto dalla community Nextcloud inclusi i canali di rilascio e un'implementazione rapida e semplice per un facile utilizzo domestico.
E’ possibile accedervi tramite:
- browser web
- applicazione desktop per Linux, Microsoft e Mac
- mobile tramite app Android ed Apple
Per prima cosa nelle impostazioni di BIOS abilitare UEFI e disabilitare Secure Boot
Al boot avviare la penna usb in modalità UEFI ed avviare l’installazione selezionando la prima opzione: Try or Install Ubuntu Server
Quindi seguire la procedura di installazione seguendo gli step proposti a cominciare dalla lingua
E la scelta della tastiera proposta in automatico in base alla lingua scelta dalla scheda precedente
Scegliere come tipo di installazione Ubuntu Server
Alle connessioni di rete selezionare un IP statico
Se non hai esigenze particolari puoi saltare questa scheda e procedere oltre
In questa scheda avviene la scelta del servere da cui la procedura di installazione effettua il download dei files
In questa scheda scegliamo l'Hard disk su cui effettuare l'installazione e la scelta se automatizzare la procedura o avviare la procedura manuale
Questa è la scheda di riepilogo della disco da formattare
E quindi confermare la produra
Inserire i dati personali dell'utente che amministrerà il server
Quindi abilitare il servizio SSH
Se abbiamo ulteriori necessità possiamo installare altri pacchetti software
Solo adesso avviene l'installazione vera e propria
Attendere che la procedura finisca il suo compito
Per verificare il firewall è attivo
$ sudo ufw status
$ sudo ufw status verbose
Per abilitare le porte in ingresso consentite
$ sudo ufw allow 22/tcp
$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp
$ sudo ufw allow 9980/tcp
Per abilitare il firewall
$ sudo ufw enable
Per ricaricare il servizio di firewall
$ sudo ufw reload
$ sudo ufw status verbose
Abilitare sul router le porte 80, 443 e 9980 sull’IP 192.168.178.157 srvnextcloud
- Abilitare HTTPS sul tuo sito web: https://letsencrypt.org/it/getting-started/
$ sudo nano /var/snap/nextcloud/current/nextcloud/config/config.php
- Modificare questa parte:
'trusted_domains' =>
array (
0 => '192.168.100.157',
),
- Come segue:
'trusted_domains' =>
array (
0 => 'nome_dominio.cloudns.cl',
),
Quindi
$ sudo nextcloud.enable-https lets-encrypt
In order for Let's Encrypt to verify that you actually own the domain(s) for which you're requesting a certificate,
there are a number of requirements of which you need to be aware:
- In order to register with the Let's Encrypt ACME server, you must agree to the currently-in-effect Subscriber Agreement located here:
https://letsencrypt.org/repository/
By continuing to use this tool you agree to these terms. Please cancel now if otherwise.
- You must have the domain name(s) for which you want certificates pointing at the external IP address of this machine.
- Both ports 80 and 443 on the external IP address of this machine must point to this machine (e.g. port forwarding might need to be setup on your router).
Have you met these requirements? (y/n) y
Please enter an email address (for urgent notices or key recovery): email_personale
Please enter your domain name(s) (space-separated): nome_dominio.cloudns.cl
Attempting to obtain certificates... done
find: Failed to restore initial working directory: /home/user: Permission denied
Restarting apache... done
Aprire il browser ed inserire https://nome_dominio.cloudns.cl ed accedere tramite nome utente e password scelti.
Per il nostro esempio la nostra scelta è di utilizzare il servizio gratuito di cloudns.net e dopo essersi registrati procedere alla creazione del nostro personale Nome di Dominio.
Collegarsi al sito web https://www.cloudns.net/
- Su DNS Hosting cliccare su Create Zone → Zona Master →
- Selezionare → Crea questa zona di con i record NS
- Scegliere un nome di dominio
- Cliccare su crea
- Selezionare il nome di dominio in DNS Hosting
- Cliccare su aggiungi record
- Tipo: A
- Host: scegliere un nome Host
- Punta a: IP pubblico del proprio router
- Cliccare sul tasto Salva
L'installazione di Nextcluod prevede l'impostazione di data e fuso orario e l'aggiornamento del sistema:
$ timedatectl
$ timedatectl set-timezone Europe/Rome
$ sudo apt update && sudo apt dist-upgrade && sudo snap refresh
Elenco delle applicazioni snap installate
$ sudo snap list
Name
Version
Rev
Tracking
Publisher
Notes
core20
20220719
1587
latest/stable
canonical✓
base
lxd
5.0.0-b0287c1
22923
5.0/stable/…
canonical✓
-
snapd
2.56.2
16292
latest/stable
canonical✓
snapd
(fonte: https://snapcraft.io/docs/service-management)
Qualora la procedura avvenga su Macchina Virtuale con VirtualBox il tempo necessario per la procedura potrebbe aumentare.
Per monitorare il corretto funzionamento utilizzare il comando:
$ journalctl -f
Quindi per procedere all'installazione usare il comando:
$ sudo snap install nextcloud
E questo il comando per disinstallare:
$ sudo snap remove nextcloud
Per verificare la corretta installazione:
$ sudo snap list
Name
Version
Rev
Tracking
Publisher
Notes
core18
20220831
2566
latest/stable
canonical✓
base
core20
20220719
1587
latest/stable
canonical✓
base
lxd
5.0.0-b0287c1
22923
5.0/stable/…
canonical✓
-
nextcloud
24.0.6snap1
31751
latest/stable
nextcloud✓
-
snapd
2.56.2
16292
latest/stable
canonical✓
snapd
(fonte: https://snapcraft.io/docs/service-management)
Per verificare se il servizio è in esecuzione:
$ snap services
Service
Startup
Current
Notes
lxd.activate
enabled
inactive
-
lxd.daemon
enabled
inactive
socket-activated
lxd.user-daemon
enabled
inactive
socket-activated
nextcloud.apache
enabled
active
-
nextcloud.logrotate
enabled
inactive
timer-activated
nextcloud.mdns-publisher
enabled
active
-
nextcloud.mysql
enabled
active
-
nextcloud.nextcloud-cron
enabled
active
-
nextcloud.nextcloud-fixer
enabled
inactive
-
nextcloud.php-fpm
enabled
active
-
nextcloud.redis-server
enabled
active
-
nextcloud.renew-certs
enabled
active
-
I file NextCloud sono nella directory:
$ cd /snap/nextcloud/current/htdocs
$ ls -l
Il file Nextcloud di configurazione nella directory:
$ cd /var/snap/nextcloud
$ ls -l
Impostazioni → Amministrazione → Registrazione
Correggere errore was not connected to because it violates local access rules
Correggere l’errore in
Impostazioni → Amministrazione → Registrazione
Modificare il file di configurazione di Nextcloud
$ sudo nano /var/snap/nextcloud/current/nextcloud/config/config.php
E cercare la riga da editare
0 => 'nome_dominio.cloudns.cl',
),
'allow_local_remote_servers' => true,
Verificare gli errori di sistema di Nextcloud in
Impostazioni → Amministrazione → Riepilogo
- Inserire l’indirizzo email in Informazioni personali
Posta elettronica: email_personale -
Amministrazione → Impostazioni di base → Server di posta
-
Gestisci il tuo account → Sicurezza → Accesso a Google → Password per le app
Seleziona app Altra (nome personalizzata)
la password generata è da inserire nel campo password delle credenziali in Nextcloud del server di posta.
Dove sono i tuoi dati?
Personale → Riservatezza → Dove sono i tuoi dati?
Specificare il parametro default regione telefonica
$ sudo nano /var/snap/nextcloud/current/nextcloud/config/config.php
aggiungere in:
array (
0 => 'nome_dominio.cloudns.cl',
),
'default_phone_region' => 'ISO 3166-2',
E' necessario installare l'applicazione di sicurezza Two-Factor TOTP Provider che si trova in:
Impostazioni → Amministrazione → Sicurezza
Dopo aver installato, da
Impostazioni → Amministrazione → Sicurezza → Autenticazione a due fattori
Selezionare
Applica l’autenticazione a due fattori
E quindi cliccare sul tasto
Salva
E poi di nuovo, da
Impostazioni → Personale → Sicurezza → Autenticazione a due fattori
Selezionare
Abilita TOTP
Con il proprio Smartphone Android, aprire l’app Google Authenticator cliccare in basso sul tasto e Scansiona un codice QR e con la videocamera inquadra il qrcode. Inserire il codice e cliccare sul tasto Verifica.
Cliccare sul tasto Genera i codici di backup
Ora, dall'applicazione Nextcloud, cliccare sul tasto Esci per fare il logout ed inserire nome utente e password
Quindi, aprire l’app Google Authenticator rilevare il codice ed inserirlo