Hoe Nextcloud op Debian 12 te installeren
Nextcloud installeren op Debian is eenvoudig en kost slechts een paar stappen. U stelt de daadwerkelijke cloudoplossing in, die wordt beschermd door verschillende beveiligingsmechanismen.
Nextcloud voor Debian
Nextcloud is een aanbevolen gratis cloud computing-oplossing die tal van opties biedt voor zowel privé- als commercieel gebruik. Tot de voordelen van de software behoren krachtige beveiligingsfuncties voor gegevensbescherming, zoals SSL/TLS-encryptie, tweefactorauthenticatie en GDPR-compliance, evenals de keuze tussen lokale privéservers of uitbestede host-servers. Net als veel Nextcloud-alternatieven ondersteunt de OwnCloud-fork alle gangbare besturingssystemen en biedt het een eenvoudige integratie van talrijke diensten.
Hier leggen we stap voor stap uit hoe u Nextcloud op Debian 12 kunt installeren. Hiervoor installeert u een Apache2-webserver, een MariaDB-server en PHP 8.2. Om veiligheidsredenen laten we u zien hoe u een Uncomplicated Firewall (UFW) en de benodigde SSL/TLS-certificaten kunt instellen.
Aan welke vereisten moet worden voldaan?
Er zijn slechts een paar vereisten om Nextcloud op Debian 12 te installeren. Je hebt een server nodig waarop Debian 12 is geïnstalleerd. Hiervoor zijn minimaal 4 gigabyte RAM en twee CPU’s nodig. Het is ook belangrijk dat je niet-rootgebruikerstoegang met beheerdersrechten hebt en een domeinnaam instelt die naar het IP-adres van de server kan verwijzen.
Installeer Apache2-webserver
Installeer eerst een Apache2-webserver. Om dit te doen, werkt u de Debian-pakketindex bij om de nieuwste versie te downloaden. U kunt hiervoor het commando apt update gebruiken:
sudo apt updatebashVoer nu de installatie van het nieuwste Apache2-pakket uit met behulp van het volgende commando:
sudo apt install apache2bashBevestig de installatie met [y] en druk op [Enter] om de installatie te starten.
Controleer na de installatie de status van de service met behulp van de volgende systemctl-opdrachten:
sudo systemctl is-enabled apache2
sudo systemctl status apache2bashMet het eerste commando zou de service automatisch moeten starten wanneer u het systeem opstart. De status ‘actief’ geeft aan dat Apache2 klaar is voor gebruik.
Firewall installeren
Bescherm uw systeem en uw gegevens met een firewall. Wij raden de Uncomplicated Firewall (UFW) aan. Om deze als standaard in te stellen, opent u poorten voor OpenSSH, HTTP en HTTPS. Installeer nu het UFW-pakket met de volgende opdracht:
sudo apt install ufwbashBevestig met [y] en voltooi de installatie met [Enter]. Activeer vervolgens OpenSSH en UFW met:
sudo ufw allow OpenSSH
sudo ufw enablebashBevestig met [y] om UFW te starten. Er verschijnt nu een bericht dat de firewall actief is en bij het opstarten van het systeem wordt ingeschakeld. Voeg vervolgens de HTTP- en HTTPS-poorten toe voor gebruik door de webserver. Voer hiervoor de volgende opdracht uit:
sudo ufw allow "WWW Full"bashLaad UFW opnieuw:
sudo ufw reloadbashOm geactiveerde regels te bekijken, start u de status van UFW. WWW Full moet hier geactiveerd zijn.
sudo ufw statusbashPHP 8.2 activeren
Voor de best mogelijke prestaties en maximale compatibiliteit raadt Nextcloud PHP 8.2 aan. Dit is standaard opgenomen in Debian 12, dus u hoeft alleen de benodigde pakketten te installeren. Het bijbehorende commando is:
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-devbashBevestig met [y] en [Enter]. Controleer de PHP-versie en activeer de extensies:
php --version
php -mbashStart nu het PHP-configuratiebestand met de nano-editor:
sudo nano /etc/php/8.2/apache2/php.inibashU kunt nu wijzigingen aanbrengen en de configuratie aanpassen aan uw behoeften. Afhankelijk van hoe u Nextcloud op Debian 12 wilt gebruiken, kunnen andere waarden worden aanbevolen. Wijzig in dat geval de instellingen dienovereenkomstig. De commando’s zien er als volgt uit.
Stel de tijdzone in:
data.timezone = Europe/AmsterdambashWijzig de parameters voor memory_limit, upload_max_filesize, post-max_size en max_execution_time:
memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300bashActiveer nu file_uploads en allow_url_fopen. In beide gevallen moet de waarde worden ingesteld op ‘On’:
file_uploads = On
allow_url_fopen = OnbashDeactiveer display_errors en output_buffering en stel de respectievelijke waarden in op ‘Off’:
display_errors = Off
output_buffering = OffbashActiveer PHP OPCache met behulp van het volgende commando:
zend_extension=opcachebashPlak de configuratie in het opcache-gedeelte dat door Nextcloud wordt aanbevolen voor Debian 12:
opcache.enable = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 1bashSla ten slotte het bestand op en sluit de nano-editor af. Start nu de Apache2-service opnieuw op:
sudo systemctl restart apache2bashMariaDB-server instellen
Nextcloud gebruikt een MariaDB-server als database. Installeer deze met het volgende commando:
sudo apt install mariadb-serverbashBevestig met [y] en [Enter]. Na een succesvolle installatie voert u het volgende in:
sudo systemctl is-enabled mariadb
sudo systemctl status mariadbbashAls de server soepel draait, beveilig dan het systeem. Gebruik de volgende opdracht om een root-wachtwoord aan te maken, anonieme gebruikers te verwijderen en de testdatabase te verwijderen:
sudo mariadb-secure-installationbashPas de instellingen aan door op [y] te drukken om te accepteren en op [n] om te weigeren.
Database en gebruikers aanmaken
Nu kunt u een nieuwe database en de bijbehorende gebruiker aanmaken. Om in te loggen op de MariaDB-server, gebruikt u de volgende opdracht en voert u uw root-wachtwoord in:
sudo mariadb -u root -pbashGebruik de volgende commando’s om een nieuwe database, een gebruiker en het bijbehorende wachtwoord aan te maken:
CREATE DATABASE nextcloud_db;
CREATE USER nextclouduser@localhost IDENTIFIED BY 'yourPassword';
GRANT ALL PRIVILEGES ON nextcloud_db.* TO nextclouduser@localhost;
FLUSH PRIVILEGES;bashVervang ‘yourPassword’ door een sterk wachtwoord naar keuze. Controleer ten slotte of ‘nextclouduser’ toegang heeft tot de database ‘nextcloud_db’:
SHOW GRANTS FOR nextclouduser@localhost;bashDownload huidige broncodes
Download de huidige broncodes om Nextcloud op Debian 12 te kunnen gebruiken:
sudo apt install curl unzip -ybashGa naar de map /var/www en download de nieuwste broncode:
cd /var/www/
curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zipbashPak het bestand uit en wijzig de eigenaar van de map onder www-data:
unzip nextcloud.zip
sudo chown -R www-data:www-data nextcloudbashApache2-host configureren
Configureer nu een virtuele Apache2-host. Gebruik deze nano-opdracht:
sudo nano /etc/apache2/sites-available/nextcloud.confbashPas de domeinnaam en de parameters ErrorLog en CustomLog aan. Vervang de tijdelijke aanduiding ‘voorbeeld’ door uw domeinnaam.
<VirtualHost *:80>
ServerName nextcloud.example.io
DocumentRoot /var/www/nextcloud/
# log files
ErrorLog /var/log/apache2/files.example.io-error.log
CustomLog /var/log/apache2/files.example.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>bashSla de wijzigingen op en sluit de editor. Activeer vervolgens de configuratie met behulp van het volgende commando:
sudo a2ensite nextcloud.conf
sudo apachectl configtestbashWanneer u de uitvoer ‘Syntax OK’ ontvangt, start u Apache2 opnieuw op en past u de configuratie van de host hierop toe:
sudo systemctl restart apache2bashBeveiliging met SSL/TLS
U kunt Nextcloud nu op Debian 12 gebruiken via een onbeveiligd HTTP-protocol. Het wordt aanbevolen om HTTPS in te stellen om uw gegevens te beschermen. Selecteer hiervoor:
sudo apt install certbot python3-certbot-apachebashGenereer een SSL-certificaat door de plaatshouder ‘voorbeeld’ opnieuw te vervangen door uw domeinnaam:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email user@example.io -d nextcloud.example.iobashVoltooi de installatie van Nextcloud op Debian 12
U kunt nu de installatie van Nextcloud op Debian 12 voltooien. Open hiervoor uw webbrowser en voer de domeinnaam van uw Nextcloud-installatie in. Voer een gebruikersnaam en uw wachtwoord in om een beheerder aan te maken. Voer vervolgens de naam van uw database, de gebruikersnaam en het wachtwoord in en klik op ‘Installeren’. U kunt enkele compatibele apps downloaden of dit voorlopig overslaan. U wordt doorgestuurd naar uw dashboard en kunt nu Nextcloud gebruiken.