Zum Inhalt
NEXPAPER

Anfangen · Kapitel 1

nexpaper einrichten

nexpaper läuft als ein einziger Docker-Container auf deinem eigenen Server, etwa auf einem NAS oder einem kleinen Rechner im Haus. Dieses Kapitel führt bis zum ersten Konto. Wie nexpaper hinter einen Reverse Proxy kommt, welche Umgebungsvariablen es gibt und wie Updates gehen, steht ausführlich unter Selbst hosten.

Was du brauchst

  • Einen Rechner mit Docker und Docker Compose. Das Abbild gibt es für Prozessoren von Intel und AMD (amd64) und für ARM (arm64).
  • Einen Ordner auf einer lokalen Platte für die Daten. Die Datenbank von nexpaper ist eine SQLite-Datei, und die verträgt keine SMB- oder NFS-Freigabe, weil ihre Sperren über ein Netzlaufwerk nicht zuverlässig greifen. Die Dokumente selbst dürfen später auf einer Freigabe liegen.
  • Eine Authenticator-App auf dem Handy für den zweiten Faktor. Jede App, die Codes aus sechs Ziffern zeigt, ist recht. Wer lieber ohne App arbeitet, nimmt später einen Passkey.

Den Server starten

  1. Compose-Datei anlegen

    Lege in einem leeren Ordner eine Datei docker-compose.yml an. Für den Anfang genügt dieser Inhalt. Die ausführliche Fassung mit allen Erklärungen steht auf der Seite Selbst hosten.

    docker-compose.yml
    services:
      nexpaper:
        image: ghcr.io/derkezorm/nexpaper:latest
        container_name: nexpaper
        restart: unless-stopped
        ports:
          - "127.0.0.1:8560:8000"
        volumes:
          - ./data:/data
        environment:
          PUID: 1000
          PGID: 1000
          TZ: Europe/Berlin
  2. Container starten

    Im Ordner der Datei:

    Shell
    docker compose up -d
  3. Einrichtungscode holen

    Beim Start schreibt nexpaper einen Einrichtungscode ins Log. Bei jedem Start entsteht ein neuer, bis das erste Konto angelegt ist. Wer den Code lieber selbst festlegt, setzt NEXPAPER_SETUP_TOKEN.

    Shell
    docker logs nexpaper
  4. nexpaper öffnen

    Die Datei oben öffnet den Port 8560 nur auf dem Rechner selbst. Dort erreichst du nexpaper unter http://127.0.0.1:8560. Soll es im Heimnetz erreichbar sein, schreibst du 8560:8000 statt 127.0.0.1:8560:8000, aber nur für ein Netz, dem du traust. Ohne https gehen Passwörter und Codes sonst unverschlüsselt durchs Netz. Für den Alltag gehört ein Reverse Proxy mit https davor, schon weil die Kamera im Browser und die Passkeys eine https-Adresse verlangen.

Das erste Konto anlegen

Die erste Seite heißt „nexpaper einrichten“. Das Konto, das du hier anlegst, betreibt den Server. Es lädt die anderen ein und darf jede Einstellung ändern. In die persönlichen Tresore der anderen sieht es nicht. Der Einrichtungscode sorgt dafür, dass niemand, der eine frische Instanz zufällig zuerst erreicht, sie in Besitz nehmen kann.

nexpaper einrichten
Die Seite „nexpaper einrichten“ mit den Feldern Einrichtungscode, Name und Passwort und dem Knopf „Konto anlegen“.
Die erste Seite einer frischen Instanz.
  1. Code, Name und Passwort eintragen

    In „Einrichtungscode“ kommt der Code aus dem Log. Der „Name“ ist der, mit dem du dich anmeldest: 2 bis 64 Zeichen aus Buchstaben ohne Umlaute, Ziffern, Punkt, Bindestrich oder Unterstrich. Das „Passwort“ hat mindestens 12 Zeichen. Dann tippst du auf „Konto anlegen“.

  2. Den zweiten Faktor einrichten

    Gleich danach folgt „Zweiten Faktor einrichten“. Ab Werk ist er für jedes Konto Pflicht, das sich mit Passwort anmeldet. Scanne den QR-Code mit deiner Authenticator-App oder tippe den Schlüssel darunter ab, trag bei „Code aus der App“ die sechs Ziffern ein, die die App zeigt, und drück „Einschalten“.

  3. Die Wiederherstellungscodes aufheben

    Jetzt zeigt nexpaper acht Wiederherstellungscodes, und zwar nur dieses eine Mal. Jeder meldet dich einmal an, wenn das Handy nicht zur Hand ist. Mit „Kopieren“ oder „Als Datei speichern“ nimmst du sie mit. Bewahre sie getrennt vom Handy auf und tippe dann auf „Ich habe sie, weiter“.

Danach bist du angemeldet. Am Rechner siehst du das Archiv, noch leer, auf dem Handy den Schnell-Upload. Einen Passkey, also die Anmeldung mit Fingerabdruck, Gesicht oder der PIN des Geräts, legst du später unter „Mein Konto“, Reiter „Sicherheit“ an. Er zählt selbst als zwei Faktoren. Passkeys brauchen eine Adresse mit https, und der Betreiber muss dafür vorher die öffentliche Adresse eintragen (siehe unten). Nur auf localhost gehen sie auch ohne.

Was gleich danach sinnvoll ist

  • Die öffentliche Adresse eintragen. Unter „Einstellungen“, Reiter „Anmeldung“, steht das Feld „Öffentliche Adresse“. Einladungen, Web Push und Passkeys brauchen sie, ebenso ein Anmeldeanbieter. Trag die Adresse ein, unter der man nexpaper erreicht, also die mit https.
  • Die Sicherung kennen. Ab Werk sichert nexpaper jede Nacht und behält sieben Sicherungen im Datenordner auf demselben Server. Eine Sicherung enthält die Konten, die Einstellungen, die Zuordnung der Dokumente und den Server-Schlüssel, aber nicht die Dokumente selbst. Die liegen als lesbare Dateien im Ordner dokumente und gehören in die Datensicherung, die dein Server ohnehin macht. Mehr im Kapitel Betrieb.
  • Vor dem Weg ins Internet nachsehen. nexpaper gehört am liebsten ins eigene Netz, von unterwegs per VPN. Wer es trotzdem öffnet, findet unter „Einstellungen“, Reiter „Anmeldung“, die Karte „Bereit fürs Internet?“, die acht Punkte selbst prüft. Mehr dazu unter Sicherheit.
  • Die anderen einladen. Wie das geht, steht im nächsten Kapitel, Leute einladen und Tresore teilen.
Einstellungen
Einstellungen, Reiter „Anmeldung“ mit drei Karten: „Anmeldung“ mit „Anmeldung mit Passwort“, der öffentlichen Adresse https://papier.example.com und „Zweiten Faktor verlangen“, „Anmeldeanbieter“ mit dem Eintrag „Familien-Login“ (https://id.example.com, aktiv) und „authentik in einem Schritt“ mit Adresse, API-Token und „Stattdessen Blueprint herunterladen“.
Der Reiter „Anmeldung“ mit der öffentlichen Adresse.

Gut zu wissenWiederherstellungscodes ersetzen nur den Code aus der App, nicht dein Passwort. Vergisst du es, setzt niemand eines für dich: Du bekommst einen Link, mit dem du selbst ein neues wählst. Den schickt dir ein anderer Betreiber, oder du tippst bei der Anmeldung auf „Passwort vergessen?“, sobald der Server Mails verschicken kann und du eine Mailadresse im Konto hast. Wer als Einziger betreibt, sollte also früh einen Mailserver eintragen oder eine zweite Person zum Betreiber machen. Ohne beides hilft ein Befehl im Container, siehe das Kapitel Dein Konto.