Wenn man einen frisch installierten Server bekommt hat dieser manchmal einen komischen Hostname. Dann ergibt es Sinn, diesen an die eigenen Bedürfnisse anzupassen. Das ganze ist einfach und geht schnell. Erstmal kannst du mit folgendem Befehl anzeigen lassen wie der derzeitige Name ist:
hostnamectl
Und ändern kannst du ihn mit dem folgenden Befehl:
hostnamectl set-hostname test02.cy3er.de
Meinen Hostname „test02.cy3er.de“ musst du natürlich gegen deinen gewünschten Hostname austauschen.
Nach einem Neustart wird auch bei root@v6752 wird dann root@test02 angezeigt wenn alles geklappt hat.
Was ist SSHFS? SSHFS ist ein FUSE-Modul, mit dem man entfernte Server über SSH in das eigene Dateisystem einbinden kann. Man kann mit diesem Modul, Dateien und Verzeichnisse auf dem entfernten Rechner editieren, kopieren oder verschieben. Wenn man eine stabile Verbindung hat,ist es so wie wenn die Dateien und Verzeichnisse auf dem lokalen Computer liegen.
Installation
sudo apt-get install sshfs
Benutzung
Wenn du nun das entfernte System einhängen möchtest, brauchst du erst mal einen leeren Ordner. In diesem Beispiel legen wir einen Ordner Namens /storage an.
sudo mkdir /storage
Das Einhängen erfolgt im Terminal über folgenden Befehl, vorher haben wir einen Ordner namens /storage erstellt:
Wenn der Befehl ohne Fehler ausgeführt wird, wird der Inhalt des entfernten Verzeichnisses /storage unter dem lokalen Verzeichnis angezeigt. Die Berechtigungen, die du auf dem entfernten Verzeichnis hast, sind die Berechtigungen, die der entfernte Benutzer hat: Standardmäßig werden lokale Rechte von SSHFS ignoriert. Das bedeutet, dass selbst wenn die UID des lokalen und des entfernten Benutzers nicht gleich sind, wie in diesem Fall, kannst du die Operation trotzdem durchführen. Wenn wir etwas innerhalb des gemounteten Verzeichnisses bearbeiten, tun wir es als der entfernte Benutzer, mit dem wir uns verbunden haben.
Anderen Benutzern den Zugriff auf den Mountpoint erlauben
Wenn der SSH-Port an deinem System nicht der Standartport 22 ist kannst du via -p[deinPort] eine Verbindung mit deinem Port aufbauen.
Einhängen des entfernten Verzeichnisses beim Booten
Hier gibt es einiges zu beachten. Das erste ist, dass du fuse.sshfs als Dateisystem verwendest. Zweitens haben wir die Einhängeoption IdentityFile verwendet, um den Pfad eines SSH-Schlüssels anzugeben. Das automatische mounten beim Start des Systems kann nur dann automatisch funktionieren, wenn die Verbindung ohne Passworteingabe funktioniert. Das lässt sich mit einem SSH-Schlüssel realisieren. Hier haben ich den IdentityFile „privatekey“ aus dem Verzeichnis „/home/user01/.ssh/privatekey“ genutzt. Den Public Key musst du vorher in der Datei /home/testuser01/.ssh/authorized_keys auf dem Remoteserver hinterlegen.
Dieser Befehl muss nun noch in die Datei /etc/fstab geschrieben werden.
sudo nano /etc/fstab
Mit diesem Befehl kannst du die Konfigurationsdatei /etc/fstab öffnen.
Dort trägst du dann deinen Befehl zum automatischen verbinden ein. Das kann dann etwa so aussehen, natürlich mit deinen Werten.
Um zu testen ob das funktioniert hat, kannst du deinem System folgenden Befehl übergeben
sudo mount -a
Mit dem Befehl „df -h“ kannst du dir alle Speichermedien und ihrem Verbrauch anzeigen lassen
Aushängen des entfernten Verzeichnisses Mit dem folgenden Befehl lässt sich das mit SSHFS eingebunden Remote Verzeichnis wieder trennen.
fusermount -u /storage
Fazit
Also ich selbst nutze diese Technik schon eine ganze Weile um meine restic Backups auf einem entfernten Server zu kopieren. Das funktioniert auch ohne Probleme. Wenn dir ein Fehler auffällt dann schreib mir gern eine Nachricht über mein Kontaktformular.
Die 6 CPU Kerne takten jeweils mit 3.1GHz. Der Prozessor ist ein AMD EPYC 9554. Die 24GB DDR5 RAM sind schon etwas für etwas größere Projekte. Also ich komme auf meinem Server mit meiner Nextcloud, 2 Websites, SearXNG Instanz, Invidous Instanz und einem Tool fürs Monitoring gerade mal auf 4GB im Schnitt. Aber es gibt mit Sicherheit Anwendungen die RAM hungrig sind. Die 300 GB basieren auf einem Ceph – Cluster. Der Speicher ist für Ausfallsicherheit, Selbstheilend und Live Migration bekannt. Ausfallsicherheit – es können mehrere NVMe’s ausfallen ohne das Daten verloren gehen. Wenn wirklich mal ein Hardware Defekt vorliegt heilt sich das System und verteilt die Daten auf dem System (Cluster) neu. Live Migration zwischen den einzelnen Host Systemen möglich. Das bietet die Möglichkeit den Speicher upzugraden. IPv4 & IPv6 ist immer noch die beste Option im Web. Da IPv6 allein noch nicht wirklich funktioniert, weil noch sehr viele Server nur mit IPv4 betrieben werden. Obwohl es möglich wäre die System umzustellen. Aber dazu mehr in meinem folgenden Beitrag zu IPv6 und die Vorteile. Die 2Gbit/s Uplink kommen natürlich nicht komplett an, weil es ein shared Medium in diesem Fall ist. Bei mehreren Test kamen Werte im Bereich von 1Gbit/s raus. Das ist aus meiner Sicht ein guter Wert mit dem man gut arbeiten kann.
Retrieving speedtest.net configuration...
Testing from SYNLINQ (37.114.55.244)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by FynnCraft Minecraft Network (Dortmund) [142.51 km]: 8.009 ms
Testing download speed................................................................................
Download: 1863.95 Mbit/s
Testing upload speed......................................................................................................
Upload: 1441.45 Mbit/s
Ein Test zum Sonntag Abend :)
Der Traffic wird mit Fair-Use angegeben, das finde ich ungünstig, da ich mir darunter nicht viel vorstellen kann. Entweder es gibt aus meiner Sicht eine Grenze oder er ist tatsächlich unlimitiert. Eine DDoS Protection ist mit inklusive, das finde ich gut und notwendig in der heutigen Zeit. Die Neuinstallation des VPS dauert unter einer Minute. Also bei dem klick auf „Starte Installation“ ist es vorbei mit den eigenen Daten. Dann ist mir aufgefallen, dass ich ja ein Backup vom Server hatte. Dieses habe ich wiederhergestellt. Und es war wie gewünscht alles wieder da.
Durch die KVM Virtualisierung und Nutzung eines eigenen Kernels mit garantierter Leistung, ist eine nahezu grenzenlose Skalierbarkeit möglich.
Windows als Alternative? Bei meiner Begutachtung des Servers bin ich vor allem auf das Thema Linux Server eingegangen. In dem Fall mit Debian 12. Es muss aber auch gesagt sein, dass du den Server auch mit Windows betreiben kannst. Dafür benötigst du aber eine Lizenz für z.B. Windows Server 2022. Aber ich habe auf dem Server aus Interesse einfach mal eine Testversion aufgesetzt. Die Installation geht auch automatisch aus dem Cloud-Panel heraus. Die Leistung des vServer ist ausreichend um den Windows Server 2022 zu installieren und zu betreiben. Im Leerlauf benötigt der Server Bereits 1,9 GB RAM von den 24 GB. Von den 300GB Speicher sind nach der Installation noch 287 GB übrig. Die CPU ist kaum ausgelastet. Ich kann aber nicht genau sagen wie viel verschiedene Serverdienste brauchen, da ich einfach von Windows keine Ahnung habe. Mein Fokus liegt klar bei Linux Systemen. Aber Windows lässt sich leicht aufsetzen und es läuft. Ich habe unter Windows mal einen Speedtest gemacht und war erstaunt wie viel besser das Ergebnis im Gegensatz zu Debian 12 war.
Im Backend steht auch Windows 10 als Betriebssystem zur Installation bereit. Der Betrieb von Windows 10 im Rechenzentrum ohne spezielle Firewall ist aus meiner Sicht keine gute Idee.
ISP : Oliver Horscht is trading as \“SYNLINQ\“ ASN : AS44486 Oliver Horscht is trading as \“SYNLINQ\“ Host : Prohosting24 Location : Frankfurt am Main, Hesse (HE) Country : Germany
fio Disk Speed Tests (Mixed R/W 50/50) (Partition /dev/sda2):
Bei prohosting24.de gibt es eine spannende Gegebenheit. Sie haben ein eigenes Interface fürs Backend. Das erklärt auch, warum ich selbst noch nie das gute Stück gesehen habe. Ich bin der Meinung das es übersichtlich ist. Die Menüpunkte sind aussagekräftig
Was kann das Interface?
Automatische Backupfunktion
RAM & CPU Graphen / Statistiken
Einfaches Up- und Downgrade im Interface
Automatisch das Password zurücksetzen
noVNC
IPv4 & IPv6 rDNS Verwaltung
ISO Images einfach einbinden
Der erste Reiter zeigt die IP Adresse, sowohl IPv4 als auch IPv6. Wenn man seinen Server automatisch erstellen lässt, sind bereits beide IP’s hinterlegt und funktionieren. Was ich sehr gut finde, ist die automatische Backupfunktion. Bzw. ist es ziemlich cool, dass es eine kostenlose Backupfunktion direkt mit dazu gibt. 2 Backup Slots sind es, so kannst du Morgens und einmal Abends ein Backup erstellen lassen. Das sollte aber nicht deine einzige Backup Option sein. Über den Reiter Cronjob lässt sich auch die genaue Zeit für Backups einstellen. Die Backups werden im Betrieb erstellt. Also ist der Server die ganze Zeit online. Netzwerk/ ISO / Speicher, in diesem Reiter lassen sich alle Einstellungen zum Thema Netzwerk regeln. Du kannst in dieser Kategorie z.B. ISO Datein in dein virtuelles Laufwerk mounten um ein Betriebsystem von Hand auf dem Server zu installieren. Außerdem lässt sich auch die Bootreihenfolge anpassen. Die Option Langzeit Statistiken, gibt dir die Möglichkeit Langzeitdaten von RAM CPU und NETWORK IO und DISK IO. RAM steht für den Arbeitsspeicher, CPU für den Prozessor, NETWORK IO Netzwerk Input / Output und DISK IO für die Schreib- und Leseleistung des Ceph-Speichers. noVNC kann dir dann helfen, wenn du via SSH keine Verbindung mehr zum Server herstellen kannst. Auch wenn du ein Rettungssystem für deinen Server brauchst kommst du via noVNC an deinen Server ran.
Besonderheiten Der Anbieter hat ein eigenes Backend für die Verwaltung des vServers. Der NVMe Speicherplatz wird durch ein Ceph – Cluster bereit gestellt. Außerdem gibt es für den Server zwei Backup Slots mit dazu. Die CPU ist auf einem aktuellen Stand AMD EPYC 9554 Codename: Genoa.
Support Der Support ist via E-Mail, Ticketsystem oder auch telefonisch möglich. Außerdem gibt es auch einen Discord Server zum schnellen Informationsaustausch. Eine weitere Möglichkeit ist die Kommunikation via WhatsApp.
Vertragsdetails Die Server haben keine langen Mindestvertragslaufzeiten sondern sind monatlich kündbar. Es läuft über ein Prepaid System. Man kann seinen Server zu jeder Zeit verlängern. Den Server so wie er oben beschrieben ist findet ihr auf dieser Seite [Werbung] Prohosting24 – Genoa Der Anbieter bietet auch noch Plesk Webhosting und Domains an. Eine .de Domain für 6.95€ / Jahr ordne ich im Durchschnitt ein. Als Zahlungsmöglichkeiten gibt es die folgenden: mit PayPal, PaySafeCard, Banküberweisung, Sofortüberweisung, AmazonPay und Kreditkarte.
Rechenzentrum Maincubes – FRANKFURT-01 Das Rechenzentrum hat eine Fläche von 4.200 Quadratmeter. Das Kühlungskonzept nutzt Freiluft was die Kühlung sehr effizient macht. Es wird ausschließlich mit Ökostrom versorgt.Der Brandschutz, hat eine Früherkennung und automatischer Löschgasanlage. Das Rechenzentrum bietet u.a. mehrstufige Zutrittskontrollen und Kameraüberwachung, sowie einen 24-h-Sicherheitsdienst. Die individuellen IT-Infrastrukturinstallationen erfüllen jedes Kundenbedürfnis ohne bauliche Einschränkungen.
Fazit Insgesamt bekommt man hier einen VPS der neuste Technik nutzt und dank dem DDR5 ECC RAM und dem NVMe Ceph-Speicher, ist der Server sehr fix unterwegs. Der Ceph – Speicher ist für mich neu und ich bin vorher noch nicht damit in Berührung gekommen. Im Hinblick auf Datensicherheit ist das aber ein klarer Vorteil für diese Technik. Für ein kommendes Projekt, könnte ich mir vorstellen bei prohosting24.de meinen Server zu mieten. Einzig kleines Manko ist, dass mir derzeit der Speicherplatz etwas zu wenig ist. Ein Hybrid Server der sowohl NVMe als auch HDD Speicher hat, wäre super für mich.
Wie es im Titel schon steht, soll es im heutigen Beitrag um das auf Debian basierte System YunoHost gehen. Wir gehen gemeinsam durch, wie man es kinderleicht installiert. Außerdem installieren wir erste App’s um mit dem guten Stück etwas herumexperimentieren.
Für meinen Test hat mir auf Anfrage [Werbung] 1fire.de einen vServer mit den folgenden Daten zur Verfügung gestellt. Vielen Dank an Danny Lotz :
2 CPU-Kerne
4 GB RAM (DDR5)
100 GB NVMe SSD
1 GBit/s Uplink
20 TB Traffic
1 IPv4-Adresse
1 IPv6 /64-Netz
Für die Yunohost Installation benötigen wir Debian 11 ! Das ist eine der Voraussetzungen für die Installation. Weitere Voraussetzungen sind:
2 GHz CPU-Kern
512MB – 1GB RAM
eine Domain oder Subdomain
1 IPv4 Adresse
Also haben wir mit dem vServer alles was wir brauchen.
Zur Vorbereitung für unsere Yunohost Installation benötigen wir noch zwei Pakete:
apt install curl ca-certificates
Dann können wir schon den Installations-Script ausführen:
curl https://install.yunohost.org | bash
Dann startet auch schon die Installation die erste Meldung müssen wir mit „Yes“ bestätigen.
Die folgende Meldung bestätigen wir auch mit „Yes“ dadurch geben wir das Okay das unser SSH-Dienst von nun an von Yunohost organisiert wird. Im Einstellungsmenü lassen sich später noch Dinge konfigurieren.
Jetzt installiert er ein paar Pakete, die so benötigt werden.
Wenn das alles durch ist, kommt eine Meldung das die Installation erfolgreich war „YunoHost Installation completed!“
Nun geht die Installation im Browser weiter, dafür geben wir wie in der Meldung geschrieben unsere Server IP mit https://IPv4 ein und dann geht es weiter. Dort erwartet uns gleich eine Fehlermeldung. Das liegt daran, da wir noch kein Sicherheitszertifikat hinterlegt haben. Also können wir mit einem Klick auf „Erweitert“ und dann auf „Risiko akzeptieren und fortfahren„. Wenn man sonst solch eine Meldung bekommt sollte man wirklich immer abchecken was man dort tut.
Nun kommt eine Meldung mit Gratulation und hier kannst du schon mal stolz auf dich sein. Als nächsten Schritt klickst du auf Anfangen.
Nun geht es an die Domainangabe. Hier klickt ihr auf „Ich möchte eine eigene Domain bzw. Subdomain eingeben„. Das machst du dann. Und klickst auf „Weiter“
Dann geht es an die Erstellung des ersten Administrator Accounts. Dort wieder alles ausfüllen und auf „Weiter“ klicken.
Der nächste Schritt wird ein paar Minuten dauern. Lehne dich einfach zurück und warte auf dein Schlüsselfertigen Server.
Nun ist der Server soweit. Jetzt sollten wir noch ein Let’s Encrypt Zertifikat für unsere Subdomain anlegen, damit wir nicht ständig die Meldung bekommen das mit unserem Zertifikat nicht stimmt. Aber vorher machen wir noch die initial Diagnose. Dafür klickst du einfach auf „Diagnose“ wenn du dich eingeloggt hast. Dort klickst du anschließend auf die Initiale Diagnose starten
Dann wenn der Prozess fertig ist kommt eine Auflistung mit Infos über den Server und wahrscheinlich ein Paar Fehlermeldungen. Diese können wir vorerst ignorieren.
Jetzt klickst du auf das YunoHost Logo um wieder zum Hauptmenü zu gelangen. Dort klickst du auf „Domänen“ Und dann auf deine Subdomain bzw. Domain Dann wählst du die Registergruppe Certificate
Nun kannst du mit einem Klick auf Installation des Let’s Encrypt-Zertifikat das Zertifikat für deine Domain erstellen und installieren.
Das kann wieder einen Moment dauern. Aber dann kommt die Meldung das alles gut gelaufen ist.
Jetzt kannst du dich aus dem Panel einmal „Abmelden“. Nun kannst du dich ohne Fehlermeldung mit deiner Domain bzw. Subdomain am Panel anmelden. Bei mir ist das die Subdomain test01.cy3er.de Nun haben wir die Grundinstallation fertig.
Jetzt geht es ans rumprobieren und wie ich auch gern sag, rumspielen. Die Menüführung von YunoHost ist aus meiner Sicht so ziemlich selbsterklärend.
Unter dem Punkt „Konten„, lassen sich noch mehr Nutzer:innen zum Server hinzufügen. Die Unterkategorie „Domänen“ hast du ja schon kennengelernt, über diese Option lassen sich noch weitere Domains/Subdomains hinzufügen. Der Punkt „Applikationen“ dient der Software Installation. Dort gibt es z.B. WordPress, Owncloud, Nextcloud, Invidious und viele mehr. Mit dieser Option, lassen sich viele Apps kinderleicht installieren und updaten. Dann der Punkt „System aktualisieren“ ermöglicht eine einfache Aktualisierung des gesamten YunoHosts Unter dem Punkt „Werkzeug„, lassen sich einige Einstellungen des Systems vornehmen z.B. Konfiguration der Firewall oder weitere Einstellungen. Außerdem gibt es die Option „Diagnose„, hier kannst du schauen ob es Fehler in der Konfiguration des Servers gibt.Dort geht es vor allem um die DNS-Einstellungen. Und der letzte Punkt „Datensicherung“ hilft dir beim erstellen von Backups. Du kannst ein komplettes Backup vom YunoHost Server machen oder nur einzelne Dienste. Die Datensicherung findet dabei nur auf dem selben System statt, daher empfehle ich noch eine separate Kopie des Backups auf einen anderen Server oder dem heimischen PC zu sichern. Zu dem Thema Backup, findest du hier weitere Informationen.
Fazit zur Installation Also aus meiner Sicht war das eine gemütliche Runde ohne große Anstrengung. Am Anfang musste ich im Cloud-Panel von 1fire.de meine virtuelle Maschine aufsetzen. Dort wurde ich sehr gut durch die Installation geführt. Die Installation erfolgte auf Knopfdruck. Dort habe ich mir ein Debian 11 installieren lassen. Vor der Installation konnte ich direkt meinen SSH-Schlüssel hinterlegen, sodass ich mich direkt mit Key statt mit Password anmelden konnte. Die Bereitstellung erfolgte innerhalb einer Minuten. Ich bin absolut fasziniert wie schnell das ging. Dann habe ich mich mit meinem root Account direkt via SSH eingeloggt. Dort habe ich wie oben beschrieben zwei Pakete zur Vorbereitung der YunoHost Instanz, installiert. Auch die YunoHost Installation ging sehr schnell von statten.
Um noch mehr von YunoHost zu erfahren, lohnt es sich auch die offizielle Dokumentation zu lesen. https://yunohost.org/de
Es ist unter Open Source lizenziert. Ceph ist hoch skalierbar. Es gibt eine hohe Ausfallsicherheit durch verteilte Ablage der Daten.Er wird aber als zusammenhängender Speicher dargestellt. Ceph benötigt mehrere miteinander vernetzte Computer. Diese werden als Cluster zusammengeschlossen. Jeder einzelne Computer wird dabei als Node (Knoten) bezeichnet. Unter den einzelnen Nodes müssen verschiedene Aufgaben verteilt werden:
Manager Verwalten den Status der Speichernutzung, der Systemlast und Auslastung der Knoten.
Monitor Verwalten den Status der einzelnen Nodes um für Ausfallsicherheit zu sorgen. Es werden mindestens 3 Monitor Nodes empfohlen.
Ceph OSDs [Object Storage Devices] Die Dienste für die eigentliche Dateiverwaltung. Sie sind für die Speicherung, Duplizierung und Wiederherstellung von Daten zuständig. Pro Cluster sollte es 3 Ceph OSDs geben.
Metadaten-Server (MDSs) Speichert die Metadaten( Speicherpfade, Dateinamen und Zeitstempel) sie sind POSIX-konform und können mittels Unix-Kommandozeilen-Programmen wie ls, find und like ausgelesen werden.
Der Algorithmus mit der Bezeichnung CRUSH (Controlled Replication Under Scalable Hashing). ermöglicht mit Hilfe einer Zuordnungstabelle der CRUSH Map, einem OSD [Object Storage Devices] mit der angeforderten Datei zu finden. Klingt kompliziert, ist aber so 😛
Die Basis der Datenablage unter Ceph wird als RADOS bezeichnet.
RADOS steht für (a reliable, distributed object store comprised of self-healing, self-mapping, intelligent storage nodes) frei übersetzt: zuverlässiger, verteilter Objektspeicher, bestehend aus selbstheilenden, selbstabbildenden, intelligenten Speicherknoten.
Möglichkeiten des Datenzugriffs :
librados – eine Bibliothek für Anwendungsentwickler
CephFS – eigenes Dateisystem; ein Kernel-Modul für zugreifende Rechner (Fuse)
radosgw – ein Gateway der via HTTP gelesen oder geschrieben werden kann
RADOS Block Device – Einbindung durch Kernel-Module oder virtuelle Systeme wie QEMU/KVM.
Vor- und Nachteile von Ceph
Vorteil:
Ceph ist kostenfrei
Es gibt viele Tutorials zur Einrichtung und Wartung
Gute Dokumentation vom Hersteller
integrierte Redundanz sorgen für Datensicherheit
Nachteile:
Einrichtung ist relativ kompliziert
Es ist ein umfangreiches Netzwerk notwendig
Es ist physisch nicht ganz klar wo die Daten abgelegt werden man muss quasi dem Algorithmus vertrauen