NextCloud auf dem UberSpace

NextCloud ist ein Fork der bekannten Private Cloud Lösung OwnCloud. Der Fork wurde aus politischen Gründen vom ehemaligen OwnCloud Technikchef Frank Karlitschek ins Leben gerufen. Mit NextCloud lassen sich eigene Dateien über diverse Endgeräte verwalten. Zusätzlich gibt es viele zusätzliche Applikationen wie zum Beispiel eine Kontakt- und Kalenderverwaltung. Die Installation kann auch auf einer eigenen UberSpace Instanz betrieben werden. Im Folgenden werden die dafür benötigten Schritte erläutert. NextCloud kann direkt in ein Unterverzeichnis der Root Domain oder aber in eine eigene Subdomain installiert werden.


Eine eigene Subdomain kann über ein fertiges UberSpace Skript angelegt werden. Beim Domainprovider müssen dann die angegebenen ‚A‘ und ‚AAAA‘ Records eingetragen werden.

uberspace-add-domain -d mycloud.example.com -w

Als Ergebnis erscheinen die IPv4 und IPv6 Adressen, die für die DNS Einträge benötigt werden. Bis die DNS Einträge repliziert sind, können ein paar Minuten vergehen.

The webserver's configuration is adapted; it will get active within at most 5 minutes.
Now you can use the following records for your dns:
  A -> 185.26.xxx.xxx
  AAAA -> 2a00:d0c0:xxx:xxx:xxx:xxx:xxx:xxx

In der Zwischenzeit kann die Basisinstallation erledigt werden. Dazu wird die aktuelle Version heruntergeladen.

wget https://download.nextcloud.com/server/releases/nextcloud-9.0.51.zip

Das Zip wird direkt in das Webverzeichnis entpackt.

unzip nextcloud-9.0.51.zip -d /var/www/virtual/$USER/

Damit NextCloud auch sauber über die richtige URL erreichbar ist, wird das Verzeichnis noch umbenannt.

mv /var/www/virtual/$USER/nextcloud /var/www/virtual/$USER/mycloud.example.com

Soll keine eigene Subdomain verwendet werden, muss das Archiv in den /html Ordner entpackt werden.

unzip nextcloud-9.0.51.zip -d /var/www/virtual/$USER/html

Für einen bequemeren Zugriff lässt sich das Verzeichnis noch in das User Home verlinken. Dieser Schritt ist optional.

ln -s /var/www/virtual/$USER/mycloud.example.com/ ~/mycloud.example.com

Da NextCloud eine Datenbank benötigt, wird eine dedizierte neue Datenbank dafür angelegt. Dies kann über das phpMyAdmin WebInterface oder die Konsole erledigt werden. Weitere Infos dazu gibt es im UberSpace Wiki.

Bevor die Basisinstallation abgeschlossen wird, sollte die Verbindung noch per HTTPS verschlüsselt werden. Am einfachsten geht dies, indem die fertigen UberSpace Skripte verwendet werden, um ein kostenloses Let’s Encrypt Zertifikat zu erstellen. Das UberSpace Wiki beschreibt diesen Vorgang ganz hervorragend. Klick. Zusätzlich wird auf dem Webserver noch HSTS aktiviert, um spätere Meldungen im Webinterface zu vermeiden.

uberspace-configure-webserver enable hsts

Wer möchte, kann über die .htaccess den Einsatz von https erzwingen.

nano /var/www/virtual/$USER/mycloud.example.com/.htaccess
RewriteCond %{HTTPS} !=on
RewriteCond %{ENV:HTTPS} !=on
RewriteCond %{THE_REQUEST} !/(robots\.txt)\s [NC]
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

NextCloud UberSpace OwnCloud

Für die bessere Performance und zur Vermeidung von Konfigurationswarnungen im Webinterface wird noch Redis als Cache-Datenbank installiert. Diese Informationen stammen von metafakten.de.

test -d ~/service || uberspace-setup-svscan
uberspace-setup-redis
svc -du ~/service/redis
uberspace-install-pecl redis

Jetzt kann die NextCloud URL im Browser aufgerufen werden, um die Basisinstallation abzuschließen.

https://mycloud.example.com

Dazu müssen die Felder entsprechend ausgefüllt werden.

NextCloud UberSpace OwnCloud

Die Basisinstallation ist hiermit abgeschlossen. Damit NextCloud auch etwas von der Cache Datenbank mitbekommt, muss Redis noch in die config.php eingetragen werden.

nano /var/www/virtual/$USER/mycloud.example.com/config/config.php
  'filelocking.enabled' => 'true',
  'memcache.locking' => '\OC\Memcache\Redis',
  'memcache.local' => '\OC\Memcache\Redis',
  'redis' => array(
        'host'      => '/home/username/.redis/sock',
        'port'      => 0,
        'timeout'   => 0.0 
    ),

Wichtig ist noch den Wert „username“ an den eigenen Benutzernamen anzupassen! Unter dem Menüpunkt „Admin/Administration“ sollte jetzt auch keine Warnung erscheinen.

NextCloud UberSpace OwnCloud

Ab jetzt kann die Installation nach Belieben an die eigenen Bedürfnisse angepasst werden.