Selfhosting: Server aufsetzen und betreiben
Von Florian Bottke
()
Über dieses E-Book
Neben dem klassischen Webhosting, bei dem ein Server mit vielen anderen Kunden geteilt wird, gibt es die Möglichkeit zum Betrieb eines eigenen Servers. Während Webhosting-Angebote prinzipbedingt einigen Einschränkungen unterworfen sind, ist dies beim Betrieb eines eigenen Servers anders.
In diesem Buch soll in den Betrieb eines Servers eingeführt und über die notwendigen Schritte informiert werden. Das Buch beginnt mit der Beschaffung des Servers und nimmt den Leser mit auf eine Reise, über die Linux-Grundlagen, zur Einrichtung des Servers, bis zum Aufsetzen einzelner Dienste wie E-Mail, XMPP oder eines Webservers. Daneben werden weitere wichtige Themen wie die Wartung und Verwaltung, Backups und die Sicherheit eines Servers behandelt.
Florian Bottke
Florian Bottke, geboren 1987, arbeitet als passionierter Softwareentwickler und lebt seit vielen Jahren in Mecklenburg-Vorpommern. Dort genießt er die wundervolle Landschaft und die freundlichen Menschen der Region. Neben technischen Fachbüchern und Publikationen widmet er sich mit großer Hingabe der Belletristik. Sein Debütroman „Im leeren Himmel“ erschien 2023.
Ähnlich wie Selfhosting
Ähnliche E-Books
Linux-Server einrichten und absichern: Ein Praxisbuch für Admins zur sicheren Installation, Konfiguration und Verwaltung Bewertung: 0 von 5 Sternen0 BewertungenGeheime Profi-Tricks für schnellere Websites! Bewertung: 0 von 5 Sternen0 BewertungenSo findest du den Einstieg in WordPress: Die technischen Grundlagen zu Installation, Konfiguration, Optimierung, Sicherheit, SEO Bewertung: 0 von 5 Sternen0 BewertungenDas Blog-Kraftwerk Bewertung: 0 von 5 Sternen0 BewertungenLinux-Server zuverlässig sichern: Das Praxisbuch für Backup, Wiederherstellung und Ausfallsicherheit Bewertung: 0 von 5 Sternen0 BewertungenDocker und die Containerwelt: Einstieg und Expertentipps rund um Docker-Container Bewertung: 1 von 5 Sternen1/5So findest du den Einstieg in WordPress Teil II: Einführung in die Admin-Ansicht, Frontend und die Grundlagen der WordPress Einstellungen Bewertung: 0 von 5 Sternen0 BewertungenMastering Debian: Von den Grundlagen zur fortgeschrittenen Administration Bewertung: 0 von 5 Sternen0 BewertungenWebseiten hacken: Schnelleinstieg inkl. Entwicklung eigener Angriffsscripte Bewertung: 0 von 5 Sternen0 BewertungenLinux Netzwerktechnik Grundlagen: Ein praxisorientierter Leitfaden für Netzwerkkonfiguration, Tools und Fehlerbehebung unter Linux Bewertung: 0 von 5 Sternen0 Bewertungen
Rezensionen für Selfhosting
0 Bewertungen0 Rezensionen
Buchvorschau
Selfhosting - Florian Bottke
Einleitung
Wer heutzutage eine Webseite oder einen Blog ins Internet stellen möchte, wird nicht einmal mehr einen Webhoster benötigen. Dienste wie Wordpress.com, Tumblr und Medium ermöglichen jedem, so etwas schnell aufzusetzen. Nach der Registrierung dauert es nur einige Minuten und schon kann die Arbeit am neuen Blog oder der Webseite begonnen und diese mit Inhalten befüllt werden.
Zu dieser gefühlten Freiheit kommt allerdings eine Abhängigkeit. Denn, so bequem diese Dienste auch sein mögen, am Ende bilden sie riesige Datensilos. Aus einem solchen können die eigenen Daten unter Umständen nur schwer wieder exportiert werden. Dies kann dazu führen, dass der Nutzer im schlimmsten Fall auf Gedeih und Verderben dem jeweiligen Anbieter ausgeliefert ist.
Eine andere Möglichkeit ist es, Webspace bei einem Webhoster zu mieten. Hier erhält der Nutzer meist ein sogenanntes LAMP-Paket, bestehend aus Linux, dem Webserver Apache, der Datenbank MySQL bzw. MariaDB und der Skriptsprache PHP. Der Umfang der Angebote ist von Webhoster zu Webhoster unterschiedlich. So wird mal mehr Speicher geboten, dafür liefert ein anderer Webhoster Python, Go oder Ruby als zusätzliche Skriptsprachen mit. Hier muss der Nutzer abwägen, was den eigenen Anforderungen entspricht.
Die flexibelste, aber auch arbeitsintensivste Methode, ist es einen eigenen Server zu betreiben. Um das Aufsetzen und den Betrieb eines solchen soll es in diesem Buch gehen. Als Betriebssystem wird ein Linux – in diesem Fall die Linux-Distribution Ubuntu, in der Servervariante – genutzt.
Das Buch soll dem Leser ein grundlegendes Verständnis über den Serverbetrieb und die damit verbundenen Aufgaben und Probleme vermitteln und ihn am Ende in die Lage versetzen, einen solchen Server eigenständig zu betreiben.
Aufbau
Das Buch beginnt mit den Grundlagen des verwendeten Betriebssystems, in diesem Buch ist das eine Linux-Distribution (Ubuntu 22.04 LTS). Nachdem die Grundlagen des Systems geklärt sind, geht es weiter mit der Installation und den notwendigen Einstellungen.
Danach folgen in den weiteren Kapiteln die unterschiedlichen Anwendungsgebiete eines Servers, wie E-Mail, Webserver und andere Dienste. Die Kapitel gegen Ende des Buches befassen sich mit allgemeinen und wichtigen Themengebieten aus dem Umfeld des Serverbetriebs, wie dem Backup oder der Sicherheit des Servers.
Die Kapitel in diesem Buch können relativ unabhängig voneinander gelesen werden; eine Lektüre Stück für Stück ist nicht notwendig.
Bei Maßeinheiten, welche Speicherangaben betreffen, werden die von der International Electrotechnical Commission festgelegten Präfixe genutzt. So heißt es z. B. statt Megabyte (MB), Mebibyte (MiB). Im Gegensatz zum klassischen SI-Präfix Mega, bei welchem ein Megabyte aus 1000 Kilobyte besteht, weisen die Einheiten nach dem Standard IEEE 1541-2002 deutlich darauf hin, dass es sich um binäre Präfixe handelt. Ein Mebibyte besteht somit aus 1024 Kibibytes und ein Kibibyte wiederum aus 1024 Byte.
Autor
Florian Bottke beschäftigt sich seit vielen Jahren mit Technik, IT und weiteren Themen aus diesem Dunstkreis. Neben seiner Leidenschaft für Technik, schreibt er Artikel, Publikationen und Bücher.
Beruflich arbeitet er als passionierter Softwareentwickler und ist seit mittlerweile über zwanzig Jahren in diesem Beruf unterwegs. Er lebt seit vielen Jahren in Mecklenburg-Vorpommern, genießt die wundervolle Landschaft und die freundlichen Menschen der Region.
Im Web zu finden ist er unter seeseekey.net – daneben betreibt er mit seinem Mitstreiter Felix einen Podcast rund um das Super Nintendo Entertainment System. Dieser ist unter snescast.de zu finden.
Beschaffung
Bevor die Arbeit am eigenen Server beginnen kann, wird ein Anbieter und ein Server benötigt. Hier sollte nicht der erstbeste Anbieter, der einem über den Weg läuft, gewählt werden, denn bei der Wahl des Anbieters und des dazugehörigen Servers gibt es einige Dinge zu beachten.
Der passende Anbieter
Vor der Einrichtung eines eigenen Servers benötigt der geneigte Serverbetreiber natürlich erst einmal einen solchen. Grob betrachtet existieren dafür zwei Modelle. Das erste Modell ist das Mieten eines Servers für einen bestimmten Betrag pro Monat. Das andere Modell ist unter dem Namen Colocation bekannt. Hierbei wird eigene Hardware genutzt und der Anbieter dafür bezahlt, den Server mit der entsprechenden Infrastruktur – Strom und einer Anbindung an das Internet – zu versorgen.
Wer jetzt auf die Idee kommt, einen solchen Server doch lieber im trauten Heim zu betreiben, sollte diese Überlegung einer genauen Betrachtung unterziehen. Im Gegensatz zu einem Rechenzentrum ist es zu Hause schwierig eine hohe Verfügbarkeit zu gewährleisten. So kann der Strom ausfallen oder der Netzanbieter hat Probleme mit der Anbindung, sodass der Server plötzlich nicht mehr zu erreichen ist. Außerdem ist die Anbindung für Hausanschlüsse in den meisten Fällen wesentlich schlechter als in einem Rechenzentrum. Dort sind die Anbindungen an das Internet nicht nur mit entsprechender Bandbreite ausgestattet, sondern auch redundant ausgelegt. Das bedeutet, dass ein Rechenzentrum mit mehr als einem Internet Service Provider verbunden ist.
Bei der Wahl zwischen dem Mieten eines Servers und der Colocation müssen die eigenen Anforderungen beachtet werden. Wer keine Spezialhardware, wie Grafikkarten mit einer großen Anzahl von Shadereinheiten, für die Beschleunigung aufwendiger Berechnung benötigt, kann ruhigen Gewissens auf einen gemieteten Server setzen.
Die Empfehlung des Autors für den ersten Server wäre die Hetzner Online GmbH, welche unter hetzner.de zu finden ist. Dort sind sinnvoll konfigurierte Server zu einem günstigen Preis erhältlich.
Der richtige Server
Nachdem der passende Anbieter ausgewählt wurde, muss ein Server aus dem Angebot des Anbieters gewählt werden. Je nach Anbieter finden sich Server in den unterschiedlichsten Ausbaustufen. Grob können die angebotenen Serverprodukte in zwei Kategorien eingeteilt werden. Zum einen existieren sogenannte virtuelle Server, zum anderen dedizierte Server.
Auf den ersten Blick lässt sich kein Unterschied erkennen, da der Nutzer bei beiden Servertypen die volle Kontrolle über das jeweilige Betriebssystem erhält. Auf dem Server kann ein Betriebssystem der Wahl installiert und in diesem nach Belieben verfahren werden.
Während ein dedizierter Server mit niemandem geteilt werden muss, sieht es bei einem virtuellen Server etwas anders aus. Hier setzt der eigene Server nicht direkt auf der Hardware auf, sondern befindet in einer virtuellen Maschine. Das bedeutet, dass sich die Leistung der darunter liegenden Host-Maschine mit anderen Kunden geteilt werden muss. Dafür sind solche Server wesentlich günstiger als dedizierte Server.
Bei virtuellen Servern existieren mittlerweile sogenannte Cloud-Angebote am Markt. Bei diesen wird ein virtueller Server mit bestimmten Ressourcen gemietet. Allerdings können die Ressourcen jederzeit angepasst werden; gezahlt wird immer nur der Preis für die verwendeten Ressourcen wie CPUs, RAM, dem benötigtem Speicherplatz und der Zeit, die der Server läuft.
Grundsätzlich sollte abgewogen werden, ob ein virtueller Server für die eigenen Zwecke genügt. Soll nur ein Mail- oder XMPP-Server betrieben werden, ist ein solcher Server in den meisten Fällen ausreichend.
Anders sieht es aus, wenn eine Webseite mit vielen Zugriffen oder ein Gameserver betrieben werden soll – hier wird sich die Leistung eines dedizierten Servers bemerkbar machen.
Nachdem die Entscheidung, ob es ein virtueller oder dedizierter Server werden soll, getroffen wurde, geht es daran, ein Angebot mit der passenden Leistungsfähigkeit zu finden. So beginnen günstige virtuelle Server schon ab einigen Euro im Monat, während dedizierte Server bei knapp 50 € pro Monat beginnen.
Nach oben ist hierbei – wie bei vielen Dingen im Leben – keine Grenze gesetzt. So ist es ohne weitere Probleme möglich, einen Server für 1400 € im Monat zu mieten, aber wer benötigt wirklich unzählige CPU-Kerne, 4 TiB RAM und 120 TiB an Festplattenspeicher?
Deshalb gilt es, bei der Wahl des Servers darauf zu achten, dass dieser nicht zu überdimensioniert ist. Als Richtschnur sollte ein Server mit mindestens 16 GiB Arbeitsspeicher und einem Quad-Core-Prozessor gelten. Damit ist der dedizierte Server für die meisten Aufgaben gut gerüstet. Je nach geplanter Verwendung des Servers können auch kleinere Server gewählt werden. Für einen privaten Mailserver wird ein Server mit 2 GiB Arbeitsspeicher und einem Dual-Core-Prozessor vollkommen ausreichen.
Bei virtuellen Servern existiert keine echte CPU, sondern es werden sogenannte virtuelle CPUs zugewiesen. Je nach Anforderung können hier ein oder zwei CPU-Kerne genügen.
Bei der Wahl der Festplatte kann zwischen einem Solid-State-Drive (SSD), welches durch kurze Zugriffszeiten und hohe Transferraten besticht und normalen Festplatten, welche hohe Kapazität liefern, gewählt werden.
Wer viel Speicherplatz auf seinem Server benötigt, sollte zu klassischen Festplatten greifen. Hält sich der Speicherbedarf in Grenzen, kann bedenkenlos zu einer SSD gegriffen werden.
Bei umfangreichen Serverkonfigurationen sind auch Kombinationen aus einer SSD und gewöhnlichen Festplatten denkbar. In einer solchen Konfiguration könnte die SSD als Systemplatte dienen, während die Daten auf der Festplatte vorgehalten werden. Die Nutzung von SSDs führt meist zu einem höheren Preis als die Nutzung gewöhnlicher Festplatten.
Je nach Anbieter sollten die Konditionen für den Datentransfer aufmerksam studiert werden. Ein Server steht in den meisten Fällen nicht nur herum, sondern liefert Daten aus und empfängt diese. Bei den meisten Anbietern ist ein bestimmtes Datenvolumen inklusive, z. B. 10 TiB pro Monat – danach muss für jedes weitere Byte bezahlt werden. Andere Anbieter handhaben dies teilweise anders. So existieren Angebote mit einem Inklusivvolumen. Nach dem Erreichen dieses Volumens wird die Geschwindigkeit der Anbindung gedrosselt, z. B. von 1000 MBit/s auf 10 MBit/s. Wird wieder eine Anbindung mit höherer Transferrate benötigt, sind zusätzliche Zahlungen zu leisten, oder es muss bis zum nächsten Monat gewartet werden.
Die Variante mit dem Inklusivvolumen wurde jahrelang bei Hetzner praktiziert. Mittlerweile kommen die dedizierten Server, mit einem 1 GBit-Uplink, dort ohne Traffic-Beschränkung aus.
Im Normalfall ist es so, dass die Inklusivvolumen in den meisten Tarifen bei Weitem ausreichen. Selten übersteigt das Datenvolumen eines eigenen Servers die in den Tarifen angegebenen Grenzen. Alternativ kommen Tarife ohne Traffic-Beschränkung infrage.
Grundlagen
Bevor die eigentliche Installation und Einrichtung eines Servers erläutert wird, sollen einige Grundlagen über Netzwerke und das Betriebssystem Linux vorangestellt werden.
Diese Grundlagen dienen dem Verständnis der darauffolgenden Kapitel. Dabei sollen die Themen nicht bis ins letzte Detail behandelt werden, sondern nur einen ersten Überblick geben, auf welchem später aufgebaut werden kann.
Linux-Grundlagen
Im Gegensatz zu einem Betriebssystem, das auf dem Desktop oder dem Mobiltelefon genutzt wird, kommt ein Serversystem meist ohne eine grafische Benutzeroberfläche aus. Das bietet einige Vorteile; so erzeugt das System weniger Last, was der Performanz des Servers zugutekommt.
Der Einsteiger sollte die Bedienung eines Linux-Systems erst auf einer virtuellen Maschine üben, sodass im Falle eines Falles nichts zu Bruch geht. Hierfür eignet sich die freie Software VirtualBox, von Oracle, mit deren Hilfe ein Rechner virtualisiert werden kann. VirtualBox ist für macOS, Linux und Windows verfügbar.
Im Gegensatz zu einem echten Rechner ist es möglich in einer virtuellen Maschine Schnappschüsse anzulegen und zu diesen jederzeit zurückzukehren. Damit kann das System auch im Falle eines katastrophalen Fehlers wiederhergestellt werden.
Alternativ kann das Windows-Subsystem für Linux (WSL) ab Windows 10 genutzt werden. Dieses stellt eine Linux-Distribution der Wahl zur Verfügung, welche unter Windows ausgeführt wird. Installiert werden kann die entsprechende Distribution über den Microsoft Store.
Ein System ohne grafische Oberfläche verfügt über weitere Vorteile. So werden Einstellungen nicht abstrahiert und sind somit für den Administrator des Servers direkt zu erreichen. Im Laufe der Zeit wird der Nutzer feststellen, dass viele Einstellungen, Konfigurationsschritte und Aufgaben auf der Konsole schneller von der Hand gehen und wesentlich unkomplizierter sind.
In diesem Buch wird die Linux-Distribution Ubuntu 22.04 LTS genutzt, da diese auch für Einsteiger geeignet ist. Linux selbst bezeichnet nur den Kern, den sogenannten Kernel, des Betriebssystems. Die Zusammenstellung des Kernels mit der entsprechenden Software, wie einer Shell, Anwendungspaketen und ähnlichem wird als Distribution bezeichnet.
Ubuntu ist eine von Debian abgeleitete Distribution und blickt mittlerweile auf eine über fünfzehnjährige Geschichte zurück. Sie wird von vielen großen Organisationen wie der Wikimedia Foundation für ihre Server genutzt.
Jedes halbe Jahr – immer im April und Oktober – wird eine neue Ubuntu-Version veröffentlicht. Die Versionen werden nach dem Schema Jahr.Monat versioniert. So trägt die Version vom Oktober 2013 die Versionsnummer 13.10 – die aktuelle LTS-Version vom April 2022 hingegen die Version 22.04.
Für normale Versionen werden vom Hersteller Canonical neun Monate Support angeboten, dies bedeutet, dass diese Versionen mit Aktualisierung und Sicherheitspatches versorgt werden. In zweijährigen Abständen erscheint eine sogenannte Long Term Support-Version, welche das Kürzel LTS trägt. Im Gegensatz zu normalen Versionen werden LTS-Versionen fünf Jahre lang unterstützt.
Dies macht sie zu idealen Kandidaten für Server, welche lange Zeit in Betrieb sein sollen und nicht unbedingt immer die neusten Softwareversionen benötigen. Es ist auch möglich, einen Server mit der normalen Version zu
