Webhuset
Tilbake til Nyheter
3 min lesetid

Slik setter du opp din egen filserver med Nextcloud på en VPS

Slik setter du opp din egen filserver med Nextcloud på en VPS

Fildeling trenger ikke å bety at bedriftsdokumenter flyttes ut av norsk jurisdiksjon. Med Nextcloud på en VPS fra Webhuset kan du sette opp en egen filserver i Norge, med brukere, deling, HTTPS og full kontroll over dataene dine.

Hva du trenger

Før du begynner, trenger du:

  • En VPS hos Webhuset
  • Et domenenavn eller subdomene, for eksempel filer.dittdomene.no
  • Ubuntu Server på VPS-en
  • SSH-tilgang til serveren
  • Litt erfaring med terminalen

Nextcloud kan installeres på flere måter. I denne guiden bruker vi Docker Compose, fordi det gjør installasjon, oppdateringer og flytting enklere.

Trinn 1: Pek domenet til VPS-en

Start med å opprette en DNS-peker for domenet du vil bruke.

Lag en A-record:

filer.dittdomene.no  A  <IP-adressen til VPS-en>

Når DNS-en peker riktig, kan du logge inn på serveren:

ssh root@<IP-adressen til VPS-en>

Oppdater pakkene før du går videre:

apt update && apt upgrade -y

Trinn 2: Installer Docker og Docker Compose

Installer Docker:

apt install ca-certificates curl gnupg -y
curl -fsSL https://get.docker.com | sh

Sjekk at Docker kjører:

docker --version
docker compose version

Lag deretter en egen mappe for Nextcloud:

mkdir -p /opt/nextcloud
cd /opt/nextcloud

Trinn 3: Lag Docker Compose-oppsettet

Opprett filen docker-compose.yml:

nano docker-compose.yml

Lim inn dette:

services:
  db:
    image: mariadb:11
    restart: always
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    volumes:
      - db:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: bytt-dette-root-passordet
      MYSQL_PASSWORD: bytt-dette-db-passordet
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud

  app:
    image: nextcloud:apache
    restart: always
    ports:
      - 8080:80
    links:
      - db
    volumes:
      - nextcloud:/var/www/html
    environment:
      MYSQL_PASSWORD: bytt-dette-db-passordet
      MYSQL_DATABASE: nextcloud
      MYSQL_USER: nextcloud
      MYSQL_HOST: db

volumes:
  db:
  nextcloud:

Bytt passordene før du starter.

Start Nextcloud:

docker compose up -d

Du kan nå teste løsningen på:

http://<IP-adressen til VPS-en>:8080

Trinn 4: Sett opp HTTPS med Nginx

For en filserver bør du alltid bruke HTTPS. Installer Nginx og Certbot:

apt install nginx certbot python3-certbot-nginx -y

Lag en Nginx-konfigurasjon:

nano /etc/nginx/sites-available/nextcloud

Lim inn:

server {
    listen 80;
    server_name filer.dittdomene.no;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Aktiver siden og hent sertifikat:

ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
certbot --nginx -d filer.dittdomene.no

Når dette er ferdig, åpner du:

https://filer.dittdomene.no

Trinn 5: Opprett administrator og brukere

Første gang du åpner Nextcloud, blir du bedt om å lage en administratorkonto.

Velg et sterkt passord, og bruk databasen du satte opp:

Database user: nextcloud
Database name: nextcloud
Database host: db

Etter installasjonen kan du opprette brukere for ansatte, prosjekter eller avdelinger. Gi bare tilgang til mappene hver person faktisk trenger. For en liten bedrift kan dette være nok:

  • Ledelse
  • Regnskap
  • Kunder
  • Prosjekter
  • Felles

Trinn 6: Gjør grunnleggende sikkerhetstiltak

Aktiver brannmur og tillat bare nødvendig trafikk:

ufw allow OpenSSH
ufw allow 'Nginx Full'
ufw enable

Hold serveren oppdatert:

apt update && apt upgrade -y
docker compose pull
docker compose up -d

I Nextcloud bør du også aktivere tofaktorautentisering for administratorbrukere og unngå delingslenker uten passord eller utløpsdato.

Anbefalinger

Nextcloud passer godt når du vil ha kontroll over filer, brukere og lagringssted. Det er spesielt nyttig for småbedrifter som håndterer kundedokumenter, kontrakter, regnskap eller interne prosjektfiler.

Samtidig er det ikke alltid riktig valg. Hvis du bare trenger enkel fillagring uten drift, oppdateringer og tilgangsstyring, kan en ferdig tjeneste være enklere. Velg selvhostet Nextcloud når kontroll, norsk jurisdiksjon og fleksibilitet veier tyngre enn lavest mulig driftsansvar.

Husk også backup. En filserver er ikke en backup i seg selv. Sett opp jevnlig sikkerhetskopi av både Nextcloud-data og databasen, og test at du faktisk kan gjenopprette filene.

Du har nå din egen filserver for bedriften, hostet på en norsk VPS og underlagt norsk lov og GDPR.