Jamie-Dee Zielke

System Administrator

Hardware Schrauber

Programmier Chaot

In love with Linux

Jamie-Dee Zielke

System Administrator

Hardware Schrauber

Programmier Chaot

In love with Linux

Blog Post

Meine VPS Erfahrung bisher

VPS, Virtual Private Server. Ein gemieteter Server, der in Frankfurt läuft und mit dem ich (fast) alles machen kann, was ich will. Auf dem Server liegt aktuell diese Website hier. Ich habe mich über die Jahre viel mit Server Infrastrukturen und Möglichkeiten auseinander gesetzt, überwiegend aber im LAN. So nutze ich den Pi als LAN-Server für verschiedene Anwendungen: Media Center, NAS, Searx-Instanz, …
Doch so wollte ich mich nach Ewigkeiten mal für einen VPS entscheiden und entschied mich dazu, es einfach mal zu probieren. Da ich noch nicht lange mit VPS arbeite, musste ich mich viel einlesen und ausprobieren. So bin ich über viele Sachen gestolpert, die mir besonders im Bereich der Sicherheit geholfen haben. Denn das wichtigste bei einem Server ist die Sicherheit. Sollte der Server mal gehackt werden und verbreitet Viren oder Scam, seid ihr verantwortlich. Es ist euer Server, ihr müsst mit den Konsequenzen leben. Das schreckt anfangs vielleicht ab – ich war ähnlich abgetan als ich davon erfuhr. Also sollte man den Server so robust und sicher machen, wie er nur geht. Darum hier ein paar Sachen, die ich gelernt habe:

SSH-Keygen

Mit SSH-Keygen wird ein SSH Schlüssel generiert, der erlaubt per SSH auf den Server zuzugreifen. Interessant hier ist, dass man nur mit besagtem Schlüssen auf den Server zugreifen kann. Selbst wenn man also sämtliche Login-Daten irgendwie “verloren” hat oder diese geleakt wurden, kann nur auf den Server zugegriffen werden, wenn der SSH-Schlüssel auf dem Computer vorliegt. Fehlt dieser, ist der Zugriff auf den Server nicht möglich.

Firewall Konfiguration

Ich wusste direkt, dass auf dem VPS diese Website hier liegen soll, weshalb die Firewall Konfiguration schnell fest stand. Ich erlaubte nur bestimmte Ports und Dienste – alles andere wurde beschränkt und blockiert. Ein paar Ports, die ich geschlossen habe, sind..
-> Port 21 (FTP) – FTP ist ein (unsicheres) Übertragungsprotokoll.
-> Port 23 (Telnet) – Telnet ist ebenfalls ein (unsicheres) Übertragungsprotokoll.
-> Port 25 (SMTP) – Port um E-Mails zu versenden
-> Port 110 (POP3) – Port um Mails zu empfangen
-> Port 143 (IMAP) – Ebenfalls ein Port um Mails zu empfangen
-> Port 3389 (RDP) – Port für eine Remote-Desktop-Verbindung

Das waren ein paar grobe “Sicherheitsgrundlagen”, die universell für jeden Server wichtig sind. Machen wir weiter mit dem Betriebssystem meines VPS.

Linux oder BSD?

Ich habe lange gegrübelt, ob ich nun GNU/Linux oder eine BSD Variante installieren sollte. Ich entschloss mich aber für Linux, weil ich mit BSD noch nicht so vertraut bin. Doch dann kam die Frage auf, welche Distro nehme ich denn nun? Auch wenn ich ein Die-Hard Arch Fan bin, habe ich mich für stable N00buntu Ubuntu LTS entschieden. Gründe dafür währen zum einen, dass ich Stabilität will – ein Update soll den Server nicht brechen. Und ich will die maximale Sicherheit der Pakete. Bei den Stable-Releases werden die Pakete gut durchgetestet und durchforstet. Sollte ein Paket fehlerhaft sein oder sogar Malware enthalten, werden diese nicht in die Repo gepusht. Bei “normalen” Rolling-Releases wird das Paket ohne großes Testen direkt in die Repo geballert. Folgen können kaputte Pakete sein. Und weil ich nicht will, dass der Server nach einem einfachen Sudo Pacman -Syu bricht, warte ich lieber länger auf meine Pakete. Dafür sind diese dann aber rocksolid und funktionstüchtig. Außerdem sind Stable Releases und LTS Distros dazu ausgelegt, nicht immer aktualisiert zu werden. Ich kann also mal ne Woche keine Updates machen und alles ist noch in Ordnung – updatet doch mal Arch für ne Woche nicht. Viel Spaß mit eurem 4GB Update, dass eventuell sogar noch das System bricht. Auf “normaler” Hardware für mich kein Problem, auf einem Server aber schon. Ein Arch Server ist bei mir trotzdem zum Einsatz gekommen und zwar für ein TOR-Relay auf einem sehr alten Notebook. Hier war lediglich der Grund, dass ich die aktuellsten Pakete wollte.
Und bitte: Müllt euren Server nicht mit unnötigen Paketen zu. Htop ist noch sinnvoll, Neofetch schon fragwürdig und cmatrix ist bloat. Installiert wirklich nur das, was ihr auch wirklich braucht oder wollt. Alles andere ist nur unnötig und kann Stabilitäts- sowie Sicherheitsprobleme hervorrufen

Allgemeine “Maintenance”

Natürlich muss der Server regelmäßig gewartet werden. Das mache ich, indem ich den Server grundsätzlich immer überprüfe. Läuft er noch? Gibt es Errors? Muss geupdatet werden? Komisches Verhalten? Unbekannte Logins? Funktionieren noch alle Programme, Protokolle usw? Dieser Check ist zum Glück nicht immer sehr zeitintensiv und gerne mal flott abgehakt. Einmal im Monat lösche ich dann immer mal die “Failed Login” Log Datei. Da sieht man dann, wie oft und schnell BOTS versuchen den Server zu knacken. Ohne SSH-Key gibt es aber kein Erfolg. 😀

Fazit?

Ein Fazit zu ziehen ist gar nicht mal so leicht, vor allem nicht nach so kurzer Zeit. Wichtig ist, dass man es sich zutraut einen Server zu warten und zu bedienen. Man muss auf viele Sachen achten und keine Kleinigkeiten übersehen. Eine kleine Planung, wie der Server aussehen soll, kann helfen. Ich werde mich noch mal melden, wenn der Server hier ein Jahr lang lief.

Write a comment

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.