In letzter Zeit muss ich vermehrt feststellen, dass *NIX-Anfänger eigene Server, seien es dedizierte/Root-Server oder vServer, betreiben und einfach keine Ahnung davon haben, was sie da eigentlich tun. Mir scheint es, als ob nicht ausreichend aufgeklärt bzw. das Kleingedruckte einfach nicht gelesen wird. Daher möchte ich hier ein wenig aufklären und vielleicht geht dem einen oder anderen ein Licht auf...

Zunächst ein paar Zitate aus den AGB der größten Server-Provider im mittleren und unteren Preissegment Deutschlands:

  • "(...) Wir übernehmen keine Haftung für Schäden oder Folgeschäden. (...)" 
  • "(...) XXX übernimmt keine Haftung für Schäden oder Folgeschäden. (...)"
  • "(...) Der Kunde stellt den Provider von der Haftung durch eventuell auftretende Sicherheitslücken frei. (...)"
  • "(...) Für unsachgemäße Handhabung des Servers haftet ausschließlich der Kunde. (...)"
  • "(...) Der Kunde hat für die Sicherheit seines Servers Sorge zu tragen. (...)"
  • "(...) Ansprüche Dritter durch fehlerhafte Konfigurationen sind vom Kunden zu erfüllen. (...)"
  • ...

Wenn man das so liest, sollte jedem recht schnell klar sein, hier hafte ich, also der Kunde. Wofür muss ich als Kunde denn nun haften?
Hier ein paar Beispiele:

  • für offene Mailserver (sog. OpenRelays), die für den Versand von Spammails missbraucht werden, also vielmehr für die zusätzlichen Kosten
  • für Server die für die Verbreitung von Malware oder illegalen Dateien (geschützte Musikstück bspw.) missbraucht werden
  • für Folgeschäden die aus mangelhafter Absicherung des Servers Dritten entstehen
  • ...

Auf den ersten Blick scheint die Liste nicht so lang, aber das sind erstmal die schwerwiegensten Dinge. Das klingt jetzt zwar harmlos, aber wenn man sich überlegt, was da an Kosten zusammen kommen, sollte man sich wirklich zweimal oder besser sechsmal überlegen, ob man wirklich einen eigenen Server braucht.


Mal ein Beispiel:
Angenommen Harald (Name aus Datenschutzgründen geändert, Parallelen zu realen Personen sind zufälliger Natur), ein 18jähriger Schüler, betreibt ohne fundierte Kenntnisse über Serversicherheit einen eigenen Rootserver im unteren Preissegment. Erschwinglich, ausreichend schnell und für jeden Unfug gut.
Harald denkt sich nichts böses und installiert über ein Webinterface SuSE Linux, welches sehr verbreitet ist in der Mietserver-Szene und gerade durch das Tool "yast" bzw. "yast2" relativ einfach bedient werden kann.

Jedenfalls macht sich Harald nun auf die Suche nach einem geeigneten Tutorial. Natürlich wird er schnell fündig, er nutzt das Internet ja schon lange. Harald freut sich, dass es recht kurz und einfach ist. Er arbeitet es durch und ist glücklich, da alles funktioniert. Was in dem Tutorial aber nicht behandelt wurde, ist die Absicherung nach außen. Vielleicht stand irgendwo, dass der Server als "Relay" konfiguriert ist, aber da Harald mit dem Begriff nichts anfangen konnte und ja "ISP-like Mailserver HowTo" drüber stand, macht er sich auch keine weiteren Gedanken, denn der Server funktioniert. Mails können verschickt werden und Mails kommen an.

Nun geht Harald einen Schritt weiter und installiert einen Webserver. Da die Konfigurationsdatei aber recht lang ist und die Dokumentation auch nicht gerade leichte Kost ist, ändert er nur die wichtigsten Parameter, die er durch gezielte Fragen in Internetforen und Beispiel-Konfigurationen genannt bekommt. Klasse, die Webseite funktoniert auch.

Harald hat schonmal davon gehört, dass man sichere Passwörter verwenden muss und so wählt der den Namen seines verstorbenen Meerschweinchens. Das ist leicht zu merken und kann ja niemand kennen, es ist schon seit vielen Jahren tot. Der Name war "Tamara".

Virenscanner braucht Harald nicht, da es ja keine Viren für Linux gibt. Aber er möchte seine Dateien komfortabel mit seinen Freunden teilen. Er hat die Lieder alle ordnungsgemäß bei einem fruchtigen Online-Musikladen gekauft und ist somit rechtmäßiger Besitzer. Komfortabel in Windows einzubinden sind die tanzenden Freigaben: Samba muss her. Geht schnell, ist einfach und funktioniert (das Adjektiv "sicher" fehlt hier nicht unabsichtlich).

Jetzt kommt der Sommer, Sommerferien und der ersehnte Urlaub steht an. Wegfahren!! Der Server tut seinen Dienst und dümpelt so vor sich hin. "Never touch a running system" hat mal einer im Forum gesagt. Gesagt, getan - nämlich nichts. Die Website wird nicht mehr so sehr beansprucht, da das Forum "out" ist und das Webinterface seines FreeMail-Accounts ist auch komfortabler. Aber er hat ja noch Mindestvertragslaufzeit von weiteren 4 Monaten.

Soweit das Szenario. Jetzt zu den Geschehnissen danach...

Als Harald aus dem Urlaub zurück kommt, hat er sehr viele Spammails in seinem Postfach und er wundert sich, dass er keine Verbindung mehr zu seinem Server aufbauen kann. Auch die Freigaben sind voller Dateien, die er zuvor noch nie gesehen hat.

Seine Eltern leeren den Briefkasten und finden eine Unmenge an Briefen an ihren Sohn:

  1. Vorladung zur Anhörung
  2. Serverrechnung über Mehrverbrauch
  3. Schadenersatzklage eines größeren Unternehmens
  4. ...

Was war passiert? Harald hatte die Klauseln nicht gelesen, die Teil seines Vertrages sind: "Kunde haftet für Schäden" und Harald ist kein begrenzt haftendes Unternehmen, er ist nach dem Jugendstrafrecht zu bestrafen und muss wahrscheinlich mit 18 Jahren bereits Privatinsolvenz anmelden, da er neben den Anwaltskosten und Schadenersatzklagen nicht mal mehr die Servermiete bezahlen kann und seine Freunde die den Server mit ihm betreiben wollten, wollen nichts davon wissen.

Harald hat einige Dinge versäumt, die hier nur auszugsweise genannt werden sollen:

  1. Keine tiefgehende Beschäftigung mit der Dokumentation der eingesetzten Software
  2. Keine Ahnung von der Absicherung von Serversystemen
  3. Kein Bewusstsein über mögliche Folgeschäden
  4. Keine Systemupdates
  5. Keine Erfahrung mit *NIX
  6. Gutgläubigkeit und Faulheit
  7. Unnötiger Geiz
  8. ...

"Tja, traurige Geschichte, aber das betrifft mich nicht. Ich hab viel Ahnung von Computern, repariere die meiner Freunde und habe auch schon einen selber zusammengebaut! Ich weiß worauf es ankommt, schließlich verwende ich Linux 10.0!"

Wenn dem so ist, toll. Dann ist all dies wirklich nur eine nette Geschichte. Aber wenn dem nicht so ist oder du Zweifel hast, wenn du aber doch gerne einen eigenen Server möchtest, du willst frei sein und machen können was du willst, ohne Performanceeinbußen durch andere Benutzer...

Die wohl häufigsten Gründe für einen eigenen Server sind:

  1. "Wir sind ein Clan und wollen zocken, ein Forum, nen TeamSpeak-Server und eine eigene Website!"
  2. "Ich brauch mehr Speicherplatz und will die Software installieren, die ich will!"
  3. "Ich will *NIX lernen, kann aber meinen Computer nicht dafür verwenden."
  4. ...

Wenn eine der oben genannten Gründe auch für dich zutrifft, dann habe ich einige Hinweise für dich, die dir viel Ärger und auch Geld sparen können:

zu 1. "Wir sind ein Clan und wollen zocken, ein Forum, nen TeamSpeak-Server und eine eigene Website!"

Im Internet gibt es zahlreiche Game-Server-Anbieter, die zu wirklich günstigen Preisen sehr leistungsfähige Systeme anbieten. Da braucht ihr euch um nichts zu kümmern, einfach nur spielen.
Oft sind in diesen Angebote auch bereits Webspace und TeamSpeak-Server enthalten oder durch geringen Aufpreis zu haben. Auch wenn euch das auf den ersten Blick teurer vorkommt, hey, ihr legt einfach zusammen und spart auf jeden Fall mehr Geld, als wenn ein Schaden passiert.

zu 2. "Ich brauch mehr Speicherplatz und will die Software installieren, die ich will!"

Mehr Speicherplatz ist heutzutage kein Problem mehr. Speicherplatz ist sehr billig und "Shared Hosting"-Angebote gibt es in allen Größen und Preisklassen. Notfalls solltest du mal über einen "managed Server" nachdenken, da wird die Wartung für dich übernommen und du hast keinen Ärger. Kostet vielleicht etwas mehr, aber vielleicht brauchst du ja doch nicht alles was du zu brauchen glaubst?

Bezüglich der Software würde ich dir raten, einen guten Provider zu suchen, der mit sich reden lässt und auf individuelle Wünsche eingeht. Sollte es sich nicht um Software handeln die besonders unsicher ist bzw. Resourcenfressend ist, sollte sowas in der Regel möglich sein. Wer suchet der findet.

zu 3. "Ich will *NIX lernen, kann aber meinen Computer nicht dafür verwenden."

Oft gehört und mit Abstand mein Lieblingsargument, weil drei Wörter drin stecken, eigentlich vier: "Ich", "will", "lernen" und "*NIX". Sehr löblich und ich unterstütze diese Ansicht, aber: Es gibt Virtualisierungsumgebungen, mit denen kannst du auf dem eigenen PC einen Server betreiben. Hier kannst du üben, neuinstallieren, Erfahrung sammeln. Wenn das nicht reicht, kauf dir einen gebrauchten (oder auch neuen) Computer, der nur dafür da ist. Schließe keine Maus, keine Tastatur und keinen Monitor an, nachdem er installiert ist. Mache alles über SSH.

Den Server kannst du dann hinter deinen DSL-Router schalten, der in den meisten Fällen eine "Firewall" integriert hat und dich gegen die größten Angriffe schützt (entbindet dich aber nicht von der Pflicht der Führsorge!). Wenn du jetzt sagst "Ein alter Pentium is aber viel zu langsam!" dann sag ich dir: Kauf nen schnelleren bzw. schau dir mal die Systemvoraussetzungen für *NIX-Systeme an. Die brauchen keine AGP-Grafikkarten, die brauchen kein Gigabyte RAM (wir gehen ja von einem kleinen Server für den Eigenbedarf aus) etc. Spiele damit rum (möglichst keinen Mailserver, wenn du ne dynamische IP hast, die werden oft geblockt da potentielle Spamschleuder). Du wirst schnell sehen, wieviel Arbeit das macht, aber wenn du die Zeit und Lust hast, dann kann ich dich nur unterstützen, irgendwann einen "echten" Server zu betreiben. Aber gehen lernt man auch nicht in zwei Tagen.

Abschließende Worte

Man kann mir jetzt vorwerfen "Du bietest aber doch genau diese Tutorials an, die alles so einfach aussehen lassen!" und dem kann ich ehrlich gesagt nicht allzuviel entgegensetzen, aber meine Anleitungen sind nicht dafür gedacht, ohne Nachzudenken einfach "abgetippt" zu werden. Vereinzelt weise ich auch darauf hin, aber ich denke doch, dass meine Tutorials weitestgehend so beschrieben sind, dass selbst bei bloßem Abtippen keine allzu großen Sicherheitslöcher entstehen.

Jeder der *NIX lernen will, und ich kann jeden nur dazu ermutigen, da es ein toller "Sport" ist, aber ich will gleichzeitig auch davor warnen. Es kann gefährlich und teuer sein, es kann große Schäden verursachen und man kann sich damit auch sein Leben ruinieren, wenn man nicht aufpasst, sich mit der Materie nicht auseinandersetzt und Dinge hinterfragt. Foren sind toll, sie sind eine riesen Hilfe, aber man kann einen Server nicht mit dem bloßen Beantworten von Fragen betreiben. Da gehört mehr dazu. Und wenn ich dann lese "/etc/rc.d/sshd sind das drei Unterverzeichnisse?", dann mache ich mir Sorgen, kriege Angst um meinen Server (ja, Spamschleudern kosten mich einen haufen Geld) und ärgere mich über die Kurzsichtigkeit der Leute.

Was würdet ihr sagen, wenn jemand bei euch anruft und fragt "Hey, ich bin auf der Autobahn und fahre krasse 180 KM/h, aber wo war nochmal die Bremse? War das das in der Mitte?"...

Daher: Nachdenken, lasst euch beraten was ihr braucht wenn ihr nicht sicher seid und lernt zuhause! Das Internet ist zu groß und zu gefährlich um zu üben. In der Fahrschule sitzt auch immer jemand neben euch! 

[Danke an Jean-Michel Brünn von ip-minds für die Verbesserungsvorschläge!]

Literaturempfehlungen

Falls du dich nun angesprochen fühlst und an deinen Wissenslücken arbeiten möchtest, empfehle ich dir einen Blick in die Rubrik "Aus zweiter Hand > Literatur". Sie ist noch nicht sehr umfangreich, aber es folgen immer mehr Bücher.

Einen einfachen Einstieg in das Thema "Der eigene Server" versuche ich auch mit meinem Buch "Der eigene Server mit FreeBSD 9 - Konfiguration, Sicherheit und Pflege" zu bieten. Hierin wird der Einsatz von FreeBSD als Serverbetriebssystem im Ganzen betrachtet, und nicht nur einzelne Serverdienste oder nur das Betriebssystem.