17.2 Planung
Wenn Sie Ubuntu installieren, haben Sie oftmals nicht die Wahl zwischen verschiedenen Computern. In der Regel besitzen Sie bereits die Hardware, die vormals zumeist von Microsoft Windows zum Leben erweckt wurde. Bei einem Server sieht die Sache häufig anders aus. Entweder haben Sie noch alte Hardware irgendwo herumstehen und fragen sich, ob diese ausreichend ist. Oder Sie planen den Kauf einer solchen Hardware und sind unsicher, wie diese dimensioniert sein sollte.
17.2.1 Anforderungen an den Server
Ihnen stellen sich bei der Anschaffung und der Installation eines Servers wahrscheinlich mindestens folgende Fragen:
- Welche Dienste soll der Server anbieten, bzw. was will ich mit einem Server erreichen?
- Wie viele Benutzer werden gleichzeitig auf dem Server arbeiten, und welchen Schutzbedarf hat der Server?
- Welche Arten von Daten sollen auf dem Server verarbeitet werden, und wie groß ist der Datendurchsatz des Servers?
- Wie hoch soll die Verfügbarkeit des Servers sein, und wie schnell muss das System nach einem Ausfall wiederhergestellt sein?
Manche Fragen sind selbstverständlich nur Folgerungen. So ist die Frage nach der Sicherheit des Servers oftmals nur von Interesse, wenn dieser auch über das Internet erreichbar sein soll. Aus den oben stehenden Fragen ergibt sich ein Anforderungsprofil, das Sie mit geeigneter Hardware abdecken müssen.
Server und Client: Der Begriff Server (englisch für »Diener«) bezeichnet entweder eine Software im Rahmen des Client-Server-Modells oder eine Hardware, auf der diese Software im Rahmen dieses Konzepts abläuft. Ein Client (englisch für »Kunde«) hingegen ist eine Software oder ein anderer Rechner, der Daten oder Anwendungen von einem Server anfordert. Ein Browser ist beispielsweise ein Client, der Webseiten darstellt, die von einem Server geliefert werden.
Der Server im privaten Bereich
Wenn Sie lediglich einen sogenannten Homeserver betreiben möchten, also einen Server als Multimediazentrale, dann sind die folgenden Betrachtungen eher gegenstandslos, und Sie können sie überspringen. Ich werde in den nächsten Abschnitten hauptsächlich professionelle Ansprüche diskutieren, indem ich Ihnen Lösungsansätze für redundante Server vorstelle.
Redundanz
Ein eigener Server – egal ob im privaten oder kommerziellen Sektor – wird zumeist nicht aus Neugierde oder Langeweile eingesetzt. Meistens sind es spezielle Anforderungen, die mit einem Standard-Desktop-Rechner oder dem Angebot eines Providers nicht zu erfüllen sind. Viele Firmen beispielsweise haben gute Gründe, ihre sensiblen Daten nicht einer dritten Person anzuvertrauen (beispielsweise dem Internetprovider). Des Weiteren ist die Einrichtung einer Serverinfrastruktur zeitaufwendig und teuer, und so ist es selbstverständlich, dass der Absicherung eines Servers erhöhte Aufmerksamkeit zukommt.
Absicherung
Eine Absicherung besteht primär aus zwei Komponenten: zum einen aus der Absicherung gegenüber Angriffen aus dem Netz (Inter- und Intranet), zum anderen aus der Absicherung gegenüber Hardwareausfällen. Beiden Komponenten ist jedoch gemeinsam, dass Sie den Server und damit auch seine Dienste »am Leben erhalten sollen«. Während wir uns später mit den sicherheitstechnischen Grundlagen beschäftigen wollen, steht zunächst die technische und softwareseitige Redundanz im Vordergrund.
Geplante und ungeplante Ausfälle
Soll beispielsweise weder durch eine geplante Aktion (zum Beispiel Wartungen) noch durch eine ungeplante Tätigkeit (zum Beispiel Ausfall oder Angriff) die Funktion eines Servers beeinträchtigt werden können, so kommen Sie nicht an einer – unter Umständen umfangreichen – Redundanz vorbei. Ist eine temporäre Auszeit im privaten Bereich noch zu verschmerzen, so ist dies im kommerziellen Bereich unerwünscht. Kaum eine Firma kann sich heutzutage beispielsweise einen Ausfall des Mailservers leisten.
Machen wir uns nichts vor: Eine komplette Redundanz und damit eine hundertprozentige Erreichbarkeit der Serverdienste ist nicht zu gewährleisten. Dazu wären die Investitionen, die Sie in Hardware, Infrastruktur und Personal stecken müssten, viel zu hoch. Je mehr Ausfallsicherheit Sie wünschen, desto teurer wird der Spaß. Aber es gibt Licht am Ende des Tunnels. Durch geschickte Verknüpfung technischer und softwareseitiger Redundanz erreichen wir bei relativ geringen Kosten eine erstaunlich hohe Redundanz der Serverdienste.
17.2.2 Risiko-Management
Der Grundgedanke eines Risiko-Managements besteht darin, dass wirkungsvolle Maßnahmen zur Vermeidung oder Minimierung von Risiken nur dann möglich sind, wenn die entsprechenden Risiken bekannt sind. Bei der Erfassung dieser Risiken sollten Sie Prioritäten setzen, um den wirtschaftlichen Standpunkt nicht außer Betracht zu lassen. Die Wirtschaftlichkeit drückt sich darin aus, dass alle Gegenmaßnahmen einen gewissen Grad an Effizienz erreichen müssen. Dies bedeutet, dass die Ausgaben für etwaige Maßnahmen immer im Verhältnis zum möglichen Schaden oder zum Risiko eines Auftretens stehen müssen.
So ist beispielsweise der Ausfall einer Festplatte sehr viel wahrscheinlicher als der Ausfall des gesamten Rechenzentrums. Hinzu kommt, dass durch ein RAID das Risiko eines Schadens durch einen Festplattenausfall sehr wirtschaftlich und mit einfachen Mitteln zu begrenzen ist – ein Beispiel für hervorragende Effizienz. Wir werden später in Abschnitt 17.4.5, »Methode III – RAID«, auf die Einrichtung eines RAID-Systems zurückkommen.
Die Risiken können generell unterschiedlicher Natur sein und beispielsweise folgende Bereiche abdecken:
- Hardwaredefekt beliebiger Art
- Stromausfall, hervorgerufen durch
- Netzanbindungsfehler oder
- Ausfall des Netzteils
- Ausfall der Internetanbindung, hervorgerufen durch
- Ausfall des Internet-Providers oder
- Defekt der Netzwerkinfrastruktur (Netzwerkkarte, Hub, Switch, Kabel etc.)
- Ausfall des Rechenzentrums, hervorgerufen durch
- Hardwaredefekt (Kühlung, Server etc.) oder
- Angriff
- Software- und/oder Bedienungsfehler, die zu Angriffen und Ausfällen führen
- ...
Die obige Auflistung vermittelt einen ersten Eindruck von der Komplexität, die es zu berücksichtigen gilt. Sie können leicht erahnen, welche Kosten auf Sie zukommen, wenn Sie nicht nur Hardware doppeln wollen, sondern Ihre Server auch an verschiedenen Standorten und mit unterschiedlichen Providern betreiben möchten.
Realisierung
Eine Redundanz können Sie in Abhängigkeit von der gewünschten oder geforderten Erreichbarkeit des Servers auf verschiedene Arten realisieren:
- Technische Redundanz
Mit technischer Redundanz ist die Dopplung bestimmter Hardware oder Infrastruktur gemeint. Um ein Ereignis wie den Ausfall der Netzwerkverbindung zu egalisieren, sollten nicht nur die Netzwerkkarte, sondern auch die Kabelverbindungen bis hin zu Teilen wie Hubs, Switches, Routern etc. gedoppelt werden. Um einen Stromausfall zu vermeiden, reicht es nicht, wenn Sie zwei Netzteile vorhalten – diese müssen auch an getrennte Stromversorgungen angeschlossen werden. - Softwareseitige Redundanz
Durch Virtualisierung können Sie einen erheblichen Fortschritt erzielen. Prüfen Sie, welche Ihrer Serverdienste in einem virtuellen Server besser aufgehoben wären. Die Virtualisierung von Servern und die damit verbundene Unabhängigkeit kann einem geschickten Administrator auf sehr einfache Weise das Leben erheblich erleichtern. Auch profitiert die Sicherheit davon, weil der Administrator durch effektivere Verwaltung mehr Zeit für sicherheitskritische Arbeitsvorgänge gewinnt.
17.2.3 Virtualisierung
Aus Gründen der Hochverfügbarkeit werden Serverdienste oftmals parallel und voneinander getrennt gehostet. Die Verteilung der Anwendungen auf einzelne Systeme bietet eine teuer erkaufte Sicherheit. Gleichzeitig erreichen Sie dadurch eine – wenngleich primitive – Redundanz. Dass diese Lösung aber alles andere als elegant ist, lässt sich am hohen Administrationsaufwand ablesen.
Abbildung 17.2 Server 1 (links) betreibt Anwendung A in einer VM produktiv und Anwendung B als Standby. Server 2 (im Bild rechts) macht das Ganze andersherum.
Meist werden aus Gründen der Hochverfügbarkeit Server gedoppelt, wobei ein Server produktiv ist und ein weiterer Server als Standby-Server gar nichts tut. Durch wirklich einfache Virtualisierung lassen sich aus vier Servern für zwei Anwendungen zwei Server für zwei Anwendungen machen. Server 1 betreibt Anwendung A in einer virtuellen Maschine produktiv und Anwendung B als Standby. Server 2 macht das Ganze andersherum.
Xen, KVM, VMware...
Die Virtualisierung von Servern ist ein sehr komplexes Thema, auf das ich hier nicht einmal ansatzweise eingehen kann. Das sichere und zuverlässige Aufsetzen einer solchen Umgebung erfordert ein hohes Maß an Einarbeitung, und über dieses Thema gibt es zahlreiche Bücher. Die Platzhirsche im Open-Source-Bereich sind Xen und KVM. Aber auch kommerzielle Varianten gibt es einige. Stellvertretend möchte ich hier die Firma VMware nennen.
Abbildung 17.3 Auf jedem Server läuft eine Anwendung (links), die jeweils einen eigenen Standby-Server als Backup besitzt (rechts). Dies ist die klassische Anordnung für hochverfügbare Server. Bei einem Ausfall eines Servers wird nahtlos der Standby-Server weiterverwendet.
17.2.4 Konfigurationsempfehlung
Die Installation und der sichere Betrieb eines Servers gestalten sich einfacher, wenn Sie grundlegende Prinzipien beachten. Einige Tipps habe ich Ihnen bereits gegeben. So empfahl ich Ihnen auf den vergangenen Seiten, dass Sie unbedingt die 64-Bit-Version einer LTS-Version verwenden sollten.
Zwei weitere wichtige Empfehlungen gebe ich Ihnen an dieser Stelle:
- Vermeidung von Risiken
Es soll nicht unerwähnt bleiben, dass eine hervorragende Möglichkeit der Problemlösung die Vermeidung von Risiken ist. Deutlicher ausgedrückt bedeutet dies generell: Je weniger Dienste auf Ihrem Server laufen, desto sicherer ist er. Es ist durchaus sinnvoll, gewünschte Aufgaben, die der Server übernehmen soll, kritisch zu hinterfragen. Ein Server, auf dem FTP läuft, braucht nicht noch zwingend WebDAV-Funktionalität. Im Notfall müssen Sie abschätzen, ob Sie nicht besser der Sicherheit zuliebe auf manche Annehmlichkeiten verzichten, anstatt eventuellen Angreifern oder Softwarefehlern Tür und Tor zu öffnen.Das gleiche Prinzip wird übrigens manchmal auch als KISS-Prinzip bezeichnet. »KISS« bedeutet hierbei Keep it simple and smart, zu Deutsch: »Mach es einfach und schlau«. Dieses Prinzip betrifft nicht nur die Informatik, sondern ist eine Art des Einfachheitsprinzips. Genauer gesagt bedeutet es: Vermeiden Sie unnötig komplizierte Lösungen!
- Lieber auf Nummer sicher
Auch wenn ich es schon einmal in einem anderen Zusammenhang erwähnt habe, möchte ich es doch noch einmal wiederholen: Seien Sie konservativ! Das soll explizit nicht Ihre politische Einstellung beeinflussen, sondern Sie daran erinnern, welche Verantwortung Sie als Administrator tragen. Geben Sie der Datensicherheit und Stabilität Ihres Servers immer den Vorzug gegenüber einer möglichen Leistungssteigerung. Greifen Sie also bei Komponenten lieber zu etwas langsameren, aber stabilen Bauteilen.
Ihr Kommentar
Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.