# Installazione di Nextcloud su Debian 12

In generale bastano pochi passaggi per installare Nextcloud su Debian. La procedura non si limita a configurare la soluzione cloud vera e propria, ma la protegge anche mediante diversi meccanismi di sicurezza.

## Nextcloud per Debian

[Nextcloud](https://www.ionos.it/digitalguide/server/tools-o-strumenti/che-cose-nextcloud/) è una **soluzione di cloud computing**, consigliabile e soprattutto **gratuita**, che offre numerose possibilità sia per uso privato che commerciale. Fra i molti vantaggi del software vi sono le potenti funzionalità di sicurezza per la protezione dei dati, come la crittografia SSL/TLS, l’autenticazione a due fattori e la conformità al GDPR, nonché la possibilità di scegliere fra server privati in locale o server host esternalizzati. Come molte [alternative a Nextcloud](https://www.ionos.it/digitalguide/server/tools-o-strumenti/alternative-a-nextcloud/), questo fork di OwnCloud supporta tutti i sistemi operativi più comuni e offre una facile integrazione di numerosi servizi.

Nelle parti seguenti ti spieghiamo passo per passo la procedura di configurazione di Nextcloud su Debian 12. A tal fine devi installare un **web server Apache2**, un **server MariaDB** e **PHP 8.2**. Per la protezione ti mostriamo come impostare un **Uncomplicated Firewall (UFW)** e i necessari **certificati SSL/TLS**.

Consiglio Se desideri installare Nextcloud su Ubuntu, nella nostra Digital Guide trovi le istruzioni adatte per la [configurazione di Nextcloud su Ubuntu 22.04](https://www.ionos.it/digitalguide/server/configurazione/nextcloud-ubuntu-2204/). Qui troverai anche la descrizione dell’[installazione di Nextcloud con Docker](https://www.ionos.it/digitalguide/server/configurazione/installare-nextcloud-con-docker/) e scoprirai anche [come configurare Nextcloud su Kubernetes](https://www.ionos.it/digitalguide/server/configurazione/nextcloud-kubernetes/).

## Quali sono i requisiti da soddisfare?

Per l’installazione di Nextcloud su Debian 12 è sufficiente soddisfare pochi requisiti. È necessario un server su cui sia già installato Debian 12. Inoltre, sono necessari almeno **4 gigabyte di RAM** e **due CPU**. È importante avere anche un **accesso utente non root con permessi di amministratore** e configurare un nome di dominio che possa rimandare all’indirizzo IP del server.

## Installazione del web server Apache2

Per prima cosa, installa un web server Apache2. A tal fine devi aggiornare l’indice dei pacchetti Debian per poter scaricare la versione più recente. Per farlo, usa il comando apt update:

```bash
sudo apt update
```

Quindi esegui l’installazione del più recente pacchetto di Apache2 con il seguente comando:

```bash
sudo apt install apache2
```

Conferma l’installazione con il tasto \[y\] e premi quindi \[Invio\] per avviare l’installazione.

Dopo l’installazione, controlla lo stato del servizio con i seguenti comandi systemctl:

```bash
sudo systemctl is-enabled apache2
sudo systemctl status apache2
```

Sotto il primo comando dovresti vedere che il servizio viene avviato automaticamente quando avvii il sistema. Lo stato “active” indica che Apache2 è pronto all’uso.

## Configurazione del firewall

Con il [firewall](https://www.ionos.it/digitalguide/server/sicurezza/cose-un-firewall/) giusto puoi proteggere il tuo sistema e i tuoi dati. Ti consigliamo di usare Uncomplicated Firewall (UFW), che puoi configurare come standard. A tal fine devi aprire le porte per OpenSSH, HTTP e [HTTPS](https://www.ionos.it/digitalguide/hosting/tecniche-hosting/cose-https/). Per iniziare, installa il pacchetto UFW con il seguente comando:

```bash
sudo apt install ufw
```

Conferma quindi di nuovo con \[y\] e completa l’installazione con \[Invio\]. Successivamente, attiva OpenSSH e UFW con questi comandi:

```bash
sudo ufw allow OpenSSH
sudo ufw enable
```

Per avviare UFW, conferma con \[y\]. A questo punto appare l’output “Firewall is active and enabled on system startup”. Successivamente aggiungiamo la porta HTTP e la porta HTTPS che devono essere usate dal web server. Per farlo, esegui questo comando:

```bash
sudo ufw allow "WWW Full"
```

Carica quindi nuovamente UFW:

```bash
sudo ufw reload
```

Per consultare le regole attivate, richiama lo stato di UFW. WWW Full dovrebbe essere attivato.

```bash
sudo ufw status
```

## Attivazione di PHP 8.2

Per ottenere le migliori prestazioni e la massima compatibilità possibili, Nextcloud stesso consiglia di usare PHP 8.2. Essendo già incluso per impostazione predefinita in Debian 12, devi soltanto installare i pacchetti necessari. Il comando per farlo è il seguente:

```bash
sudo apt install -y php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev
```

Conferma con \[y\] e \[Invio\]. Quindi verifica la versione PHP e attiva le estensioni:

```bash
php --version
php -m
```

Ora utilizza l’editor Nano per aprire il file di configurazione di PHP:

```bash
sudo nano /etc/php/8.2/apache2/php.ini
```

A questo punto puoi apportare alcune modifiche alla configurazione per adattarla alle tue esigenze. A seconda di come vuoi utilizzare Nextcloud con Debian 12, possono essere consigliabili valori diversi. In questo caso, modifica le impostazioni in base alle tue preferenze. I relativi comandi sono i seguenti.

Per prima cosa, imposta il fuso orario:

```bash
data.timezone = Europe/Amsterdam
```

Modifica i parametri per memory\_limit, upload\_max\_filesize, post-max\_size e max\_execution\_time:

```bash
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300
```

Ora attiva file\_uploads e allow\_url\_fopen. In entrambi i casi il valore deve essere impostato su “On”:

```bash
file_uploads = On
allow_url_fopen = On
```

Disattiva display\_errors e output\_buffering, quindi imposta i rispettivi valori su “Off”:

```bash
display_errors = Off
output_buffering = Off
```

Attiva PHP OPCache con questo comando:

```bash
zend_extension=opcache
```

Aggiungi la configurazione nella sezione opcache consigliata da Nextcloud per Debian 12, che si presenta così:

```bash
opcache.enable = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 1
```

Infine, salva il file e chiudi l’editor Nano. Ora riavvia il servizio Apache2:

```bash
sudo systemctl restart apache2
```

## Configurazione del server MariaDB

Come database, Nextcloud utilizza un server MariaDB. Per installarlo e controllarlo, utilizza questi comandi:

```bash
sudo apt install mariadb-server
```

Conferma con \[y\] e \[Invio\]. Dopo aver completato correttamente l’installazione, immetti questo comando:

```bash
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
```

Una volta che il server funziona correttamente, è il momento di pensare a proteggere il sistema. Utilizza il comando seguente per creare una password di root, rimuovere gli utenti anonimi ed eliminare il database di prova:

```bash
sudo mariadb-secure-installation
```

Premi \[y\] per confermare le impostazioni o \[n\] per rifiutarle.

## Creazione di database e utente

A questo punto devi creare un nuovo database e il relativo utente. Per accedere al server MariaDB, utilizza questo comando e inserisci la tua password di root:

```bash
sudo mariadb -u root -p
```

Utilizza i comandi seguenti per creare un nuovo database, un utente e la relativa password:

```bash
CREATE DATABASE nextcloud_db;
CREATE USER nextclouduser@localhost IDENTIFIED BY 'TuaPassword';
GRANT ALL PRIVILEGES ON nextcloud_db.* TO nextclouduser@localhost;
FLUSH PRIVILEGES;
```

Sostituisci `'TuaPassword'` con una password sicura scelta da te. Infine, verifica che “nextclouduser” abbia accesso al database “nextcloud\_db”:

```bash
SHOW GRANTS FOR nextclouduser@localhost;
```

## Download del codice sorgente aggiornato

Ora scarica il codice sorgente aggiornato per poter utilizzare al meglio Nextcloud su Debian 12. Innanzitutto, esegui questo comando:

```bash
sudo apt install curl unzip -y
```

Passa quindi alla cartella /var/www e scarica il codice sorgente più recente:

```bash
cd /var/www/
curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip
```

Decomprimi il file e cambia quindi i proprietari della cartella in www-data:

```bash
unzip nextcloud.zip
sudo chown -R www-data:www-data nextcloud
```

## Configurazione dell’host Apache2

Ora configura un host Apache2 virtuale. A tal fine utilizza questo comando Nano:

```bash
sudo nano /etc/apache2/sites-available/nextcloud.conf
```

Adatta il nome di dominio e i due parametri ErrorLog e CustomLog. A tal fine, sostituisci il segnaposto “esempio” con il tuo nome di dominio.

```bash
<VirtualHost *:80>
    ServerName nextcloud.esempio.io
    DocumentRoot /var/www/nextcloud/
    # log files
    ErrorLog /var/log/apache2/files.esempio.io-error.log
    CustomLog /var/log/apache2/files.esempio.io-access.log combined
    <Directory /var/www/nextcloud/>
        Options +FollowSymlinks
        AllowOverride All
        <IfModule mod_dav.c>
            Dav off
        </IfModule>
        SetEnv HOME /var/www/nextcloud
        SetEnv HTTP_HOME /var/www/nextcloud
    </Directory>
</VirtualHost>
```

Salva le modifiche e chiudi l’editor. Quindi attiva la configurazione con il seguente comando e verificala:

```bash
sudo a2ensite nextcloud.conf
sudo apachectl configtest
```

Se ottieni l’output “Syntax OK”, riavvia Apache2 e applica la configurazione dell’host:

```bash
sudo systemctl restart apache2
```

## Protezione con SSL/TLS

Se non modifichi ulteriori impostazioni, utilizzerai Nextcloud su Debian 12 tramite un protocollo HTTP non protetto. Per proteggere i tuoi dati ti consigliamo quindi di configurare l’HTTPS. Per farlo, esegui questo comando:

```bash
sudo apt install certbot python3-certbot-apache
```

Genera quindi un [certificato SSL](https://www.ionos.it/digitalguide/siti-web/creare-siti/certificato-ssl/). A tal fine sostituisci nuovamente il segnaposto “esempio” con il tuo nome di dominio effettivo:

```bash
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email user@esempio.io -d nextcloud.esempio.io
```

## Conclusione dell’installazione di Nextcloud su Debian 12

Ora puoi completare l’installazione di Nextcloud su Debian 12. Apri il tuo browser e quindi il nome di dominio della tua installazione di Nextcloud. Inserisci un **nome utente e la tua password** per creare un amministratore. Aggiungi quindi il nome del tuo database, il nome utente e la password. Infine, fai clic su “Install”. Successivamente puoi scegliere di scaricare alcune app compatibili oppure saltare questo passaggio. Infine, il sistema ti porta alla dashboard e puoi quindi iniziare a utilizzare Nextcloud per i tuoi dati.


This is a markdown version of: [https://www.ionos.it/digitalguide/server/configurazione/nextcloud-su-debian-12/](https://www.ionos.it/digitalguide/server/configurazione/nextcloud-su-debian-12/) for AI/LLM consumption.