Normale Ansicht

Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeHaupt-Feeds

Schleswig-Holstein setzt auf Open-Source statt Microsoft

Von: MK
09. April 2024 um 06:10

Immer mehr Länder und Behörden weltweit streben danach, die Abhängigkeit von einzelnen, proprietären Anbietern zu verringern und Open-Source-Software zu fördern. Dieser Trend zeigt sich auch in Deutschland, wo das Bundesland Schleswig-Holstein seine Bemühungen verstärkt von Microsoft-Produkten auf Open-Source umzusteigen. Die Landesregierung hat beschlossen, die PCs der rund 30.000 Landesbediensteten auf Open-Source-Lösungen umzustellen und hin zu...

Der Beitrag Schleswig-Holstein setzt auf Open-Source statt Microsoft erschien zuerst auf MichlFranken.

Neue Services: Hat.sh & Wormhole

Von: dominion
06. September 2023 um 10:02

Zwei neue adminForge Services können ab sofort genutzt werden. 1) Hat.sh ist eine Webanwendung, die eine sichere lokale Dateiverschlüsselung im Browser ermöglicht. Sie ist schnell, sicher und verwendet moderne kryptografische Algorithmen mit Chunked-AEAD-Stream-Verschlüsselung/Entschlüsselung. 2)...

by adminForge.

BSL statt MPL: HashiCorp passt sich einer neuen Open-Source-Ära an

14. August 2023 um 16:00

Open-Source-Software nachhaltig zu entwickeln, wird immer schwieriger. Willkommen im Zeitalter von "Nur schauen, nicht anfassen" für kommerzielle Rivalen.

Das in San Francisco ansässige Softwareunternehmen HashiCorp, bekannt für seine Cloud-Tools wie Terraform, Vagrant oder Vault, ändert seine Lizenzbedingungen. In einer Ankündigung wird der Wechsel von der Mozilla Public License 2.0 zur Business Source License mit der Gewährleistung kontinuerlicher Investitionen des Unternehmens in seine Community begründet.

HashiCorp hält weiterhin daran fest, seinen Quellcode frei verfügbar zu machen. Allerdings gibt die BSL dem Unternehmen mehr Kontrolle darüber, wer den Code kommerziell nutzen darf. Mit anderen Worten, wer Software von HashiCorp produktiv nutzt und sie für ein Konkurrenzprodukt einsetzen möchte, ist von nun an nicht nur bösen Blicken, sondern auch rechtlichen Hürden ausgesetzt.

In guter Gesellschaft

Einige Unternehmen haben diesen Schritt bereits vollzogen und sind auf unfreie Lizenzmodelle umgestiegen. Couchbase, Sentry und MariaDB MaxScale sind einige Beispiele dafür. Dies wirft natürlich die Frage auf, ob wir uns von der Idee freier Open-Source-Software verabschieden müssen. Die Omnipräsenz der Cloud-Industrie, die seit den 2010er-Jahren sich großer Beliebtheit erfreut, droht ernsthaft, die FOSS-Welt zu destabilisieren.

Stellt dir vor, du hast einen reichen Obstgarten erschaffen, in dem jeder sich frei der Früchte bedienen kann. Größzügig lädst du alle ein, sich nach Belieben zu bedienen und empfiehlst ihnen, selber Bäume zu pflanzen oder die Saaten weiterzuverbreiten. Eines Tages bemerkt ihr jedoch, dass einige Gäste die Früchte einsacken, sie auf eigenen Märkten verkaufen und die Profite einsacken, ohne selbst an die Ursprungscommunity etwas zurückzugegeben. Klingt unfair? Genau das passiert momentan in der Open-Source-Welt.

Damit wird Open Source zwar nicht von Tisch gewischt, sondern in eine Richtung gelenkt, die den freien ungehinderten Austausch unabhängig von gewerblichen Interessen einschränkt. Konkret wackelt dabei das 6. Kriterium der Open-Source-Definition (OSD), das eine Unterscheidung nach Einsatzfeldern ausschließt.

HashiCorp betont, dass es sich weiterhin seiner Community, seinen Partnern und Kunden verpflichtet sieht. Nur die Zeit wird zeigen, ob diese Lizenzänderungen die richtigen Schritte auf dem Weg dorthin sind. Einerseits werden Möglichkeiten von Forks eingeschränkt, andererseits ist niemandem geholfen, wenn die Weiterentwicklung durch HashiCorp auf dem Spiel steht, nur, weil externe Akteure bezogen auf die Einnahmen sinnbildlich das Wasser abgraben. Die Leute, die Software entwickeln, müssen auch von etwas bezahlt werden.

Edit (20:25 Uhr): MariaDB setzt die BSL für MaxScale ein, nicht jedoch für die Datenbank MariaDB Server. Danke für den Hinweis, Jens.

Update (20:30 Uhr): Ggfs. werde ich mich mit der BSL noch einmal in einem gesonderten Artikel beschäftigen, aber ein kleines Detail ist hierbei vllt. noch erwähnenswert, um den Blick auf die Sache zu ändern. Die von HashiCorp verwendete Form der BSL setzt auf eine Art Embargozeit. Nach 4 Jahren der Veröffentlichung eines nach BSL lizenzierten Werkes in einer spezifischen Version, greift folgender Passus:

Effective on the Change Date, or the fourth anniversary of the first publicly available distribution of a specific version of the Licensed Work under this License, whichever comes first, the Licensor hereby grants you rights under the terms of the Change License, and the rights granted in the paragraph above terminate.

Als Change License wurde die MPL 2.0 festgelegt.

Stellungnahme von SUSE zu den jüngsten Entwicklungen bei Red Hat

Von: MK
03. Juli 2023 um 06:50

Als Reaktion auf die Entscheidung von Red Hat bei RHEL/CentOS eine Paywall einzuführen, hat SUSE nun eine offizielle Erklärung abgegeben um wachsenden Sorgen der Open Source Community zu begegnen. Vergangene Woche schlug die Entscheidung von Red Hat, den Zugang zu seinem RHEL Quellcode einzuschränken große Wellen. Die Reaktion der Open Source Gemeinschaft fiel erwartungsgemäß mehrheitlich...

Der Beitrag Stellungnahme von SUSE zu den jüngsten Entwicklungen bei Red Hat erschien zuerst auf MichlFranken.

Stellungnahme von SUSE zu den jüngsten Entwicklungen bei Red Hat

Von: MK
03. Juli 2023 um 06:50

Als Reaktion auf die Entscheidung von Red Hat bei RHEL/CentOS eine Paywall einzuführen, hat SUSE nun eine offizielle Erklärung abgegeben um wachsenden Sorgen der Open Source Community zu begegnen. Vergangene Woche schlug die Entscheidung von Red Hat, den Zugang zu seinem RHEL Quellcode einzuschränken große Wellen. Die Reaktion der Open Source Gemeinschaft fiel erwartungsgemäß mehrheitlich...

Der Beitrag Stellungnahme von SUSE zu den jüngsten Entwicklungen bei Red Hat erschien zuerst auf MichlFranken.

Was ich 2022 für/mit FLOSS getan habe

02. Januar 2023 um 06:00

In diesem Artikel führe ich auf, was ich 2022 für bzw. mit FLOSS getan habe. FLOSS steht dabei für Free/Libre Open Source Software. Es geht dabei nicht um weltbewegende Projekte oder große Beiträge. Es ist mehr eine Sammlung von Kleinigkeiten. Dennoch möchte ich diese öffentlich machen, um zu zeigen, was man mit FLOSS tun und wie man sich beteiligen kann.

Ansible-Rolle zum Deployment von Nextcloud und MariaDB in einem Podman Pod

Dieses kleine Projekt ist etwas verrückt und für den Einsatz in Produktion vermutlich nicht geeignet. Doch konnte ich mich gleich mit zwei Themen intensiv beschäftigen, die mich interessieren, Ansible und Podman. Mein Ziel war es, die Anwendungen Nextcloud und MariaDB zur Bereitstellung einer privaten Cloud in einem rootless Podman Pod zu provisionieren. Die ganze Geschichte kann in der kleinen Serie Nextcloud im Container nachgelesen werden.

Die Quellen der Ansible-Rolle gibt es auf:

RHEL-Patchmanagement

Seit 2016 entwickle und pflege ich ein Patch-Management für Red Hat Enterprise Linux Systeme. Dieses Jahr habe ich Release 3.3.0 und 3.3.1 veröffentlicht.

Mit diesem Projekt habe ich ein Patch-Management gebaut, welches sehr gut die Anforderungen meines Arbeitgebers abdeckt und sich ohne Zusatz-Subskriptionen wie das Smart-Management-Addon für RHEL-Subskriptionen realisieren lässt. Seit 2018 läuft es vollautomatisch und stellt sicher, dass verfügbare Sicherheits-Updates mindestens einmal pro Monat installiert werden.

Es erfreut sich auch außerhalb unserer Organisation einiger Beliebtheit:

Drei Ansible-Rollen dank Open Source

Häufig haben Unternehmen/Organisationen sehr individuelle Anforderungen, für die keine fertigen Lösungen von der Stange existieren. Open Source schafft die Möglichkeit, sich selbst helfen zu können. So habe ich ohne großen Aufwand Ansible-Rollen geschrieben, um Proxy-Einstellungen für den subscription-manager und YUM bzw. DNF zu konfigurieren sowie um Red Hat Enterprise Linux registrieren und den System Purpose konfigurieren zu können.

Quellen:

Meine erste Linux System Role

Die Linux System Roles sind eine Sammlung von Ansible-Rollen zur Konfiguration diverser Betriebssystem-Komponenten von Linux. Ziel der Sammlung ist es, Ansible-Rollen zur einfachen Nutzung durch Systemadministratoren bereitzustellen.

Ich habe viel über den Entwicklungsprozess von Ansible-Rollen gelernt, bis meine erste Rolle pam_pwd aufgenommen wurde. Mit dieser Rolle kann PAM konfiguriert werden, um eine Passwort-Richtlinie zu etablieren.

Sie befindet sich noch in einem sehr frühen Stadium. Nutzt sie auf eigene Gefahr. Der Lerneffekt für mich war jedoch sehr groß, so dass sich die Arbeit in meinen Augen gelohnt hat.

Quelle:

Mit Ansible Labor-Umgebungen in KVM und vSphere provisionieren

Ich benötige immer mal wieder Labor-Umgebungen mit frischen Betriebssystem-Installationen für verschiedene Versuche und Tests. Um die Provisionierung dieser Laborumgebung zu vereinfachen und zu beschleunigen, habe ich zwei Ansible-Rollen erstellt, mit denen sich diese Labor-Umgebungen auf KVM- und vSphere-Hypervisoren provisionieren lassen:

Blogs, Issue-Reports Pull-Requests

Man kann FLOSS auch dadurch unterstützen, indem man darüber spricht bzw. schreibt. Letzteres tue ich in diesem Blog. Der My-IT-Brain Jahresrückblick 2022 gibt einen Überblick darüber.

Hinzu kommen kleine Beiträge in Form von Issue-Reports und Pull-Requests. Details kann man meiner Contribution Activity auf Github entnehmen.

Spenden

Viele FLOSS-Projekte werden ohne funktionierendes Geschäftsmodell von Menschen in deren Freizeit entwickelt und gewartet. Diese Projekte sind auf Spenden angewiesen.

Ich setze mir jedes Jahr ein persönliches Budget, aus dem ich an die Projekte spende, deren Anwendungen ich häufig benutze oder die mir besonders sympathisch sind. Das ist nicht immer ganz einfach. Ich persönlich bevorzuge eine Banküberweisung oder eine Einmalzahlung per Kreditkarte. Mich erst bei einem Zahlungsdienstleister anzumelden stellt für mich meist eine zu hohe Hürde dar.

Fazit

Es muss nicht das eine große Projekt sein. Auch mit der Summe kleiner Teile kann man eine Menge erreichen.

FLOSS hat mir geholfen, viele meiner Anforderungen zu erfüllen. Für mich ist es selbstverständlich, die Ergebnisse dieser Arbeit ebenfalls wieder unter einer freien Lizenz zu veröffentlichen, um auf diesem Weg etwas an die FLOSS-Gemeinschaft zurückzugeben. Doch denkt immer daran: „Nutzung auf eigene Gefahr.“

Microsoft oder Apple? Wer macht mehr für FOSS & Linux? (Linux Podcast)

16. Dezember 2022 um 15:30

Wusstest Du, dass sowohl Microsoft als auch Apple sich an verschiedenen Open Source Software Projekten beteiligen? In dieser Folge gehen wir auf die Frage ein, welches der beiden Unternehmen eigentlich mehr zu FOSS und Linux beiträgt bzw. ob Microsoft hier nicht mehr Respekt für seine umfangreichen Beiträge verdient. Interessiert? Dann gleich reinhören.

Der Beitrag Microsoft oder Apple? Wer macht mehr für FOSS & Linux? (Linux Podcast) erschien zuerst auf MichlFranken.

20. Kieler Open Source und Linux Tage – Call for Paper Phase gestartet

05. Juli 2022 um 07:00

Die Kieler Open Source und Linux Tage gehen in die Vorbereitungsphase. Die „Call for Papers“ Phase wurde nun gestartet und richtet sich an Vortragende oder Interessierte, die etwas einbringen möchten. Dieses Jahr finden die Kieler Open Source und Linux Tage zum zwanzigsten Mal statt. Wer sich am Jubiläum beteiligen möchte, kann sich melden. Der Einsendeschluss...

Der Beitrag 20. Kieler Open Source und Linux Tage – Call for Paper Phase gestartet erschien zuerst auf MichlFranken.

Open Source Software ist toll? Spenden dafür aber auch!

05. Juni 2022 um 15:30

Hey Leute, wie ihr wisst, als Linux Anwender setzt man in der Regel viele quelloffene Programme ein, auch Open Source Software genannt. Installierst Du eine beliebige Linux Distribution, dann ist ein Großteil der mitinstallierten Pakete Open Source. Du musst dafür kein Cent bezahlen. Klingt super. Man profitiert von allen Vorteilen und muss dafür nichts zahlen....

Der Beitrag Open Source Software ist toll? Spenden dafür aber auch! erschien zuerst auf MichlFranken.

Berufliche Veränderung im FOSS Umfeld? Open Source JobHub kann helfen

24. Mai 2022 um 11:23

Stellenbörsen kennen wir alle. Doch wo suchen, wenn man sich beruflich dahingehend verändern möchte, als dass man im FOSS Umfeld tätig sein will? Hier kann Open Source JobHub helfen. Hier finden sich weltweite Vakanzen bei allen möglichen Firmen, darunter auch viele namhafte Größen wie z.B. Suse oder TUXEDO Computers, grenzt man auf Deutschland als Lokation...

Der Beitrag Berufliche Veränderung im FOSS Umfeld? Open Source JobHub kann helfen erschien zuerst auf MichlFranken.

Veranstaltungshinweis: Linux Presentation Day 2022.2 am 14. Mai 2022

10. Mai 2022 um 09:24
Heute mache ich gerne Werbung für meinen Kollegen Jean von LinuxGuides, der mit seinem Tux-Tage Team am kommenden Wochenende den Linux Presentation Day als Onlineveranstaltung ausrichtet. Die Veranstaltung dient der Vorstellung verschiedener freier Software rundum Linux. Doch nicht nur Technik Geeks werden angesprochen, ein weiterer Schwerpunkt der Veranstaltung ist alternative und freie Software für Schulen...

OpenSource Software Überblick für System Administratoren

19. Januar 2017 um 14:35

Unter dem Namen IT Landscape for sysadmins ist eine kleine aber feine Übersicht diverser Open-Source Projekte zu finden.

Unterteilt in Kategorien wie Protokolle, Cloud & Virtualisierung, Storage, Monitoring, Support Systeme, Messaging, Automation oder Essentials finden sich viele bekannte FOSS (Free and Open-Source-Software) Tools.

IT-Landscape-for-sysadminsSolche Landschaftsgrafiken sind ja vom Marketing, Social Media oder IT-Dienstleistern durchaus bekannt, bisher ist mir aber keine Übersicht für Open-Source-Software untergekommen.
Umso besser, dass Alen Krmelj Mitte 2015 das Projekt Sysadmin Open Source Landscape ins Leben gerufen hat.

IT-LandscapeDie Sammlung kann sich jetzt schon sehen lassen und darf dank ihrer offenen Architektur von allen erweitert werden. Dazu genügt ein Klick auf das Plus-Symbol in der jeweiligen Kategorie.

Wer sich die IT-Landschaft ausdrucken möchte, der kann dank der verschiedenen Ansichten (oben rechts) eine einfache Liste abspeichern. 

Fazit

Die Seite ist leider nicht mehr online

 

Gastbeitrag: Debian Server mit Nextcloud

Von: Niko
01. November 2020 um 11:50

Andreas hat einen Nextcloud-Server auf Debian-Basis installiert und dabei seine Vorgehensweise dokumentiert. Diese basiert zum großen Teil, aber nicht ausschließlich auf meinem Homeserver-Tutorial zu Ubuntu 18.04 [Homeserver/NAS mit Ubuntu 18.04: Teil 1, Einleitung, Hardware und Kosten]. Jedoch mit einigen Abweichungen, da sich Debian und Ubuntu doch in einigen Details unterscheiden.

Die Dokumentation seiner Vorgehensweise hat er mit freundlicherweise zur Veröffentlichung zukommen lassen.


In dieser Anleitung geht es darum Debian Buster (10) Server zu installieren, dazu wird das Serversystem ohne Gui und lediglich mit OpenSSH sowie Systemwerkzeugen installiert.

Im Rechner befindet sich eine SSD für das System und eine große HDD als Datenlaufwerk, diese HDD wird während der Installation von Debian Server als /mnt/storage eingebunden.

Nextcloud soll dann so funktionieren das man über die Sambafreigabe die Daten im Netzwerk überspielt und diese Daten einfach in Nextcloud übernimmt, also nicht über Internet hochladen, sondern einfach über das eigene Netzwerk einspielt.

Debian Server ist bereits installiert und der User ist angemeldet, wir fahren wie folgt fort:

Den eigenen User zu sudo hinzufügen:

su -

Passwort für root eingeben:

apt-get update
apt-get install sudo
sudo visudo

In der Konfigurationsdatei ganz unten eingeben:

deinuser ALL=(ALL:ALL) ALL

Speichern und beenden.

exit

Siehe Seite: https://devconnected.com/how-to-add-a-user-to-sudoers-on-debian-10-buster/
Rechner für die Internetfreigabe einrichten, siehe auch Seite: https://www.techgrube.de/tutorials/homeserver-nas-mit-ubuntu-18-04-teil-3-grundkonfiguration

Samba Freigaben

Den Samba-Server mit folgendem Befehl installieren.

sudo apt install samba samba-common

Während der Installation die Abfrage mit „nein“ beantworten. Anschließend die Systemuser für die Samba-Freigaben anlegen.

sudo adduser --no-create-home --disabled-login --shell /bin/false heimnetz

Bei der Abfrage nach Namen usw. muss man nichts eingeben, einfach Enter drücken, am Ende mit Ja bestätigen.

sudo smbpasswd -a heimnetz

Neues Passwort für den User „heimnetz“ eingeben und ein weiteres Mal bestätigen. Nun werden die Ordner für die Samba-Freigaben angelegt und die Benutzerrechte vergeben.

sudo mkdir /mnt/storage/shares

cd /mnt/storage/shares

sudo mkdir Daten

sudo chown -R heimnetz: /mnt/storage/shares

Anschließend erfolgt die Konfiguration der Samba-Freigaben.

sudo nano /etc/samba/smb.conf

Zum Einrichten der Freigaben, ganz unten in der Konfigurationsdatei folgendes einfügen:

[Daten]
comment = Daten
path = /mnt/storage/shares/Daten
write list = heimnetz
valid users = heimnetz
force user = heimnetz

Speichern und beenden, danach Samba neustarten:

sudo systemctl restart smbd.service

weitere Infos siehe hier: https://www.techgrube.de/tutorials/homeserver-nas-mit-ubuntu-18-
04-teil-4-dateifreigaben-im-heimnetz

Apache Webserver und Datenbank-Server installieren und einrichten

su -

Passwort eingeben. Nun den Apache-Webserver, MaridaDB-Datenbankserver und weitere benötigte Pakete installieren.

apt-get install apache2 libapache2-mod-php mariadb-server php-xml php-cli phpcgi
 php-mysql php-mbstring php-gd php-curl php-zip php-intl php-bcmath php-gmp
 php-imagick wget unzip -y

Anschließend wird die PHP-Konfigurationsdatei geöffnet mit:

nano /etc/php/7.3/apache2/php.ini

Dort, in dieser Datei folgende empfohlene Änderungen vornehmen: Die jeweiligen Abschnitte über STRG+W suchen

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

Dann speichern und beenden, danach folgende Befehle ausführen, damit die geänderte Konfiguration übernommen wird.

systemctl start apache2
systemctl start mariadb
systemctl enable apache2
systemctl enable mariadb

Nun wird die Datenbank für Nextcloud konfiguriert. Zuerst loggt man sich im Datenbankserver ein.

Anschließend wird die Datenbank für NExtcloud angelegt. Achtung: ‚passwort‘ unbedingt durch ein selbst gewähltes Passwort ersetzen.

mysql -u root -p
CREATE DATABASE nextclouddb;

CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'password';

GRANT ALL ON nextclouddb.* TO 'nextclouduser'@'localhost';

FLUSH PRIVILEGES;

EXIT;

Nach einem weiteren „exit“ arbeitet man wieder mit normalen Userrechten.

exit

Nextcloud Installieren

siehe Seite: https://www.howtoforge.de/anleitung/wie-man-nextcloud-unter-debian-10-installiert/

zur Installation von nextcloud gehen wir dann wieder laut der anderen Seite vor https://www.techgrube.de/tutorials/homeserver-nas-mit-ubuntu-18-04-teil-5-nextcloud ab „Installation von nextcloud….“

cd ~
wget https://download.nextcloud.com/server/releases/latest.tar.bz2
sudo tar -xjvf latest.tar.bz2 -C /var/www/html/
sudo chown -R www-data:www-data /var/www/html/nextcloud

jetzt geht es wieder nach der anderen Anleitung weiter, https://www.howtoforge.de/anleitung/wie-man-nextcloud-unter-debian-10-installiert/ ab „Apache für NextCloud konfigurieren“

su -

Passwort eingeben.

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

dort folgendes einfügen:

<VirtualHost *:80>
ServerAdmin name@domain.de
DocumentRoot /var/www/html/nextcloud/
ServerName nextcloud.example.com
Alias /nextcloud "/var/www/html/nextcloud/"

<Directory /var/www/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
Require all granted

<IfModule mod_dav.c>
Dav off
</IfModule>

SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Dann folgende Befehle ausführen um die geänderten Konfigurationen zu aktivieren.

a2ensite nextcloud.conf
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime

Anschließend den Apachen neustarten:

systemctl restart apache2

Let’s Encrypt Zertifikat einrichten

Zuerst wird Certbot für Apache installiert und anschließend das Let’s Encrypt Zertifikat ausgestellt.

apt-get install python-certbot-apache -y
certbot --apache -d nextcloud.example.com

Die eigene Adresse einfügen, danach die Anleitung von Techgrube.de weiter befolgen:

exit
sudo mkdir -p /mnt/storage/nextcloud
sudo chown -R www-data:www-data /mnt/storage/nextcloud

Danach kann man Nextcloud über https://domain.deineEndung aufrufen.

Man vergibt einen User samt Passwort:

Datenbankbenutzer ist: nextclouduser
Datenbankpasswort ist das vergebene Passwort: password
Datenbank-Name ist: nextclouddb
der Eintrag: „localhost“ bleibt bestehen

Jetzt führt man noch aus:

sudo apt install smbclient
sudo systemctl restart apache2

Hier geht es weiter mit der Anleitung: https://www.techgrube.de/tutorials/homeserver-nas-mit-ubuntu-18-04-teil-5-nextcloud

Externes Laufwerk in Nextcloud einbinden

Es wird jetzt noch das „externe“ Laufwerk eingebunden.

Bei den Apps findet man unter dem Punkt deaktivierte Apps die App External Storage Support, welche mit einem Klick auf aktivieren verfügbar gemacht wird.

Zum Einbinden der vorhandenen Ordner gehen wir wieder auf das Symbol in der rechten oberen Ecke und anschließend auf
Einstellungen. Im linken Bereich findet man verwirrender Weise zwei Punkte mit dem Namen „Externe Speicher„. Zum Einrichten benötigen wir den unteren.

  • Ordnername wird entsprechend der Freigabe benannt. Z.B. lokale Videos
  • Externer Speicher ist SMB/CIFS
  • Authentifizierung ist Benutzername und Passwort
  • Konfiguration:
    • Host ist localhost
      Share ist der Name der Freigabe. Z.B. Video
      Entfernter Unterordner bleibt leer
      Domain bleibt ebenfalls leer
      Benutzername ist heimnetz oder heimgast. Je nachdem ob dieDateien mit Schreibrechten (heimnetz) oder aus Sicherheitsgründen nur mit Leserechten (heimgast) eingebunden werden sollen
      Passwort ist das zum Benutzername gehörende Passwort

Ein Klick auf den kleinen Haken am Ende des Formularfeldes bindet den Ordner in Nextcloud ein.

Optionale Nextcloud-Konfigurationen

Da NextCloud ab und zu Dateien blockiert (File is locked), füge ich folgendes in der config.php ein:

sudo nano /var/www/html/nextcloud/config/config.php

unter „dbhost“

'maintenance' => true,

speichern und beenden, und nochmals

sudo nano /var/www/html/nextcloud/config/config.php

dann füge ich unter „maintenance…“ ein:

'filelocking.enabled' => false,

wieder speichern und beenden und nochmals

sudo nano /var/www/html/nextcloud/config/config.php

Dort ändere ich unter „maintenance“ auf „false“ um. Datei wieder speichern und schließen. Nextcloud ist jetzt Einsatzbereit.

Ab und zu die Dateien neu durchzählen lassen mache ich mit:

sudo -u www-data php /var/www/html/nextcloud/occ files:scan --all

Vielen Dank, Andreas, für die Dokumentation.

Gastbeitrag: Debian Server mit Nextcloud ist ein Beitrag von techgrube.de.

Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1

Von: Niko
16. August 2020 um 11:27

Mittlerweile ist Ubuntu 20.04 erschienen. Hierbei handelt es sich wieder um eine LTS-Version (long term support), die 5 Jahre mit Updates versorgt wird. Also bis April 2025. Damit wird Ubuntu 18.04 abgelöst, auf welchem die bisherige Homeserver-Anleitung basiert.

Ubuntu 18.04 war ebenfalls eine LTS-Version und wird noch bis April 2023 mit Sicherheitsupdates versorgt. Wer also bereits einen Server, basierend auf der vorherigen Anleitung betreibt, der kann diesen auch noch viele Jahre sicher weiterverwenden.

Wer jedoch ein eigenes NAS auf Ubuntu-Server-Basis neu einrichten möchte, der greift jetzt natürlich zur Version 20.04.

Im laufenden Betrieb wird man keine großen Änderungen zwischen Ubuntu 18.04. und 20.04. feststellen. Jedenfalls bei der Server-Version. Trotzdem haben sich einige Dinge geändert.

Bisher wurden zwei Installationsmedien angeboten. Eine mit dem klassischen Debian-Installer (Alternate-CD) und eine mit der Eigenentwicklung Subiquity. Mit Ubuntu 20.04 wurde die Alternate-CD eingestellt. Der Subiquity-Installer ist somit der neue Standard und die bisherige Artikelreihe funktioniert an dieser Stelle nicht mehr.

Unter anderem aus diesem Grund habe ich mich entschlossen, die Artikelreihe Homeserver/NAS auf Basis von Ubuntu Server neu zu erstellen. Dieses Mal auf Basis von Ubuntu Server 20.04. Außerdem möchte ich eine Reihe weiterer Änderungen vorschlagen oder vorstellen.

Da ich diese Tutorial-Reihe bewusst so einsteigerfreundlich wie möglich halten möchte, will ich eine zusätzliche Hardware-Option vorstellen. Neben der Installation mit einem klassischen Software-Raid, wird auch die Installation mit einem externen RAID-Gehäuse behandelt. Dies reduziert den Einrichtungs- und Wartungsaufwand nochmals erheblich.

Aus dem gleichen Grund wird Nextcloud und der Plex-Mediaserver als Snap-Paket installiert. Mir ist klar, das Snaps durchaus umstritten sind und auch ich sehe Canonicals erneuten Alleingang bei diesem Thema kritisch. Ich habe beim Einrichten und Testen des hier beschriebenen Setups jedoch festgestellt, dass die Nutzung der Snaps für Nextcloud und Plex die Einrichtung und Wartung extrem vereinfachen. Und genau das ist eines der Ziele dieser Artikelreihe. Auch aus Sicherheitsgründen dürfte die Verwendung der Snaps Vorteile bieten. Wer lieber auf die klassische Variante mit separat installiertem Webserver, Datenbank etc. setzen möchte, der kann gerne die Artikelreihe zu Ubuntu 18.04 anschauen. Die Installation und Konfiguration funktioniert unter Ubuntu 20.04 weitestgehend identisch.

Immer mehr Internetanschlüsse haben leider keine öffentliche IPv4-Adresse mehr (DS-Lite), sodass der Zugriff über das Internet auf den Homeserver mit klassischen DynDNS-Diensten nicht mehr funktionieren. Daher wird auch der Zugriff über das Internet auf den Homeserver mit einem DS-Lite-Anschluss behandelt werden.

Vor- und Nachteile eines selbstgebauten Homeserver/NAS

Ein selbstgebauter Homeserver/NAS muss mit verschiedenen Systemen konkurrieren. Und jedes Setup hat seine eigenen Vor- und Nachteile. Konkurrenten sind vor allem fertige NAS-Systeme von Herstellern wie Synology oder QNAP. Aber auch Clouddienste wie Dropbox oder Google Drive.

Der Vorteil einer selbstgebauten Lösung ist vor allem die Flexibilität. So kann man die Hardware so dimensionieren, wie man sie benötigt. Außerdem lässt sich jede beliebige Software installieren und man ist nicht darauf angewiesen, dass der Hersteller diese für das eigene NAS als Plugin zur Verfügung stellt.

Ein weiterer Vorteil ist die Langlebigkeit. Ubuntu LTS-Versionen, zu denen 20.04 gehört, werden 5 Jahre mit Sicherheitsupdates versorgt. So lange kann das System weitgehend unverändert eingesetzt werden. Eine anschließende Aktualisierung auf eine neue Betriebssystemversion ist problemlos möglich, da ganz normale Computerhardware verwendet wird. Und selbst wenn Ubuntu nicht mehr weiterentwickelt werden sollte, kann man jederzeit auf ein anderes Betriebssystem umsteigen, wobei dann natürlich eine Neuinstallation fällig ist.

Wie lange ein fertiges NAS-System vom Hersteller unterstützt wird, ist beim Kauf völlig unklar. Gerade No-Name-Produkte sind eher dafür bekannt, dass sie überhaupt keine Sicherheitsupdates erhalten. Die bekannten Hersteller verhalten sich im NAS-Sektor zwar recht vorbildlich, dass dies aber die kommenden Jahre so bleibt und dass die Firma weiter existiert kann niemand garantieren.

Ein Vorteil gegenüber Clouddiensten ist die Privatsphäre. Wer einen eigenen Homeserver oder NAS in den eigenen vier Wänden betreibt, der muss seine Daten keinem Dienstleister wie Google, Dropbox anderen Unternehmen anvertrauen.

Die Anforderungen

Folgende Anforderungen soll der selbstgebaute Homeserver/NAS auf Basis von Ubuntu Server 20.04 erfüllen.

  • Möglichst geringer Stromverbrauch, da das System 24/7 laufen soll.
  • Möglichst zuverlässig und wartungsarm.
  • Schutz der Daten vor einem Festplattenausfall durch Speicherung auf mehreren Datenträgern.
  • Bereitstellen von Netzwerkfreigaben zum einfachen Zugriff auf die Daten mit Windows und Linux.
  • Synchronisieren bestimmter Daten über mehrere Geräte (sodass diese auch lokal vorliegen).
  • Bereitstellen von zentralem Adressbuch und Kalender und Synchronisierung mit Mobilgeräten
  • Zugriff auf die Daten über das Internet von unterwegs.
  • Streamen von Audio und Video über das Internet.
  • Tägliches automatisches und verschlüsseltes Backup der wichtigsten Daten auf einen Cloudspeicher außer Haus.
  • Zusätzliches Backup sämtlicher Daten auf einen externen Datenträger.

Die verwendete Software

Als Betriebssystem kommt Ubuntu Server 20.04 zum Einsatz. Die Server-Version hat in den letzten Jahren bewiesen, dass sie sehr robust und zuverlässig ist. Aus diesem Grund setze ich weiterhin auf dieses Betriebssystem.

Netzwerkfreigaben für das lokale Netzwerk werden von SAMBA bereitgestellt. SMB/CIFS-Freigaben mit SAMBA sind schnell und werden von allen gängigen Betriebssystemen (Linux, Windows, MacOS) standardmäßig unterstützt.

Nextcloud wurde in den letzten Jahren sehr aktiv weiterentwickelt und mit vielen neuen Funktionen ergänzt. Erfreulicherweise hat sich der Update-Mechanismus von Nextcloud als sehr sicher und zuverlässig herausgestellt, was das Upgrade auf neue Nextcloud-Versionen zum Kinderspiel macht. Das ist alles andere als selbstverständlich. Wenn es um die Synchronisierung von Dateien, Kontakten oder Kalendereinträgen geht, führt auf daher kaum ein Weg an Nextcloud vorbei.

Den Plex-Mediaserver verwende ich nach wie vor zum Streamen von Musik und Video über das lokale Netzwerk und über das Internet. Plex ist leider keine Open-Source-Anwendung. Gegenüber den mir bekannten freien Projekten hat Plex den Vorteil, dass Apps und Clients für eine Vielzahl von Systemen vorhanden sind. So lassen sich Videos und Musik gleichermaßen auf das Smartphone, den Fernseher oder den Computer übertragen.

Die Verschlüsselung der Verbindung über das Internet wird mit einem kostenlosen Let’s Encrypt Zertifikat abgesichert. So lassen sich die Daten sicher über das Internet übertragen, ohne dass es zu Problemen und Fehlermeldungen kommt, die mit selbstsignierten Zertifikaten auftreten.

Die verschlüsselte Sicherung der Daten in der Cloud übernimmt Duplicati. Auch dieses Projekt wird erfreulicher Weise sehr aktiv weiterentwickelt.

Für das zweite Backup auf eine externe Festplatte setze ich wieder auf ein Backupskript und Rsync. Damit werden sämtliche Daten täglich gesichert, ohne dass bereits vorhandene Dateien neu übertragen und doppelt gespeichert werden. Rsnapshots, welches ich in der letzten Version der Artikelreiche verwendet habe, hat sich als unnötig kompliziert in der Konfiguration und Verwendung herausgestellt.

Die Hardware

Grundsätzlich eignet sich jeder Computer um daraus einen Homeserver/NAS zu erstellen. Wer also noch alte Hardware hat, der kann diese selbstverständlich verwenden. Mit einem externen RAID-Gehäuse lässt sich sogar ein alter Laptop sinnvoll zum Homeserver umrüsten. Einzig den Stromverbrauch sollte man im Blick behalten, wenn man seinen alten Computer umfunktionieren will. Ein alter Gaming-PC ist hier eventuell nicht gut geeignet, wenn der Homeserver 24/7 laufen soll.

Für alle die mit dem Gedanken spielen sich neue Hardware anzuschaffen, gebe ich ein paar Anregungen, welche Hardware geeignet sein kann. Die unten aufgeführte Hardware soll lediglich ein Vorschlag sein, den man an die eigenen Bedürfnisse anpassen sollte, je nachdem welche Ansprüche man an das System hat.

Alle Optionen haben eines gemeinsam, und darauf basieren auch die folgenden Schritte bei der Installation des Systems. Das Betriebssystem wird auf einem eigenen, separaten Datenträger installiert. Beispielsweise eine kleine SSD. Die wichtigen Daten wie Bilder, Videos und Dokumente werden auf einem RAID-System gespeichert. Das bedeutet, dass diese Daten immer auf zwei Festplatten gleichzeitig gespeichert werden, sodass bei einem Festplattenausfall keine Daten verloren gehen.

Die Installation des Betriebssystems auf einem separaten Datenträger erleichtert die Installation des Betriebssystems ungemein. Hierzu gehe ich bei der Installation des Betriebssystems näher ein. Die geringere Ausfallsicherheit für das Betriebssystem halte ich für vertretbar. Ist dieser Datenträger defekt, muss lediglich das Betriebssystem neu installiert werden, und veränderte Konfigurationsdateien aus einem Backup kopiert werden. Mit ein bisschen Routine kann dies in einer halben Stunde erledigt werden. Das Wiederherstellen eines defekten RAID für das Betriebssystem auf der Kommandozeile ist dagegen sehr viel komplizierter.

Option 1: Der Selbstbau PC

Ein Selbstbau-PC ist die mit Abstand flexibelste Option um sich einen eigenen Homeserver/NAS zu bauen. So kann man das System komplett an die eigenen Anforderungen anpassen. Sowohl was Leitung, als auch was Preis angeht. Aus diesem Grund ist es schwer, einen Bauvorschlag zu erstellen, der allen Anforderungen gerecht wird. Da bei mir kein Neukauf ansteht, kann ich in diesem Fall auch keine eigene und aktuelle Hardware vorschlagen.

Für den Selbstbau-PC empfehle ich daher den Bauvorschlag für den 7-Watt-Spar-Mini aus der Zeitschrift c’t Ausgabe 24/2019. Die verwendete Hardware ist sparsam und gut für einen Homeserver geeignet. In Ausgabe 25/2019 wird noch auf Probleme bei der Nutzung mit Linux hingewiesen. Diese Beschränkten sich jedoch auf die Verwendung des Display-Port Ausgangs (HDMI war kein Problem) und des optionalen WLAN-Adaptern. Außerdem wurde der USB-Bootstick nicht automatisch erkannt. Man musste zuerst das UEFI aufrufen und dort den USB-Stick als Bootmedium auswählen. Ansonsten gab es keine Probleme mit Linux. Möglicherweise sind die Probleme mit den aktuellen Linux-Versionen auch behoben.

Den vollständigen Artikel zum Bauvorschlag kann man bei Heise für 1,49 € kaufen. Das komplette Heft mit weiteren Bauvorschlägen gibt es für 5,20 €. Wer den Bauvorschlag nachbauen möchte, erfährt dort alle Details zum Selbstbau-PC.

Im genannten Bauvorschlag kommt weitestgehenduntenstehende Hardware zum Einsatz. Allerdings habe ich die Datenträger angepasst, damit sie zu dieser Anleitung passen. In das Gehäuse passen lediglich 2x 2,5″ Datenträger. Diese werden für das RAID-System verwendet. Die Schreibgeschwindigkeit der kleinen Datenträger ist in der Regel geringer, als bei großen 2,5″ Festplatten. Dafür ist der Stromverbrauch geringer. Alternativ kann man anstatt der Festplatten auch SSDs im Homeserver einbauen. Wer mehr Speicherplatz braucht und große 3,5″ Festplatten nutzen möchte, der benötigt ein größeres Gehäuse. Dann ist es sinnvoll, ein Mainboard, Netzteil und Gehäuse getrennt zu kaufen. Alternativ kann man auch auf die internen Festplatten verzichten und ein externes Festplattengehäuse über USB anschließen, wie in Option 2 beschrieben. Das Betriebssystem wird auf einer NVMe-SSD installiert, die direkt auf das Mainboard gesteckt wird.

KomponenteModellPreis ca.
Barebone (Gehäuse, Netzteil, Mainboard)Asrock Deskmini A300 (90BXG3G01-A30GA0W)138 €
ProzessorAMD Athlon 200 GE, 2x 3,2GHz, (YD200GC6FBBOX)47 €
RAMCrucial S0-DIMM 8GB, DDR4-2666 (CT8G4SFS8266)28 €
NVMe-SSD für das BetriebssystemKingston A2000 NVMe PCIe 250GB (SA2000M8/250G)39 €
2,5″ Festplatten für Nutzerdaten (2x)Western Digital RED 2,5 Zoll, 1TB2x 77€
oder 2,5″ SSDWestern Digital RED SA500 NAS 2,5″ SATA SSD, 1TB2x 111€
Gesamtpreis mit 2x SATA-Festplatten406 €
Gesamtpreis mit 2x SATA-SSDs474 €

Option 2: Mini-PC mit externem RAID-Gehäuse

Diese Variante ist für diejenigen interessant, die keine Lust auf Hardwarebasteln haben, aber trotzdem einen eigenen Homeserver aufsetzen möchten. In dieser Version wird ein beliebiger Fertig-PC mit einem externen RAID-Gehäuse kombiniert. Als PC bietet sich dabei ein Mini-PC wie beispielsweise ein Intel NUC an. Alternativ kann auch jeder vorhandene Computer verwendet werden. Beim Computer muss lediglich auf Linux-Kompatibilität geachtet werden. In den meisten Fällen ist dies jedoch nur dann ein Problem, wenn Hardware verwendet wird, die sehr neu auf dem Markt ist. Ältere Computersysteme funktionieren in der Regel problemlos mit Linux. Untenstehende Konfiguration ist ein Beispiel. Wie gesagt, grundsätzlich ist jeder (Mini-)PC geeignet.

KomponenteModellPreis ca.
Mini PC Barebone (Gehäuse, Netzteil, Mainboard, CPU)NUC Intel Pentium Silver, 1,50 GHz, j5005 (nuc7pjyh)165 €
RAM 2x4GBCrucial S0-DIMM 4GB, DDR4, 2400 (CT4G4SFS824A)2x 16 €
SSD für das BetriebssystemWestern Digital RED SA500 NAS 2,5 SATA 500 GB54 €
Gesamtpreis PC251 €

Über USB wird ein externes RAID-Gehäuse angeschlossen, auf dem die Daten gespeichert werden. So profitiert man von der Datensicherheit die ein RAID bietet, spart sich jedoch die Einrichtung, Wartung und Überwachung eines Software-Raids. Beim Kauf eines RAID-Gehäuses muss das RAID-Level 1 oder höher unterstützt. Bei RAID 0 oder JBOD werden die Daten nicht auf mehrere Festplatten gespiegelt, sodass keine zusätzliche Datensicherheit entsteht.

Die von mir verwendete Icy Box IB-RD3621U3 erfüllt seit Langem problemlos ihren Dienst an einem Linux-PC. Allerdings muss ich darauf hinweisen, dass ich den eingebauten Lüfter gegen ein anderes Modell getauscht und den Luftauslass im Gehäuse vergrößert habe. Wenn große Datenmengen geschrieben wurden, wurden die Festplatten mit dem Standardlüfter so heiß, dass ein Berühren schmerzhaft war. Ich habe mir daher Sorgen um die Lebensdauer der Festplatten gemacht. Andere Modelle haben dieses Problem möglicherweise nicht.

Icy Box IB-RD3621U353 €
oder FANTEC Qb-X2US3R68 €

Zusätzlich werden zwei Festplatten benötigt. Vor einiger Zeit stellte sich heraus, dass alle Festplattenhersteller (nicht nur Western Digital) das SMR (Shingled Magnetic Recording) Verfahren für ihre Festplatten verwenden. Das Verfahren ermöglicht höhere Datendichten pro Scheibe, wodurch weniger Scheiben verbaut werden müssen und somit Produktionskosten gespart werden. Der Nachteil ist, dass die Schreibgeschwindigkeit dramatisch einbricht, wenn regelmäßig größere Datenmengen geschrieben werden, da teilweise auch vorhandene Daten neu geschrieben werden müssen. Siehe u.a. [Computerbase: NAS-Festplatten: WD Red fortan nur als „Plus“ oder „Pro“ ohne SMR]. Das gesagte gilt gleichermaßen für die anderen Hersteller. Wer mit den genannten Nachteilen leben kann, der kann weiterhin die regulären günstigen NAS-Festplatten kaufen. Ich würde jedoch zu den teureren WD Pro greifen, auch wenn es mich ärgert. Denn diese Festplatten verwenden nach wie vor das klassische und teurere Aufzeichnungsverfahren.

Für ein RAID1 werden zwei Festplatten gleicher Größe benötigt.

Western Digital WD RED 4TB (SMR Verfahren)2x 100 €
Western Digital WD RED 4TB PRO2x 167 €

Insbesondere das externe RAID-Gehäuse kann auch mit jedem anderen Computer sinnvoll kombiniert werden. Dieses lässt sich beispielsweise auch an einen Selbstbau-PC anschließen. Die Festplatten werden dann nicht an das Mainboard des PCs angeschlossen, sondern im externen RAID-Gehäuse verbaut. Dieses wiederum wird über USB mit dem Mainboard verbunden.

Mit diesem Setup spart man sich auch beim Selbstbau-PC das Einrichten, Warten und Überwachen des Software-RAIDs. Dies übernimmt komplett das externe RAID-Gehäuse. Damit lässt sich auch ein bereits vorhandener Computer (sogar ein Raspberry Pi) zu einem vollwertigen NAS umrüsten, auf dem Daten sicher vor einem Festplattenausfall gespeichert werden können.

Preise für die komplette Setup mit Mini-PC und externem RAID-Gehäuse

Günstigste VarianteIntel NUC, Icy Box, 2x WD RED504 €
AlternativeIntel NUC, Fantec RAID-Gehäuse, 2x WD RED Pro653 €

Die laufenden Kosten

Neben den Anschaffungskosten sind vor allem die laufenden Kosten, also der Stromverbrauch, wichtig. Gerade der Stromverbrauch ist jedoch extrem von der verwendeten Hardware und auch von der Konfiguration abhängig. Es ist daher schwer, hier eine allgemeine Aussage zu machen.

Wer bereits vorhandene Hardware nutzen möchte, der sollte deren Stromverbrauch messen und ausrechnen, wie viel der Betrieb kostet, wenn der Homeserver 24 Stunden am Tag läuft. Hierfür eignen sich günstige Strommeßgeräte, die man zwischen die Steckdose und das Netzteil des Homeservers schaltet. Zwar sind diese Geräte nicht hundertprozentig korrekt, es genügt jedoch, um herauszufinden, in welcher Größenordnung die verursachten Kosten liegen werden.

Die Geräte haben einen weiteren Vorteil. Sie sind nicht nur günstig, sie können den Stromverbrauch auch über einen längeren Zeitraum aufzeichnen. Zeichnet man den Stromverbrauch über eine komplette Woche auf, so erhält man ein gutes Bild, wie viel Strom das eigene Setup im Durchschnitt verbraucht. Bei vielen Geräten kann man auch den eigenen Strompreis eingeben, sodass die Kosten gleich ausgerechnet werden.

Ansonsten lassen sich die Kosten auch leicht selbst ausrechnen. Bei einer Leistungsaufnahme von durchschnittlich 25 Watt und einem Strompreis von 0,3 €/kWh sieht die Rechnung folgendermaßen aus.

25 Watt x 24 Stunden x 365 Tage / 1000 x 0,3 € = 65,7 €/Jahr

25 Watt ist ein realistischer Wert für einen PC mit zwei drehenden 3,5″ Festplatten. Und dies sind die Stromkosten, wenn der Homeserver 24 Stunden am Tag mit drehenden Festplatten aktiv ist. Wer die Festplatten bei Nichtbenutzung in den Standby schickt, und auch ansonsten ein kleines und sparsames System verwendet, kann die Stromkosten deutlich reduzieren.

Berücksichtigt man noch die Anschaffungskosten scheint das relativ viel, im Vergleich zu einem Dropbox-Abo, das ca. 120 €/Jahr kostet und keine Anschaffungskosten benötigt. Allerdings kostet Dropbox 120 € pro Jahr und pro Benutzer. Mit jeder zusätzlichen Person, die den Homeserver verwendet, wird dieser finanziell attraktiver. Bei Google Drive muss man knapp 100 € pro Jahr für 2 TB Speicherplatz bezahlen. Dieser Speicherplatz kann zwar von mehreren Personen geteilt werden, trotzdem fällt der Preis pro Jahr an.

Was die laufenden kosten angeht, ist man mit einem eigenen Homeserver oder NAS also fast immer günstiger als mit einer Cloudlösung. Entscheidend sind also viel mehr die Anschaffungskosten. Je nachdem welche Anforderungen man hat und welche Hardware bereits vorhanden ist, können diese zwischen 0 € und mehren hundert Euro liegen. Wenn es keine Hardwareausfälle gibt, kann ein solches System problemlos 5-10 Jahre betrieben werden, ohne dass weitere Investitionen nötig sind.

Los geht’s


Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1
Installation des Betriebssystems: Ubuntu 20.04 Homeserver/NAS, Teil 2
Grundkonfiguration: Ubuntu 20.04 Homeserver/NAS, Teil 3
Ordnerfreigaben: Ubuntu 20.04 Homeserver/NAS, Teil 4
Nextcloud: Ubuntu 20.04 Homeserver/NAS, Teil 5
Plex Mediaserver: Ubuntu 20.04 Homeserver/NAS, Teil 6
Backup: Ubuntu 20.04 Homeserver/NAS, Teil 7


Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1 ist ein Beitrag von techgrube.de.

Installation des Betriebssystems: Ubuntu 20.04 Homeserver/NAS, Teil 2

Von: Niko
16. August 2020 um 11:27

Dieser Artikel ist Teil der Reihe selbstgebauter Ubuntu 20.04 Homeserver/NAS


Zuerst wird das Betriebssystem Ubuntu Server 20.04 (Focal Fossa) installiert. Mit dieser Version wurde ein neues Installationsprogramm eingeführt, sodass sich die Installation von den Vorgängerversionen unterscheidet.

Das Kapitel zur Partitionierung der Festplatten unterteilt sich in zwei Teile. Je nachdem ob man ein System mit internen Festplatten und Software-Raid verwendet, oder ob man ein externes RAID-Gehäuse nutzt, läuft die Partitionierung anders ab. Mit einem RAID-Gehäuse ist die Installation noch einfacher, da die Einrichtung des Software-Raids komplett entfällt.

Ubuntu 20.04 für Server herunterladen

Das Betriebssystem kann kostenlos heruntergeladen und verwendet werden. Ich empfehle den Download von der deutschsprachigen Seite ubuntuusers.de

Auf der Downloadseite von ubuntuusers.de wählt man die Server-Edition, die sich über den Direktlink als ISO-Datei herunterladen lässt.

Screenshot der Downloadseite für Ubuntu Server 20.04

ISO-Datei auf einen USB-Stick zur Installation übertragen

Das Betriebssystem wird später von einem USB-Stick auf dem Homeserver installiert. Daher muss die ISO-Datei zuerst auf einen USB-Stick übertragen werden. Allerdings kann man die Datei nicht einfach auf den Stick kopieren. Stattdessen wird ein Programm benötigt, das aus der ISO-Datei einen bootfähigen USB-Stick erstellt.

Ich empfehle hierzu das Programm Balena Etcher. Etcher ist kostenlos, Open Source und sowohl für Linux, als auch für Windows und MacOS verfügbar.

Balena Etcher kann kostenlos von der Herstellerseite heruntergeladen werden.

Für Linux steht das Programm als Appimage zur Verfügung. Nach dem Download erhält man eine ZIP-Datei, die man zuerst entpacken muss. Daraus erhält man eine AppImage-Datei, die man mit einem Doppelklick direkt starten kann.

Wenn das Programm nicht startet, muss man der Datei möglicherweise erlauben, als Programm ausgeführt zu werden. Unter Ubuntu oder Linux Mint klickt man dazu mit der rechten Maustaste auf die AppImage-Datei und wählt im Kontextmenü den Punkt „Eigenschaften“. Hier wechselt man zum Reiter „Zugriffsrechte“ und setzt den Haken bei „Der Datei erlauben sie als Programm auszuführen“. Anschließend sollte sich Etcher mit einem Doppelklick auf die Datei öffnen.

Das Übertragen der ISO-Datei auf den USB-Stick mit Etcher ist dann selbsterklärend. Nachdem der Kopiervorgang abgeschlossen ist, kann man den Stick entnehmen und an den Homeserver anstecken, um die Installation zu starten.

USB-Stick mit Balena Etcher erstellen

Installation von Ubuntu Server 20.04 starten

Nun kann das Betriebssystem auf dem Homeserver vom USB-Stick installiert werden. Hierzu muss der Computer vom Stick gebootet werden. Wie dies funktioniert ist leider bei jedem Computer unterschiedlich.

  • Häufig erkennt der Computer einen bootfähigen USB-Stick und bootet diesen automatisch.
  • Ansonsten wird kurz nach dem Starten im Bootscreen angezeigt, mit welcher Taste man das Bootmedium auswählen kann. Häufig ist das die Taste F11 oder F12, die beim Starten des Computers gedrückt werden muss.
  • Machmal muss das Bootmedium auch im Bios/UEFI eingestellt werden. Wie dieses gestartet wird, wird ebenfalls im Bootscreen angezeigt. Meistens lässt sich das Bios, bzw. UEFI mit der Entfernen-Taste (DEL) aufrufen.

Hat dies geklappt, wird man vom Ubuntu Installationsprogramm begrüßt.

Zuerst wird die Sprachauswahl gestartet. Hier wählt man die gewünschte Sprache, in diesem Fall „Deutsch„. Unter Umständen folgt nun der Hinweis, dass eine neue Version des Installationsprogramms vorliegt. Hier wählt man „Aktualisieren auf neuen Installer„. Wenn das Installationsprogramm bereits aktuell ist, kommt diese Abfrage nicht.

Im nächsten Schritt wird das Tastaturlayout und Sprache festgelegt. Mit einer normalen deutschen Tastatur wählt man hier dementsprechend sowohl bei Belegung als auch bei Variante „Deutsch“ aus.

Dann folgt die Konfiguration der Netzwerkschnittstelle. Wer sich hier unsicher ist, der lässt die Einstellungen unverändert und geht direkt auf den Button „Erledigt„. Wer eine statische IP-Adresse für seinen Server vergeben möchte und bereits weiß welche IP-Adresse frei ist, also nicht vom DHCP-Server des Routers vergeben wird, der kann hier direkt eine statische IP-Adresse vergeben. Die Konfiguration im Installer ist einfacher als die nachträgliche Konfiguration über Textdateien.

Die nun folgende Abfrage nach einem Proxy kann in einem Heimnetzwerk einfach mit dem Button „Erledigt“ übersprungen werden.

Im nächsten Schritt kann man die Server ändern, von denen das System Software und Betriebssystemupdates bezieht. Auch diesen Schritt kann man mit „Erledigt“ direkt überspringen.

Partitionierung der Datenträger

Nun folgt die Partitionierung und Formatierung der Datenträger. Dies unterscheidet sich, je nachdem ob man die klassische Variante mit eingebauten Festplatten und Software-Raid nutzt, oder ob man ein externes RAID-Gehäuse verwendet. Hier muss man dementsprechend die Option wählen, die zum eigenen Setup passt.

In dieser Anleitung wird das Betriebssystem in beiden Fällen auf einem einzelnen separaten Datenträger installiert. Beispielsweise einer kleinen, internen SSD. Die eigentlichen Daten, wie Bilder, Videos, Dokumente lagern auf einem RAID System, sodass diese Daten vor einem Festplattenausfall geschützt sind.

Die Installation des Betriebssystems auf einem separaten Datenträger vereinfacht die Einrichtung deutlich, denn in diesem Fall kann die automatische Partitionierung für die Systemfestplatte verwendet werden. Dies ist ein enormer Vorteil, da die manuelle Partitionierung der Systemplatte von System zu System unterschiedlich ist, sodass hierfür kaum eine allgemeingültige Anleitung geschrieben werden kann. Die Partitionierung unterscheidet sich, je nachdem ob das Mainboard ein UEFI, ein UEFI im Bios-Kompatibilitätsmodus oder noch ein altes BIOS besitzt. Teilweise wird nur die Einrichtung eines Master-Bootrecords (MBR) unterstützt, oder nur die GUID-Partition-Table (GPT).

Die automatische Partitionierung erkennt selbständig welche Einstellungen für die Systemplatte vorgenommen werden müssen, sodass die hier beschriebenen Schritte auf allen Systemen funktionieren sollten.

Die geringere Ausfallsicherheit für das System halte ich für vertretbar. Auf der Systemplatte liegen keine wichtigen Daten, da Videos, Dokumente, Bilder usw. sicher auf dem RAID gespeichert werden. Somit muss im Falle eines Ausfalls der Systemplatte nur die Installation des Betriebssystems wiederholt werden. Von den Konfigurationsdateien existiert hoffentlich ein Backup, sodass die Konfigurationsdateien nur kopiert werden müssen. Im Zweifel ist dies sogar schneller und einfacher als die Wiederherstellung eines defekten RAIDs auf der Kommandozeile.

Option 1: Interne Festplatten, Software RAID

Bei dieser Option wird das Betriebssystem auf einem einzelnen separaten Datenträger installiert. Zusätzlich wird ein Software-RAID aus zwei weiteren, ebenfalls internen Datenträgern eingerichtet. Die Daten auf diesem RAID werden immer auf beide Festplatten gespiegelt, sodass keine Daten verloren gehen, wenn eine Festplatte ausfällt.

Zuerst wird die automatische Partitionierung für die Systemplatte verwendet. Hierzu wählt man die Option „Eine ganze Festplatte verwenden„. Mit den Pfeiltasten navigiert man nach unten. Mit der Enter-Taste öffnet sich ein Menü, das alle vorhandenen Datenträger auflistet. Hier wählt man den Datenträger aus, auf dem das Betriebssystem installiert werden soll. Diesen Datenträger erkennt man am einfachsten an der Größe. Für das RAID werden die beiden gleich großen Festplatten verwendet. Der dritte Datenträger mit einer anderen Größe wird für das System verwendet.

Mit dem Button „Erledigt“ bestätigt man die Auswahl. Damit ist die Einrichtung der Systemplatte bereits abgeschlossen. Nun wird eine Übersicht der vorhandenen Datenträger und deren Partitionierung angezeigt.

Oben sieht man die Systemplatte, die bereits automatisch partitioniert wurde. Dies kann je nach verwendetem System anders aussehen als in unten stehendem Screenshot. Darunter sieht man die beiden nicht verwendeten Datenträger für das RAID.

Um das Software-RAID unter Ubuntu Server 20.04 zu erstellen, wählt man nun den Menüpunkt „Software-Raid (md) erstellen„.

Im folgenden Schritt kann auf Wunsch ein Name vergeben werden. Man kann jedoch auch die Vorgabe „md0“ lassen. In jedem Fall sollte man einen einfachen Namen ohne Leerzeichen verwenden.

Als RAID-Level wählt man „1 mirrored“. Damit werden alle Daten auf beiden Festplatten gespiegelt. Es sind also immer alle Daten auf beiden Festplatten vorhanden.

Unter „Geräte“ aktiviert man die beiden nicht verwendeten Festplatten und wählt anschließend „Erledigt„.

Man gelangt nun wieder zur Übersicht mit den verfügbaren Datenträgern und Partitionen. Unter „Verfügbare Geräte“ ist nun ein neuer Datenträger entstanden. Das gerade erstellte RAID-System. Im nächsten Schritt muss nun festgelegt werden, wie das System das RAID verwenden soll.

Hierzu wechselt man mit den Pfeiltasten so lange durch die Liste, bis das RAID-System (md0 neu) aktiviert ist. Mit einem Druck auf die Enter-Taste öffnet sich ein neues Menü. Hier wählt man die Option „Formatieren“ aus.

Nun öffnet sich das Fenster mit den Formatierungsoptionen. Bei Format kann man die Option „ext4“ unverändert lassen. Hierbei handelt es sich um das Standarddateisystem von Ubuntu und vielen anderen Linux-Betriebssystemen. Ext4 hat sich über viele Jahre bewährt.

Unter „Mount“ wird der Ordner angegeben, über welchen das RAID-System später in das Betriebssystem eingebunden wird. Laufwerke haben unter Linux keine Buchstaben, wie unter Windows, sondern werden als Ordner eingebunden. Hier sollte man den Mountpunkt unbedingt ändern. Dazu wählt man zuerst die Option „Andere“ und gibt anschließend einen Pfad an. In dieser Artieklreihe verwende ich /mnt/storage. Mit „Erledigt“ werden die Einstellungen übernommen.

Nun kommt man wieder zur Zusammenfassung der Dateisystemkonfiguration. Hier sollte man nun einerseits die Partitionierung der Systemplatte und das RAID-System unter /mnt/storage sehen. Ist hier alles korrekt, kann die Partitionierung mit „Erledigt“ abgeschlossen werden und die Installation des Betriebssystems fortgesetzt werden. Im folgenden Schritt muss man noch bestätigen, dass die gerade vorgenommenen Einstellungen übernommen werden sollen. Hierbei wird darauf hingewiesen, dass alle eventuell vorhandenen Daten auf den Festplatten verloren gehen. Dies bestätigt man mit „Fortfahren„.

Option 2: Externes USB RAID-Gehäuse

Auch bei dieser Option wird das Betriebssystem auf einem separaten Datenträger installiert, aus den oben genannten Gründen. Die wichtigen Daten, wie Bilder, Videos und Dokumente landen jedoch nicht auf einem intern verbauten Software-Raid, sondern auf einem externen RAID-Gehäuse, das über USB angeschlossen ist.

Dieses Setup vereinfacht die Installation und die spätere Wartung nochmals deutlich. Mit dieser Methode muss man weder ein RAID-System einrichten, noch dieses überwachen. Dies übernimmt das RAID-Gehäuse vollautomatisch. Wenn eine Festplatte ausfällt, muss man diese lediglich im Gehäuse austauschen (unbedingt Bedienungsanleitung beachten, das Vorgehen ist je nach Modell unterschiedlich). Für den Computer sieht das Ganze aus, wie eine normale USB-Festplatte.

Zuerst wird der Datenträger für das Betriebssystem eingerichtet. Hierzu wählt man die Option „Eine ganze Festplatte verwenden„. Mit den Pfeiltasten wechselt man nach unten und klappt mit der Enter-Taste die Liste mit verfügbaren Datenträgern aus. Hier wählt man die interne Festplatte, zu erkennen am Speicherplatz. Mit dem Button „Erledigt“ werden die Einstellungen übernommen.

Man kommt nun zur Übersicht aller vorhandenen Datenträger und Partitionen. Oben sieht man die automatisch erstellten Partitionen der Systemplatte. Unter „Verfügbare Geräte“ wird das externe, über USB angeschlossene, RAID-System angezeigt. Mit den Pfeiltasten wählt man dieses aus und öffnet mit der Enter-Taste die weiteren Optionen. Hier wählt man den Menüpunkt „Formatieren„.

Im folgenden Fenster wählt man unter „Format“ das Dateisystem Ext4. Hierbei handelt es sich um das Standarddateisystem von Ubuntu und vielen anderen Linux-Distributionen.

Unter „Mount“ wird der Mountpunkt für das externe RAID-System angegeben. Unter Linux bekommen Laufwerke keinen Buchstaben zugeordnet, wie unter Windows. Stattdessen werden sie als Ordner in das Dateisystem eingebunden. Dieser Ordner ist der sogenannte Mountpunkt. Hier wählt man zuerst die Option „Andere“ und vergibt dann einen eigenen Pfad. In dieser Artikelreihe verwende ich /mnt/storage. Mit dem Button „Erledigt“ werden die Einstellungen übernommen.

Nun gelangt man wieder zur Übersicht der verfügbaren Datenträger und Partitionen. Hier sind nun die automatisch erstellten Partitionen für das Betriebssystem zu sehen, sowie das externe RAID-System, das unter /mnt/storage eingebunden wird. Mit „Erledigt“ wird nun die Partitionierung und Formatierung anhand der vorgenommenen Einstellungen automatisch durchgeführt.

Im folgenden Schritt muss man noch bestätigen, dass die gerade vorgenommenen Einstellungen übernommen werden sollen. Hierbei wird darauf hingewiesen, dass alle eventuell vorhandenen Daten auf den Festplatten verloren gehen. Dies bestätigt man mit „Fortfahren„.

Fortsetzen der Installation des Betriebssystems

Die folgenden Schritte sind bei allen Hardwarekonfigurationen wieder identisch. Im folgenden Schritt wir der Account des Hauptbenutzers/Administratosr angelegt, sowie ein Name für den Server vergeben. Diese Einstellungen kann man nach Belieben vornehmen. Der Servername darf jedoch keine Leerzeichen oder Sonderzeichen enthalten.

Dann bietet das Installationsprogramm an, direkt einen SSH-Server zu installieren. Diese Option sollte man aktivieren, da der SSH-Server später zur Fernwartung ohnehin benötigt wird.

Nun kommt eine weitere Übersicht mit zusätzlich installierbarer Software. Hier wird nichts ausgewählt. Alle benötigten Programme werden später manuell installiert und konfiguriert. Daher wird der Schritt mit dem Button „Erledigt“ übersprungen.

Jetzt erfolgt die eigentliche Installation des Betriebssystems automatisch, anhand der gemachten Einstellungen. Dabei werden auch vorhandene Updates direkt heruntergeladen und installiert.

Ist die Installation abgeschlossen, erscheint der Button „Neustart„. Wenn man diesen betätigt, wird der Computer neu gestartet und das gerade installierte Betriebssystem geladen.


Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1
Installation des Betriebssystems: Ubuntu 20.04 Homeserver/NAS, Teil 2
Grundkonfiguration: Ubuntu 20.04 Homeserver/NAS, Teil 3
Ordnerfreigaben: Ubuntu 20.04 Homeserver/NAS, Teil 4
Nextcloud: Ubuntu 20.04 Homeserver/NAS, Teil 5
Plex Mediaserver: Ubuntu 20.04 Homeserver/NAS, Teil 6
Backup: Ubuntu 20.04 Homeserver/NAS, Teil 7


Installation des Betriebssystems: Ubuntu 20.04 Homeserver/NAS, Teil 2 ist ein Beitrag von techgrube.de.

Grundkonfiguration: Ubuntu 20.04 Homeserver/NAS, Teil 3

Von: Niko
16. August 2020 um 11:27

Dieser Artikel ist Teil der Reihe selbstgebauter Ubuntu 20.04 Homeserver/NAS


In den beiden vorherigen Teilen wurde die Hardware eingerichtet und das Betriebssystem installiert. Bevor es nun an das Installieren und Einrichten der eigentlichen Dienste geht, sollten noch ein paar Grundeinstellungen vorgenommen werden. Außerdem gilt es ein paar grundlegende Dinge bei der Administration zu beachten.

Gleichbleibende IP-Adresse im Router aktivieren

Damit der Zugriff über das Netzwerk auf den Server zuverlässig funktioniert, darf sich dessen IP-Adresse nicht verändern.

Normalerweise wird aus diesem Grund für Server eine statische IP-Adresse konfiguriert. Das bedeutet, dass in den Konfigurationsdateien des Servers eine bestimmte IP-Adresse fest hinterlegt wird. Dazu muss man jedoch die Netzwerkkonfiguration seines Heimnetzes genau kennen. Insbesondere muss man die IP-Range für den DHCP-Server im Router kennen. Das sind die IP-Adressen, die der Router den Geräten im Netzwerk eigenständig zuteilen darf.

Einfacher ist es, den Router so zu konfigurieren, dass er dem Homeserver immer dieselbe IP-Adresse zuteilt. Moderne Router bieten diese Option in den allermeisten Fällen an.

In der Benutzeroberfläche der FritzBox navigiert man zu Heimnetz > Netzwerk. Hier findet man eine Liste mit allen Geräten, die im Heimnetz aktiv sind oder waren. Aus dieser Liste wählt man den Homeserver aus. Dann muss nur noch der Haken bei „Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen“ gesetzt werden.

Am besten notiert man sich in diesem Schritt auch gleich die IP-Adresse, die der Router dem Homeserver zugeteilt hat.

Login auf den Server mit SSH

Die Einrichtung und die spätere Wartung und Administration nimmt man am besten über eine SSH-Verbindung vor. Auf diese Weise kann man sich sicher über das Netzwerk mit der Kommandozeile des Homeservers verbinden. Hierzu wird jedoch die IP-Adresse des Servers benötigt.

Wenn diese nicht bekannt ist, muss man die IP-Adresse zuerst herausfinden. Hierzu muss man sich wieder direkt am Homeserver einloggen.

Nach dem Login wird eine Reihe von Systeminformationen angezeigt. Hier findet man auch die IP-Adresse des Homeservers.

IP Adresse des Homeservers herausfinden. Möglichkeit 1

Alternativ kann man folgenden Befehl verwenden. Damit werden alle Adressen aller Netzwerkschnittstellen angezeigt.

ip addr
IP Adresse des Homeservers herausfinden. Möglichkeit 2

Anschließend kann man sich von jedem beliebigen Computer mit dem Homeserver via SSH verbinden.

Wenn man ein Linux-Betriebssystem oder einen Mac verwendet muss man hierzu das Terminal öffnen. Unter Windows 10 verwendet man die PowerShell. Wer noch eine ältere Version von Windows verwendet, der benötigt eine Zusatzsoftware wie Putty. Der Einfachheit halber werde ich immer von Terminal sprechen, auch wenn die PowerShell gemeint ist.

Mit folgendem Befehl wird eine Verbindung zum Homeserver hergestellt. Benutzername und IP-Adresse muss natürlich an das eigene Setup angepasst werden.

ssh benutzername@ip-adresse

z.B.
ssh nikobra@192.168.30.153
SSH Verbindungsaufbau mit der Powershell

Das Betriebssystem immer aktuell halten

Software ist komplex und daher anfällig für Fehler. Das gilt ganz besonders für Betriebssysteme, da diese eben sehr komplex sind. Daher gibt es in regelmäßigen Abständen Updates, die Fehler beseitigen und Sicherheitslücken schließen. Aus diesen Gründen sollte man sein System immer aktuell halten.

Nach dem Login zeigt das System direkt an, ob Updates verfügbar sind. In diesem Fall sind 56 Updates verfügbar, von denen 27 Sicherheitsupdates sind und dementsprechend zügig eingespielt werden sollten.

Ubuntu Server verfügbare Updates

Mit folgendem Befehl prüft man auf verfügbare Updates für das Betriebssystem und sämtliche andere Software, die aus den Paketquellen installiert wurde. Sind Updates verfügbar, dann werden diese direkt installiert.

sudo apt update && sudo apt upgrade

Eigentlich handelt es sich hierbei um zwei Befehle, die nacheinander ausgeführt werden und durch das „&&“ verbunden werden. Das doppelte &-Zeichen soft dafür, dass der zweite Befehl nur ausgeführt wird, wenn der erste Befehl erfolgreich ausgeführt wurde.

Das vorangestellte „sudo“ sorgt dafür, dass der Befehl mit erhöhten Rechten (Rootrechte, entspricht Administratorrechten unter Windows) ausgeführt wird. Ansonsten hat man nicht die Berechtigung Systemdateien zu verändern. Sudo darf nur von Benutzern ausgeführt werden, für die dies konfiguriert wurde. Der Account, der bei der Installation angelegt wurde, hat dieses Recht automatisch.

Apt ist der Paketmanager. Mit dem Zusatz „update“ prüft der Paketmanager, ob aktualisierte Software in den Paketquellen verfügbar ist. Der Zusatz „upgrade“ installiert die verfügbaren Updates.

Homeserver Neustart erforderlich

Eventuell ist nach der Installation von Updates ein Neustart nötig, um die Änderungen zu übernehmen. Ein Neustart wird mit folgendem Befehl ausgeführt.

sudo reboot

Wenn man den Computer herunterfahren möchte, ohne einen Neustart auszuführen, dann wird folgender Befehl verwendet.

sudo shutdown -h now

Ubuntu 20.04. Server Systemsprache auf Deutsch umstellen

Wenn die Installation der Updates mit „Y“ für yes bestätigt werden musste, anstatt mit „J“ ja, dann steht die Systemsprache auf Englisch. Dies hat noch weitere Auswirkungen in der Bedienung, beispielsweise bei der Bedienung des Texteditors Nano. Daher sollte man die Sprache noch auf Deutsch umstellen. Dazu werden zuerst die deutschen Sprachpakete installiert.

sudo apt install -y language-pack-de language-pack-de-base

Dann kann man die gewünschten Spracheinstellungen mit folgendem Befehl auswählen.

sudo dpkg-reconfigure locales

Im nächsten Schritt wird eine lange Liste mit Lokalisierungsoptionen angezeigt. Hier aktiviert man die Option „de_DE.UTF-8 UTF-8„, indem man mit der Leertaste ein Sternchen vor die entsprechende Zeile setzt. Wenn bei irgendeiner anderen Zeile ein Sternchen vorhanden ist, kann man dieses auf die gleiche Weise entfernen. Mit OK kommt man zum nächsten Schritt.

Configure locales

Wenn mehrere Lokalisierungsoptionen vorhanden sind, muss man hier die Option auswählen, die standardmäßig verwendet werden soll. Auch hier wählt man wieder die Zeile „de_DE.UTF-8 UTF-8“ und bestätigt die Auswahl mit OK.

Nach einem Neustart ist die Systemsprache auf Deutsch umgestellt. Tatsächlich sind nicht alle Elemente des Systems übersetzt. Die meisten Bedienoberflächen, wie beispielsweise beim Texteditor Nano sind nun deutsch. Vor allem aber ist das Tastaturlayout nun passend eingestellt.

Configure locales Schritt 2

Homeserver aus dem Internet erreichbar machen

Natürlich ist es praktisch, wenn man einen zentralen Netzwerkspeicher im Heimnetz hat. Wirklich uneingeschränkt nutzen lässt sich der Homeserver aber erst, wenn man ihn auch von unterwegs über das Internet erreichen kann.

Nur so kann man auch unterwegs auf seine Daten zugreifen und Kontakte und Kalender mit mehreren Geräten synchronisieren.

Leider gibt es dabei mittlerweile ein Problem. Um von außer Haus über das Internet auf den Homeserver zugreifen zu können, muss der heimische Internetanschluss über eine öffentliche IP-Adresse verfügen. Und immer weniger Internetanschlüsse bekommen eine eigene, öffentliche IPv4 Adresse von ihren Providern zugeteilt.

Glücklicherweise unterstützen alle halbwegs aktuellen Internetanschlüsse und Router IPv6 und bekommen hier ausreichend Adressen zugeteilt. Wenn also alle beteiligten Geräte IPv6 unterstützen, dann steht dem Zugriff von außerhalb des Heimnetzes nichts im Wege. Dafür muss aber sowohl der Internetanschluss zu Hause, als auch der Internetanschluss den man unterwegs verwendet IPv6 unterstützen.

Leider ist die Situation nicht so einfach. Gerade im Mobilfunknetz, das man ja unterwegs häufig verwendet um auf den Homeserver zuzugreifen, bekommt man oft nur IPv4 Adressen und auch in Hotels oder Firmennetzen ist das häufig der Fall. Damit kann man aber den Homeserver mit seiner IPv6 Adresse nicht erreichen.

Um den Zugriff über das Internet auf den Homeserver zu konfigurieren, muss man also wissen, ob der eigene Internetanschluss über eine öffentliche IPv4 Adresse verfügt.

Wenn der Internetanschluss über eine öffentliche IPv4 Adresse verfügt, dann ist der Zugriff über das Internet kein Problem. In diesem Fall kann man diesen über einen normalen DynDNS-Dienst realisieren.

Hat der Internetanschluss nur eine öffentliche IPv6-Adresse, wird es komplizierter. Damit man auch von einem Internetanschluss ohne IPv6 (Hotel, Mobilfunk) auf den Homeserver zugreifen kann, benötigt man einen Relay-Dienst, der quasi von IPv4 nach IPv6 übersetzt.

Dieser Abschnitt beinhaltet also zwei Anleitungen, je nachdem über welche Art von Internetanschluss man verfügt.

Option 1: Anschluss verfügt über öffentliche IPv4-Adresse

  • Häufig handelt es sich DSL-Anschlüsse.
  • Anschluss verfügt meistens über eine eigene, global erreichbare IPv4 und IPv6 Adresse(n).
  • Zugriff auf das NAS mit DynDNS-Adresse und Portfreigaben im Router problemlos möglich.


Option 2: Anschluss verfügt nicht über eine öffentliche IPv4-Adresse

  • Oft Dual-Stack-Lite (auch: DS-Lite, nicht verwechseln mit der Abkürzung DSL):
  • Anschluss verfügt nicht über eine öffentliche IPv4-Adresse
  • In der Regel Kabelanschlüsse (Internet über Fernsehkabel).
  • Anschluss verfügt lediglich über eine öffentliche IPv6-Verbindung. IPv4-Verbindungen erfolgen über eine private Adresse, die sich mehrere Anschlüsse teilen. Dabei sorgt ein Server des Internetanbieters dafür, dass jeder Anschluss die für ihn bestimmten IPv4 Pakete erhält (Carrier-Grade-NAT).
  • Zugriff von außen auf das Heimnetz nur über IPv6 möglich.
  • Eingehende IPv4-Verbindungen scheitern am Carrier-Grade-NAT.
  • Komfortabler Zugriff von außen nur mit erhöhtem Aufwand und Umwegen möglich.

Homeserver aus dem Internet erreichbar machen, Option 1: Mit öffentlicher IPv4 Adresse

Die wohl bekannteste Lösung um den eigenen Internetanschluss über das Internet erreichbar zu machen ist DynDNS. Ein System, dass die hinter einem Domainnamen stehende IP-Adresse bei jeder Änderung aktualisiert. Somit ist das NAS von unterwegs immer über eine leicht zu merkende Internetadresse erreichbar.

Um die Einstiegshürde so niedrig wie möglich zu halten, zeige ich die Einrichtung in diesem Artikel anhand des Anbieters No-IP.com, welcher einerseits direkt von der Fritzbox unterstützt wird und außerdem kostenlos genutzt werden kann. Natürlich kann auch jeder andere Anbieter genutzt werden.

Als Erstes muss man sich einen Account bei No-IP.com anlegen. Nach dem Login kann man einen Domainname anlegen. Hierzu geht man links im Menü auf Dynamic DNS und anschließend auf den Menüpunkt Create Hostname.

No-IP.com Dyndns Account erstellen

Nun kann man sich einen Hostnamen und eine Domain auswählen. Daraus setzt sich dann die Adresse zusammen, über die man den Homeserver später über das Internet erreichen kann. In diesem Beispiel ist das https://mimashome.ddns.net. Die anderen Felder können ignoriert werden bzw. müssen nicht verändert werden. Angelegt wird die Adresse mit einem Klick auf den Button “Create Hostname”.

No-IP Hostname erstellen

DynDNS Dienst in der FritzBox aktivieren

Da No-IP von der Fritzbox standardmäßig unterstützt wird, ist die Konfiguration schnell erledigt.
Die Einstellungen hierzu findet man in der Benutzeroberfläche der FritzBox unter Internet -> Freigaben -> DynDNS

Dort gibt man seinen gerade erstellten Domainname sowie seinen Benutzernamen und das Passwort von No-IP ein.

No-IP account in Fritzbox eintragen

Mit einem Klick auf den Button “Übernehmen” meldet sich die Fritzbox bei No-IP an und informiert ab sofort den Anbieter jedes Mal, wenn sich die IP-Adresse ändert. Auf diese Weise funktioniert der Zugang zum Heimnetz über DynDNS auch dann, wenn sich die IP-Adresse am Internetanschluss ändert, was häufig einmal pro Tag der Fall ist.

Portfreigabe für den Zugriff auf den Homeserver einrichten

Grundsätzlich ist das Heimnetzwerk nun über das Internet erreichbar. Versucht man allerdings über die oben vergebene Adresse auf das Heimnetz zuzugreifen, dann scheitert der Zugang jedoch am Router, in diesem Beispiel an der Fritzbox, die standardmäßig alle Zugriffe auf das Heimnetz blockt. Damit man von unterwegs auf den Homeserver zugreifen kann, muss eine Portfreigabe eingerichtet werden. Auf der Fritzbox findet man die Einstellungen hierzu unter Internet -> Freigaben -> Portfreigaben. Dort wählt man dann den Button “Gerät für Freigabe hinzufügen

Im Dropdown-Menü sollte bereits der Homeserver mit dem Namen Mimas vorhanden sein. Fall das Gerät fehlt, sollte man den Homeserver einmal neu starten. Nachdem der Rechner gestartet ist muss die Konfigurationsoberfläche im Browser neu geladen werden. Dann sollte das Gerät in der Liste erscheinen.

Im unteren Bereich muss zum Erstellen einer Portfreigabe noch der Button “Neue Freigabe” geklickt werden. Im nächsten Fenster wird als Anwendung “HTTPS-Server” ausgewählt, wodurch alle weiteren Felder automatisch ausgefüllt werden. Falls man einen Router besitzt, der das automatische Ausfüllen nicht anbietet, muss als Portnummer sowohl für interne als auch externe Ports die Nummer 443 und als Protokoll TCP angegeben werden.
Mit einem Klick auf “OK” wird der Homeserver wirklich über das Internet erreichbar gemacht.

Portfreigabe in Fritzbox erstellen

Diesen Schritt muss man für die Portnummern 80 sowie 32400 wiederholen. Port 80 wird für unverschlüsselte http-Verbindungen benötigt. Außerdem wird der Port verwendet, um das Let’s Encrypt Zertifikat für die verschlüsselte https-Verbindung auszustellen. Port 32400 ist der Standardport von Plex für das Streaming von Musik und Videos. Für die Freigabe des Ports 32400 wird im Menü bei Anwendung „Andere Anwendung“ ausgewählt, damit kann man eine beliebige Portnummer freigeben.

Nach dem Speichern der angelegten Freigaben sieht die Übersicht in der Fritzbox folgendermaßen aus:

Portfreigaben Fritzbox für den Homeserver

Es wurde also eine Freigabe, bzw. Portweiterleitung für folgende Ports eingerichtet.

  • 80
  • 443
  • 32400

Homeserver aus dem Internet erreichbar machen, Option 2: Ohne öffentliche IPv4 Adresse

An einem DS-Lite Internetzugang, bzw. jedem Internetzugang ohne öffentliche IPv4-Adresse hat man mit folgenden Schwierigkeiten zu kämpfen.

  • Der Internetzugang hat keine öffentliche IPv4 Adresse. Damit ist von außen keine Verbindung zum Heimnetz via IPv4 möglich.
  • Gerade im Mobilfunknetz bekommt man häufig nur eine IPv4 Adresse und keine IPv6-Adresse. In der Praxis bedeutet das, dass man mit dem Smartphone nicht auf das Heimnetz zugreifen kann.
  • Der Internetzugang verfügt jedoch über eine öffentliche IPv6 Adresse. Ein Zugang ist somit über IPv6 möglich.
  • Jedes Gerät im Heimnetz hat seine eigene öffentliche IPv6 Adresse (nicht nur eine einzige für den Router, wie bei IPv4).
  • Klassisches DynDNS im Router und Portfreigaben funktionieren nicht, da man über die DynDNS-Adresse nur auf den Router zugreifen könnte, da dessen Adresse im DynDNS-System hinterlegt ist. Diese Situation könnte man u. a. dadurch lösen, dass man auf dem Homeserver/NAS einen DynDNS-Client laufen lässt und nicht die Funktion im Router nutzt.

Hierfür kann man eine Software wie ddclient auf dem Homeserver verwenden, um bei der DynDNS-Adresse die IPv6 Adresse zu aktualisieren. Wer dies umsetzen möchte, findet hierzu eine hilfreiche Beispielkonfiguration im Wiki von Ubuntuusers unter https://wiki.ubuntuusers.de/DDNS-Clients/

Relativ elegant lassen sich all die genannten Probleme lösen, wenn man über einen Relay-Server auf das Heimnetz zugreift. Das bedeutet, dass man sich von unterwegs nicht direkt mit dem Homeserver im Heimnetz, sondern mit einem Server im Internet verbindet. Dieser Server ist sowohl via IPv4, als auch via IPv6 erreichbar und baut wiederum via IPv6 eine Verbindung zum eigenen Internetanschluss und dem Homeserver auf. Er dient damit als eine Art Zwischenstation und Übersetzer von IPv6 auf IPv4.

Relay Server Prinzip

Der Vorteil dieser Lösung ist, dass man nun wieder aus allen Netzen von unterwegs auf das Heimnetz zugreifen kann. Dabei ist es egal, ob die Endgeräte über eine IPv4 oder eine IPv6 Adresse verfügen.

Allerdings hat die Lösung auch Nachteile. So wird der gesamte Datenverkehr zwischen den Geräten außerhalb des Heimnetzes (Smartphone, Laptop etc.) und dem Homeserver im Heimnetz über den Relay-Server umgeleitet. Dies kann sich negativ auf Paketlaufzeit und die Geschwindigkeit auswirken. Wenn der Traffic unverschlüsselt ist (also nicht über https), dann hat der Anbieter des Relay-Servers die Möglichkeit den Internetverkehr mitzulesen. Nicht nur aus diesem Grund sollte man Daten über das Internet nur verschlüsselt übertragen. Da für den Anbieter des Relay-Servers ggf. große Datenmengen entstehen, ist ein solcher Dienst in der Regel kostenpflichtig. Es gibt auch kostenlose Dienste, deren Performance aber entsprechend gering ist.

Die Einrichtung eines solchen Dienstes unterscheidet sich sehr stark, je nachdem welchen Anbieter und welchen Router man verwendet. Es ist daher kaum möglich, eine Anleitung zu schreiben, die für jeden funktioniert. Als Beispiel wird in dieser Anleitung die Einrichtung mit einer Fritzbox, dem MyFritz-Dienst als DynDNS-Service und feste-ip.net als Betreiber des Relay-Servers beschrieben. Dieses Setup ist relativ einfach und kostengünstig einzurichten. Außerdem ist die Fritzbox weit verbreitet.

MyFritz!-Konto einrichten

Zuerst wird ein kostenloses MyFritz-Konto eingerichtet und mit der Fritzbox verbunden. Je nach Anbieter ändern sich leider auch die IPv6-Adressen, die man vom Internetanbieter erhält, sodass man nach wie vor einen DynDNS-Anbieter benötigt. Die Verwendung von MyFritz hat den Vorteil, dass der Dienst automatisch eine Subdomain für alle Computer im Heimnetz anlegt, für die Freigaben ins Internet eingerichtet wurden. Damit wird kein eigener DynDNS-Client auf dem Homeserver benötigt, was das Setup noch komplexer machen würde, als es ohnehin ist.

  • Als Erstes loggt man sich in der Benutzeroberfläche der Fritzbox ein
  • Dort klickt man auf “Internet”.
  • Im Menü „Internet“ wählt man „MyFRITZ!-Konto„.
  • In das Eingabefeld “Ihre E-Mail-Adresse” muss man eine gültige E-Mail-Adresse eintragen.
  • Mit einem Klick auf den Button “Weiter” sendet MyFRITZ! eine E-Mail mit dem Bestätigungslink an die eingegebene Adresse.
  • In der E-Mail muss man auf die Schaltfläche „Ihre FRITZ!Box registrieren“ klicken. Damit wird man auf die MyFRITZ!-Internetseite weitergeleitet. Dort klickt man auf den Link „MyFRITZ!-Konto einrichten„.
  • Hier vergibt man über die Eingabefeldern „Kennwort“ und „Kennwort bestätigen“ ein eigenes Passwort. Dieses wird benötigt, um sich künftig auf myfritz.net anzumelden.
  • Mit einem Klick auf den Button „Vorgang abschließen“, ist die Anmeldung bei MyFritz beendet.

Internetzugriff zum Homeserver über MyFritz! einrichten

Nun wird der Zugriff zum Homeserver konfiguriert. Auch dies geschieht über die Benutzeroberfläche der FritzBox.

  • In der Benutzeroberfläche der Fritzbox klickt man auf den Menüpunkt “Internet” und anschließend auf “Freigaben”.
  • Hier wählt man den Reiter “Portfreigaben”.
  • Dann klickt man den Button “Gerät für Freigaben hinzufügen”.
  • Im Dropdown-Menü “Gerät” wählt man den Homeserver aus, in diesem Beispiel hat er den Namen Mimas.

Wichtig ist, dass man an dieser Stelle darauf achtet, dass die IPv6 Interface-ID die in der Fritzbox angezeigt wird, und die tatsächliche Interface-ID des Homeservers übereinstimmen. Andernfalls funktioniert der Zugang nicht. Um dies zu prüfen, loggt man sich auf dem Homeserver ein und gibt folgenden Befehl in das Terminal ein.

ip -6 addr

Damit werden alle IPv6 Adressen aufgelistet, die dem Homeserver zugeordnet sind. Aus dieser Liste sucht man sich die IPv6-Adresse aus, die NICHT mit fd00 oder fe80 beginnt. Die letzten vier Blöcke der Adresse müssen mit der Interface-ID in der Fritzbox übereinstimmen. Ist dies nicht der Fall, muss man den Eintrag in der Fritzbox manuell anpassen.

Interface ID in Fritzbox eintragen
Interface ID herausfinden
  • Zum Erstellen der Freigabe klickt man jetzt auf den Button “Neue Freigabe”.
  • Dort wählt man die Option “MyFRITZ!-Freigabe”.
  • Im Menü “Anwendung” wählt man HTTP-Server aus.
  • Die anderen Felder müssen nicht ausgefüllt werden. Mit einem Klick auf “OK” wird die Freigabe eingerichtet.
  • Diesen Vorgang wiederholt man nun und wählt im Menü “Anwendung” HTTPS-Server aus.
  • Anschließend erstellt man noch eine Freigabe für den Port 32400.
  • Mit einem Klick auf “OK” werden die Freigaben erstellt.

Achtung: Port 32400 fehlt im Screenshot. Muss aber ebenfalls angelegt werden, wenn man Plex über das Internet verwenden will. Wenn man nur Nextcloud verwendet, reichen die Ports 80 und 443.

Internetfreigaben Fritzbox Übersicht

Jetzt wird noch die individuelle MyFRITZ-Adresse benötigt, die mit der Freigabe automatisch für den Homeserver erstellt wurde. Diese kann man sich anzeigen lassen, wenn man die Option zum Bearbeiten der Freigabe aufruft.

  • Hierzu klickt man auf das Stift-Icon auf der rechten Seite
  • Im folgenden Fenster klickt man wieder auf das Stift-Icon neben einer beliebigen Freigabe.
  • Im Feld “MyFRITZ!-Adresse” sieht man nun die individuelle MyFritz-Adresse für den Homeserver, gefolgt von der Portnummer nach dem Doppelpunkt.

Der Teil nach dem http:// und vor dem :80 wird im nächsten Schritt zum Einrichten des Relay-Servers benötigt.

Beispielsweise: mimas.​lasdgoetnvklvwph.​myfritz.​net

Portmapper von Feste-IP.Net als Relayserver einrichten

Um das Problem mit der fehlenden öffentlichen IPv4-Adresse zu lösen, muss nun noch ein Relayserver eingerichtet werden. Beim Anbieter Feste-IP.Net sind diese unter den Produktnamen Portmapper erhältlich. Da der Betrieb der Server Geld kostet, ist das Angebot zwar nicht kostenlos, je nach Produktvariante aber sehr kostengünstig.

Man muss zwei Produkte unterscheiden, den universellen Portmaper von Feste-IP.Net und den dedizierten Portmapper.

Der universelle Portmapper teilt sich eine IPv4 Adresse mit anderen Nutzern auf demselben Server. Diese Version ist für knapp 4 € pro JAHR zu bekommen. Allerdings bekommt man hier keine Standardports, da diese pro IP-Adresse nur einmal verfügbar und dementsprechend knapp sind. Dies bedeutet, dass man beim Aufrufen seiner Internetadresse immer die Portnummer angeben muss. So kann man beispielsweise seine Nextcloud auf dem Homeserver nicht mit einer Adresse wie https://mymxtcloud.feste-ip.net aufrufen. Stattdessen muss man beispielsweise https://mymxtcloud.feste-ip.net:56083 verwenden.

Beim dedizierten Portmapper bekommt man eine eigene IPv4 Adresse. Damit kann man Standardports verwenden und sein NAS ohne angehängte Portfreigabe aufrufen. Hierfür werden zusätzlich 3,50 € pro Monat fällig.

In diesem Beispiel wird der universelle Portmapper verwendet. Bei der Anmeldung bei Feste-IP.Net erhält man 50 Credits Startguthaben, um das Angebot zu testen. Dies reicht, um den universelle Portmapper 50 Tage kostenlos zu testen.

  • Nach der Anmeldung bei Feste-IP.Net klickt man auf der Webseite auf den Button “Mein Account
  • Hier wählt man in der Seitenleiste die Option “Universelle Portmapper”.
    • Als Mapping-Server wählt man einen beliebigen Server in seiner Nähe. Dies verringert die Paketlaufzeiten.
    • Der Alias ist die DynDNS-Adresse, über die man später den Homeserver aus dem Internet erreichen möchte.
    • Bei “DNS oder IPv6 Ziel” gibt man die MyFRITZ-Adresse des Homeservers ohne http:// und ohne Portnummer ein. Beispielsweise: mimas.​lasdgoetnvklvwph.​myfritz.​net
    • Bei Ports gibt man die Ports an, über die man seinen Homeserver zugreifen möchte. Also “80” und “443” ein
    • Im Menü “1:1 Portmapper” wählt man “1x 1:1 Portmapper erstellen”
    • Über den Button “System eintragen und Portmapings erstellen” wird der Portmapper angelegt.
Feste-ip.net Portmapper einrichten

Achtung: Port 32400 fehlt im Screenshot. Muss aber ebenfalls angelegt werden, wenn man Plex über das Internet verwenden will. Wenn man nur Nextcloud verwendet, reichen die Ports 80 und 443.

In der Übersicht werden jetzt die Portnummern angezeigt, die man vom universellen Portmapper zugeteilt bekommen hat. In diesem Beispiel würde man den Homeserver über eine unverschlüsselte HTTP-Verbindung nun über http://mynxtcloud.feste-ip.net:10623 erreichen. Für eine verschlüsselte HTTPS-Verbindung müsste man https://mynxtcloud.feste-ip.net:10725 verwenden. Verwendet man den dedizierten Portmapper, ist keine Angabe von Portnummern nach der Domain nötig.

Die Verbindung zum Homeserver im Heimnetz funktioniert über diese Adressen aus dem Internet sowohl via IPv4 als auch via IPv6.


Übersicht: Ubuntu 20.04 Homeserver/NAS, Teil 1
Installation des Betriebssystems: Ubuntu 20.04 Homeserver/NAS, Teil 2
Grundkonfiguration: Ubuntu 20.04 Homeserver/NAS, Teil 3
Ordnerfreigaben: Ubuntu 20.04 Homeserver/NAS, Teil 4
Nextcloud: Ubuntu 20.04 Homeserver/NAS, Teil 5
Plex Mediaserver: Ubuntu 20.04 Homeserver/NAS, Teil 6
Backup: Ubuntu 20.04 Homeserver/NAS, Teil 7


Grundkonfiguration: Ubuntu 20.04 Homeserver/NAS, Teil 3 ist ein Beitrag von techgrube.de.

❌
❌