Linux bietet eine Vielzahl von Diensten an, die ein Rechner anderen zur Verfügung stellen kann. Das geht von den klassischen Serverdiensten im LAN wie z.B. Datei- und Druckerdienste über die verschiedenen Internetdienste (Webserver, FTP-Server, …) bis hin zu Datenbankservern, die entweder im lokalen Netz oder global bestimmte Informationen bereitstellen.

Grundsätzlich können Linux-Rechner natürlich viele verschiedene Dienste gleichzeitig anbieten, für Multitasking-Systeme ist das kein Problem. Es gibt aber verschiedene Überlegungen, die dazu führen, dass in der Praxis häufig einzelne Rechner nur einen oder ein paar Dienste anbieten, obwohl sie damit vielleicht gar nicht ausgelastet sind. Um solche Überlegungen anzustellen, ist es nötig, einen Überblick über die wichtigsten Dienste zu besitzen und die Kriterien zu kennen, die nötig sind, um Entscheidungen zu fällen, welche Dienste auf welchen Rechnern angeboten werden sollen.

Wichtige Überlegungen hinsichtlich der Frage, welcher Rechner bietet welche Dienste an, sind:

  • Sind es Dienste für das lokale Netz, für das Internet oder für beide gleichzeitig?
  • Gibt es Angriffsmöglichkeiten über diese Dienste?
  • Gibt es Schwachstellen wenn zwei bestimmte Dienste zusammen auf einem Rechner angeboten werden?
  • Wo liegen die zu erwartenden maximalen Auslastungen des Dienstes und wieviel Prozent seiner Kapazität wird der Rechner dafür brauchen?
  • Gibt es technische Gründe, die einen Dienst auf einem bestimmten Rechner ausschließen?

Die zwei wichtigsten Kriterien sind sicherlich die, die nach der Auslastung und der Zielgruppe fragen. Das sind wichtige Punkte, die die Verfügbarkeit bzw. Angreifbarkeit eines Netzes angehen und damit seinen Lebensnerv direkt angehen. Bei der Planung von Servereinrichtungen müssen diese Fragen vorher genau geklärt werden, um späteres Chaos zu vermeiden, wenn ein Server einmal eingerichtet ist und dann gemerkt wird, dass das so entweder gar nicht geht, oder die Sicherheit kompromitiert.

Grundsätzlich unterscheiden wir zwischen Diensten, die ausschließlich für das lokale Netz gelten und solchen, die auch im Internet angeboten werden sollen. Diese Dienste sollten wirklich grundsätzlich auf getrennten Rechnern laufen, um schon von vorneherein auszuschließen, dass es zu Sicherheitslücken kommt. Wer hat schon gerne seine interne Lohnabrechnung im Internet…

Typische Beispiele für Dienste, die alleine im LAN angeboten werden sollen, sind Datei- und Druckerdienste, DHCP und Datenbankserver. Dabei kann es natürlich zu Situationen kommen, dass bestimmte Dateidienste oder bestimmte Datenbankdienste auch im Internet zur Verfügung stehen sollten. In so einem Fall ist auch eine Trennung anzuraten, also einen Rechner mit den Servern für die internen Dienste und einen anderen, der nur die von außen zugänglichen Dienste anbietet. Später, bei der Einrichtung einer Firewall werden wir so wesentlich weniger Probleme bekommen.

Viele Dienste arbeiten heute mit mehreren Servern gleichzeitig, die sich gegenseitig auf dem aktuellen Stand halten, um im Notfall eine hohe Ausfallsicherheit zu gewährleisten, weil ja mehrere Rechner den Dienst anbieten. Hier kann natürlich in der Praxis zusammengefasst werden. Ein Rechner, der als Backup-Server z.B. für DNS im lokalen Netz dient, kann sicherlich noch mehr Dienste anbieten, als nur diese Ausfallsicherheit. So könnte er wiederum als Hauptserver eines anderen Dienstes auftreten, dessen Backup-Dienst von einem anderen Rechner betrieben wird. Andererseits macht es wenig Sinn, zwei solche Master/Slave Verbindungen über Kreuz zu betreiben, wenn der Rechner im Notfall dann völlig überlastet ist.

Bei der Berechnung, welche Belastung ein Rechner vertragen kann, wenn ein bestimmter Dienst auf ihm angeboten wird, sind natürlich mehrere Kriterien wichtig. In jedem Fall sollten Sie aber immer mit der größtmöglichen Anforderung rechnen und – man will vielleicht ja auch mal expandieren – eine Reserve offenlassen.

Kriterien sind:

  • CPU-Belastung
    Wieviel Rechenpower benötigt ein bestimmter Server während der größten denkbaren Auslastung?
  • Arbeitsspeicher
    Wieviel Speicher wird benötigt, wenn der Server in der denkbar größten Auslastung arbeitet?
  • Netzkapazität
    Wieviel Datentransfer muß das Netz bewältigen, wenn der Server Volllast fährt?

Erst, wenn diese Fragen geklärt sind, und damit errechenbar ist, dass ein Rechner nicht ausgelastet ist, wenn der Dienst intensiv genutzt wird, können wir drangehen, uns zu überlegen noch weitere Dienste auf dem Rechner zu installieren.

Wenn die verschiedenen Dienste nur für ein kleines, lokales Netz arbeiten sollen, dann gelten hier natürlich andere Ansprüche, als wenn sie als Internet-Server für viele hundert Anwender gleichzeitig zur Verfügung stehen sollen.