Det är enkelt att in­stal­le­ra Nextcloud på Debian och det tar bara några få steg. Du kon­fi­gu­re­rar den faktiska moln­lös­ning­en som skyddas av olika sä­ker­hets­me­ka­nis­mer.

Nextcloud för Debian

Nextcloud är en re­kom­men­de­rad gratis moln­tjänst­lös­ning som erbjuder många al­ter­na­tiv för både privat och kom­mer­si­ellt bruk. Bland för­de­lar­na med pro­gram­va­ran finns starka sä­ker­hets­funk­tio­ner för dataskydd, såsom SSL/TLS-kryp­te­ring, två­fak­torsau­ten­ti­se­ring och GDPR-kom­pa­ti­bi­li­tet, samt valet mellan lokala privata servrar eller outsour­ca­de värdserv­rar. Liksom många Nextcloud-al­ter­na­tiv stöder OwnCloud-forken alla vanliga ope­ra­tiv­sy­stem och erbjuder enkel in­teg­ra­tion av många tjänster.

Här förklarar vi steg för steg hur du kon­fi­gu­re­rar Nextcloud på Debian 12. För att göra detta måste du in­stal­le­ra en Apache2-webb­ser­ver, en MariaDB-server och PHP 8.2. Av sä­ker­hets­skäl visar vi dig hur du kon­fi­gu­re­rar en Un­com­pli­ca­ted Firewall (UFW) och de nöd­vän­di­ga SSL/TLS-cer­ti­fi­ka­ten.

Vilka krav måste uppfyllas?

Det finns bara några få krav för att in­stal­le­ra Nextcloud på Debian 12. Du behöver en server med Debian 12 in­stal­le­rat. Detta kräver minst 4 gigabyte RAM-minne och två pro­ces­so­rer. Det är också viktigt att du har icke-root-an­vän­daråt­komst med ad­mi­nist­ra­törs­rät­tig­he­ter och kon­fi­gu­re­rar ett domännamn som kan peka på serverns IP-adress.

In­stal­le­ra Apache2-webb­ser­ver

In­stal­le­ra först en Apache2-webb­ser­ver. För att göra detta upp­da­te­rar du Debian-pa­ke­tin­dex­et för att ladda ner den senaste versionen. Du kan använda kommandot apt update för detta:

sudo apt update
bash

Nu kan du in­stal­le­ra det senaste Apache2-paketet med följande kommando:

sudo apt install apache2
bash

Bekräfta in­stal­la­tio­nen med [y] och tryck på [Enter] för att starta in­stal­la­tio­nen.

Efter in­stal­la­tio­nen kon­trol­le­rar du tjänstens status med följande systemctl-kommandon:

sudo systemctl is-enabled apache2
sudo systemctl status apache2
bash

Med det första kommandot bör du se tjänsten starta au­to­ma­tiskt när du startar systemet. Statusen “aktiv” indikerar att Apache2 är redo att användas.

In­stal­le­ra brandvägg

Skydda ditt system och dina data med en brandvägg. Vi re­kom­men­de­rar Un­com­pli­ca­ted Firewall (UFW). För att ställa in den som standard öppnar du portar för OpenSSH, HTTP och HTTPS. In­stal­le­ra nu UFW-paketet med följande kommando:

sudo apt install ufw
bash

Bekräfta med [y] och slutför in­stal­la­tio­nen med [Enter]. Aktivera sedan OpenSSH och UFW med:

sudo ufw allow OpenSSH
sudo ufw enable
bash

För att starta UFW, bekräfta med [y]. Ett med­de­lan­de om att brand­väg­gen är aktiv och aktiverad vid systemstart visas nu. Lägg sedan till HTTP- och HTTPS-portarna som ska användas av webb­ser­vern. För att göra detta, kör följande kommando:

sudo ufw allow "WWW Full"
bash

Ladda UFW igen:

sudo ufw reload
bash

För att visa ak­ti­ve­ra­de regler, starta status för UFW. WWW Full bör vara aktiverat här.

sudo ufw status
bash

Aktivera PHP 8.2

För bästa möjliga prestanda och maximal kom­pa­ti­bi­li­tet re­kom­men­de­rar Nextcloud PHP 8.2. Detta ingår som standard i Debian 12, så du behöver bara in­stal­le­ra de nöd­vän­di­ga paketen. Mot­sva­ran­de kommando är:

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
bash

Bekräfta med [y] och [Enter]. Kon­trol­le­ra PHP-versionen och aktivera tilläggen:

php --version
php -m
bash

Starta nu PHP-kon­fi­gu­ra­tions­fi­len med nano-re­di­ge­ra­ren:

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

Du kan nu göra ändringar och anpassa kon­fi­gu­ra­tio­nen efter dina behov. Beroende på hur du vill använda Nextcloud på Debian 12 kan andra värden re­kom­men­de­ras. I så fall ändrar du in­ställ­ning­ar­na därefter. Kom­man­do­na ser ut så här.

Ställ in tidszonen:

data.timezone = Europe/Amsterdam
bash

Ändra pa­ra­met­rar­na för memory_limit, upload_max_filesize, post-max_size och max_execution_time:

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

Aktivera nu file_uploads och allow_url_fopen. I båda fallen ska värdet ställas in på ”On”:

file_uploads = On
allow_url_fopen = On
bash

In­ak­ti­ve­ra display_errors och output_buffering och ställ in re­spek­ti­ve värden på “Off”:

display_errors = Off
output_buffering = Off
bash

Aktivera PHP OPCache med följande kommando:

zend_extension=opcache
bash

Klistra in kon­fi­gu­ra­tio­nen i opcache-sektionen som re­kom­men­de­ras av Nextcloud för 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 = 1
bash

Slutligen sparar du filen och stänger nano-re­di­ge­ra­ren. Starta nu om Apache2-tjänsten:

sudo systemctl restart apache2
bash

Kon­fi­gu­re­ra MariaDB-servern

Nextcloud använder en MariaDB-server som databas. In­stal­le­ra den med följande kommando:

sudo apt install mariadb-server
bash

Bekräfta med [y] och [Enter]. Efter lyckad in­stal­la­tion, skriv in:

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
bash

Om servern fungerar utan problem, säkra systemet. Använd följande kommando för att skapa ett root-lösenord, ta bort anonyma användare och radera test­da­ta­ba­sen:

sudo mariadb-secure-installation
bash

Justera in­ställ­ning­ar­na genom att trycka på [y] för att godkänna och [n] för att avvisa.

Skapa databas och användare

Nu kan du skapa en ny databas och mot­sva­ran­de användare. För att logga in på MariaDB-servern använder du följande kommando och anger ditt root-lösenord:

sudo mariadb -u root -p
bash

Använd följande kommandon för att skapa en ny databas, en användare och mot­sva­ran­de lösenord:

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

Ersätt “your­Pas­sword” med ett starkt lösenord som du själv väljer. Kon­trol­le­ra slutligen om “nextcloudu­ser” har åtkomst till databasen “nextcloud_db”:

SHOW GRANTS FOR nextclouduser@localhost;
bash

Ladda ner aktuella källkoder

Ladda ner de aktuella käll­ko­der­na för att kunna använda Nextcloud på Debian 12:

sudo apt install curl unzip -y
bash

Byt till katalogen /var/www och ladda ner den senaste källkoden:

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

Packa upp filen och ändra ägaren till katalogen under www-data:

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

Kon­fi­gu­re­ra Apache2-värd

Kon­fi­gu­re­ra nu en virtuell Apache2-värd. Använd följande nano-kommando:

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

Anpassa do­män­nam­net och pa­ra­met­rar­na ErrorLog och CustomLog. Ersätt plats­hål­la­ren ”example” med ditt domännamn.

<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>
bash

Spara änd­ring­ar­na och stäng re­di­ge­ra­ren. Aktivera sedan kon­fi­gu­ra­tio­nen med följande kommando:

sudo a2ensite nextcloud.conf
sudo apachectl configtest
bash

När du får utdata “Syntax OK” startar du om Apache2 och tillämpar kon­fi­gu­ra­tio­nen av värden på den:

sudo systemctl restart apache2
bash

Säkerhet med SSL/TLS

Du kan nu använda Nextcloud på Debian 12 via ett osäkert HTTP-protokoll. Vi re­kom­men­de­rar att du kon­fi­gu­re­rar HTTPS för att skydda dina data. För att göra detta, välj:

sudo apt install certbot python3-certbot-apache
bash

Skapa ett SSL-cer­ti­fi­kat genom att ersätta plats­hål­la­ren “example” med ditt domännamn igen:

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

Slutför in­stal­la­tio­nen av Nextcloud på Debian 12

Nu kan du slutföra in­stal­la­tio­nen av Nextcloud på Debian 12. För att göra detta öppnar du din webb­lä­sa­re och anger do­män­nam­net för din Nextcloud-in­stal­la­tion. Ange ett an­vän­dar­namn och ditt lösenord för att skapa en ad­mi­nist­ra­tör. Ange sedan namnet på din databas, an­vän­dar­nam­net och lö­senor­det och klicka på “In­stal­le­ra”. Du kan ladda ner några kom­pa­tib­la appar eller hoppa över detta för till­fäl­let. Du omdi­ri­ge­ras till din in­stru­ment­pa­nel och kan nu använda Nextcloud.

Gå till huvudmeny