NextCloud (I) – schnell aufgebaut, für kleines Geld

 

Eine eigene Cloud haben, das wollte ich schon immer. Und das hat viele Gründe:

Da nervt DropBox, weil ich zu viele Geräte angemeldet habe, da beschleicht mich ein ungutes Gefühl dem OneDrive zu viele Daten anzuvertrauen. Und zudem machen diese Tools fast nur Datenhaltung, kaum Collaboration. Da hab ich doch letztens was von NextCloud gelesen, eine Open-Source-Entwicklung, die sehr viel mehr anbietet? Und dann rührt sich mal wieder mein Basteltrieb. Nun will ich aber ungern in meinem von Windows und Android geprägten Heimnetz ein Unix System aufsetzen. Nach den hier  „WordPress auf der WD My Cloud Ex2″

 

gemachten Erfahrungen auch nicht unbedingt wieder mein NAS System nötigen, zumal ich dann noch das Problem hätte, Zugriffe von außen in mein Heimnetz zu ermöglichen. Und dann fällt mir plötzlich dieses Lockvogel-Angebot auf: IONOS bewirbt einen vServer für 1€/Monat. Gibt es das? Das muss ich unbedingt ausprobieren.

Der Server für die eigene Cloud

Und so geht’s bzw. ging es bei mir:

Disclaimer:
Alle Preis- und sonstige Angaben zu den IONOS Servern und Domainen sind unverbindlich, die reflektieren den mir bekannten Stand vom April 2020 und können sich jederzeit ändern.

Also erstmal auf der Seite IONOS VPS Server  einen „VPS S“ bestellen. (Achtung: scrollt nach unten, der VPS XL kostet auch 1€ aber nach 6 Monaten dann 20€, nur ein VPS S kostet dauerhaft nur 1€/Monat.  Er beinhaltet derzeit 10GB Speicher (bei mir waren es noch 20) und 500MB RAM könnte also knapp werden, aber man kann es ja mal versuchen. Am besten auch gleich eine „.de“ Domain dazu bestellen kostet 1€ für das ganze erste Jahr, danach 1,30€/Monat.

Bei der Bestellung der Domain könnt ihr auf kostenpflichtige Zertifikate verzichten, für die Verschlüsselung richten wir später Let’s Encrypt Zertifikate ein, die sind kostenfrei.

Das macht dann in Summe 13€ für ein Jahr Spaß? Da sagt dann auch mein „Geiz ist Geil“-Herz nicht nein 🙂

Für die Konfiguration des Servers einfach ein Linux-Standard bestellen mit Standort = Deutschland, zunächst ohne Cloud-Backup! Das könnt ihr ggf. angehen, wenn ihr wirklich „produktiv“ gehen wollt und keine andere Lösung für das Backup habt.

Nach der Bezahlung (schnell geht es per PayPal) wird der Server erzeugt. Ihr bekommt außerdem Zugangsdaten zum IONOS-Control Panel. Dort könnt ihr den Server administrieren, sobald das Deployment abgeschlossen ist. Das ging bei mir innerhalb einiger Stunden, inzwischen bewirbt IONOS hier 55 Sekunden. Testet es aus.

Nun kommt ein  wenig Admin Arbeit:

Sofern unter „Netzwerk – Öffentliche IP“, noch kein Eintrag existiert, erzeugt bitte eine öffentliche IP und weist diese dem Server zu.

Sofern unter „Netzwerk – Firewall-Richtlinien solltet ihr dem Server die Richtlinie Linux zuweisen. Ihr braucht die Ports 22, 80 und 443 offen.

NextCloud – OpenSource für die eigene Cloud

Als nächstes müsst ihr leider den Server „platt machen“, im Control Panel könnt ihr über die Aktion „Image neu installieren“ ein passendes
Image auswählen. In diesem Fall wählt ihr kein natives Betriebssystem aus, sondern das angebotene NextCloud Image.Das spart einiges an Arbeit und es wird gleich eine funktionierende, auf CentOS basierende Installation erzeugt.

Nun dauert es wieder ein paar Minuten, bis das neue Image läuft. Im Control-Panel könnt ihr jetzt das Linux-Root Passwort und das NextCloud-Passwort auslesen.

Macht jetzt noch über die Domainverwaltung im Control Panel eine Weiterleitung der Domain auf die oben erzeugte öffentliche Adresse des Servers.

Zum jetzigen Zeitpunkt geht schon der Zugriff über Public IP mit http oder https auf die Nextcloud, euer Browser wird aber immer noch meckern. Bei der Verwendung des Domain-Namens wird NextCloud euch den Zugriff aus „untrusted Domains“ verweigern. Dazu später mehr. Keine Sorge, das ist „normal“.

Jetzt ein ganz klein wenig Unix:

Ihr solltet euch WinSCP installieren und damit eine Verbindung zum Server aufbauen. Die Bearbeitung von Dateien ist über WinSCP wesentlich einfacher als mit der Unix-Shell. Zudem ist Putty integriert, und ihr müsst nicht die KVM Konsole nutzen, die ansonsten im IONOS Portal verfügbar wäre.

Hinweis: Die Freigabe von Port 22 wie oben beschrieben ist essentiell. sobald der Port offen ist, werdet ihr eine Vielzahl von Angriffsversuchen im Security-Log sehen. Verwendet ein ausreichend sicheres Passwort, oder stellt gleich auf eine Public-Key Authentifizierung um. Dann ist euer vServer schon mal sicher.

Folgende Aktionen sind nun nötig, alle mit root-Rechten:

Sucht die Datei /etc/httpd/conf/httpd.conf. Dort sucht ihr den (Port-80) Eintrag des „VirtualHosts“ für NextCloud, der mit der Public IP verknüpft ist. Ersetzt dort die Public IP durch euren Domain Namen. Den vorhandenen virtual Host für https (port: 443) bitte auskommentieren.

Geht in die Config-Datei der NextCloud /home/Default/html/config/config.php und ergänzt eure Domain als „Trusted Domain“. Das sieht dann in etwa so aus:


‚trusted_domains‘ =>
array (
0 => ‚public ip‘,
1 => ‚domainname.de‘,
),

Das freie Zertifikat Let’s Encrypt

Dann wechselt ihr in die Shell (Putty aus WinSCP heraus, alternativ die KVM Konsole aus dem Control-Panel) und implementiert ein Let’s Encrypt Zertifikat. Dazu sind folgende Installationen notwendig (hier CENTOS 8).

# yum -y install epel-release  (war schon installiert)
# yum -y install yum-utils
# yum -y install certbot-apache

Mit dem folgenden Befehl sorgt ihr dann für die Einbindung eines Let’s Encrypt Zertifikates:

# certbot –apache

Das Tools scannt die CONF-Dateien des Apache-Services (httpd) durch und sollte eure oben eingetragene Domain finden. Es fragt euch ebenfalls nach eurer e-Mail Adresse, da diese zur Zertifikatserzeugung verwendet wird. Nach erfolgreicher Installation erzwingt ihr sicherheitshalber gleich den HTTPS Zugriff (entsprechende Anfrage beantworten.)

Nun muss noch über einen Eintrag in der CronTab dafür gesorgt werden, dass das Zertifikat regelmäßig erneuert wird, wenn es abgelaufen ist:

crontab -e (startet  VI)

folgende Zeile eintragen:

* */12 * * * /usr/bin/certbot renew >/dev/null 2>&1

mit :X beenden.

Zum Abschluss hab ich die Firewall Richtlinien noch mal angepasst und alle Ports außer 443 gesperrt. (den 22er muss ich dann jeweils erneut aufmachen, wenn ich mit WinSCP auf den Server will oder ich muss die KVM Konsole nutzen).

Alle weiteren administrativen Vorgänge laufen jetzt in der Anwendung NextCloud ab, was da zu tun ist, wird in einem weiteren Blog-Eintrag beschrieben.

 

Speichere in deinen Favoriten diesen permalink.

Über Uwe Sprenger

Uwe Sprenger ist ein IT Generalist, der in seiner Freizeit immer gerne neue Möglichkeiten ausprobiert. Und so ist hier dieses Blog zu Wordpress im entstehen. Beruflich bin ich (zur Zeit) intensiv im Lizenz Management unterwegs.  

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

11 − 10 =